Why ask why?

There seems to be some common misperception and lack of understanding about open-source code.  People in different positions of company tend to say things they don’t really understand.

–CEO’s think it might equal altruism

“We contribute to open-source projects…”

— Business staff people tend to think of it as a neat internet era shortcut to save costs.

“Just use open source…”

— Marketing people think customers will like to hear it since it sounds kindof trendy and probably means we are cutting-edge

“We use open source code in our code…”

— Programmers that have never used it before but would like to think it will solve all their problems for them

Boss: “We need this flux-capacitor algorithm ready right away!”  Programmer: “No problem, boss, I’ll just use open source :)”

Now all of these can be correct in certain scenarios, but not necessarily.

Not all open-source is the same

Duh, right? But this might be the too basic key that some people seem to miss.  Not all open-source code is the same!  There are many reasons why people would write code and provide the source, not always is it pure altruism, and not always is really open-source.  The first and best clue is usually the license that the code is released under.  Just because you can see it, does not make it free!

Why code might be open-source?

What is open-source code?  Any number of things.

Reason Typical License
Marketing On contract
Teaser LGPL, MIT, Apache, GPL
Hook-in MIT, Apache
Altruism or Rebellion GPL, BSD, MIT, None
Résumé BSD, MIT, GPL, Apache
And many other possible reasons.


What is it?

Open-source could be used as marketing technique by some companies.  If a company would like to sell expensive customized software, some customers demand that be given access to the source code.  Perhaps they are planning to hire some in-house staff to do maintenance to lower costs, or perhaps they want to hire consultants to determine if it’s looks like quality code.

Who benefits?

Companies can reel in new customers and lower their initial fears by giving them full behind the scenes access to the software

What license restrictions would their typically be?

Typically the company selling the software would have a non-disclosure agreement.  They will let you view the source code, but never let you share it or discuss it with anyone else.


Many large business-to-business software firms


What is it?

This is essentially the same as shareware.  A company will grant access to the source code allow you to use it in your demo project, but if you want to use in production then you’ll need to pay the licensing fees.

Who Benefits?

User benefits are simple- by not needing to write all the code from scratch you can save a lot of time.  Company benefits by selling you licenses, upgrades.


Sencha- Solid JavaScript library.  Personal and demo use is free.  Production use will cost you money.


This is probably the most common form of open-source that you will see out there.

What is it?

Free software, that you can use as part of your project.

Who Benefits?

Here again, user benefits are simple- by not needing to write all the code from scratch you can save a lot of time.  The authors can benefits in a variety of ways.  Either by selling you documentation providing training, consulting, selling you maintenance, or selling you customized requests.  Also, these tend to be the most used and organic code.  The more users the more bug fixes, the more users the more opportunity for business.

What license restrictions would their typically be?

The licensing here tends to be pretty permissive.  Meaning you can usually use it and sell it as part of your product with paying a dime.  But you generally need to include somewhere a copy of the license that basically admits who the real author is.  No taking all the credit for yourselves.


SpringSource- Awesome, de facto standard for Java frameworks.  Completely free, documentation rocks.  They make money by training you to use it, providing consulting, and selling books.

JasperReports- Its really solid, and they let you use it for free! But documentation is pretty non-existent without paying money.  So good luck without it.

PrimeFaces- Best looking JSP component library with huge feature set.  They tried to make money by selling documentation.  Now they will sell you consulting, customization, or outsourcing.

jQuery- Legendary JavaScript library. So good, companies offered sponsorship so they can continue their work.

Altruism or Rebellion

What is it?

Software written by motivated people that want to make a difference.  Either to create good in the world, or to rebel against corporate greed by providing a free alternative.  This is probably what most people think of when they think open-source.  Software written by free spirited people that don’t wear shoes.

Who Benefits?

Anyone who has a need for that software.  Authors typically don’t benefit at all financially, but their legacy, reputation, etc lives on.  Frequently friendships and communities can prosper around the software.

What license restrictions would their typically be?

All changes you make to the software, whether new features or bug fixes have to returned to the communit,y no hogging it to all for yourself.  It’s usually the take freely, give freely approach.  Although sometimes there wont be a license at all.


Linux- Enough said.


What is it?

This one is also pretty common out there.  Usually written by an individual with some free time on his hands.  Software provided free to use and to change.  No ulterior motives.

Who Benefits?

Anyone who has a need for that software.  Author benefits by getting their name out there.  Job seekers can show proof of capabilities.

What license restrictions would their typically be?

Usually just limitation that the author reserves the right to be identified as the author.


Backbone- JavaScript MVC framework. Ok not sure about this one.


Open-source software is a broad term with many motivations behind it- frequently even if the initial reason for releasing it publicly were one thing, it often changes when the software becomes popular.