If you promise to keep my ideas and work free (as in speech), I will work for free (as in beer).
After a statement like that, we probably need some clarification. Just like any other viable web and media production company on the planet, iMarc licenses client-code under terms which are conducive to its business goals. But what licenses do individual developers make use of? More importantly, why do they use those licenses?
Statistics on this issue vary widely. According to Black Duck Software1, the GNU General Public License versions 2 and 3 account for nearly 45% of open source projects. While the lesser versions, takes up another 9% or so. Comparing this number to another page2 referencing the same company's data in March of 2011, we see a drop of about 7% in overall usage.
I'm not going to speculate as to why this may be the case, but there are a number of competing open source licenses which serve a number of different uses and purposes in particular contexts. At iMarc, for example, we frequently make use of MIT and BSD licensed code. Unlike the GPL and its variants, this code can be passed onto our clients without having to concern ourselves with overt sub-licensing terms or the need to place them under any additional obligations.
Recently, iMarc has also started releasing some of its own internally developed code on our GitHub page under the MIT license. Due to the obligations which the GPL enforces, licenses like MIT avoid much of the stigma surrounding its use in business. Why then do I use the GPL/AGPL for 99% of the software I write?
Freedom of Ideas
The Free Software Foundation makes a big distinction between open source and free software. While the GPL is often considered a "more restrictive" license, it is restrictive only insofar as it obligates distributors to ensure it remains open. What does this mean practically? It means that if you incorporate any portion of GPL code into your code, you must license the combined work under the same terms, if you intend to distribute it.
To make a case for why this is not only positive, but preferable, I will rely on two premises.
- Software is an idea.
- Ideas "want" and ultimately need to be free.
The first premise requires us to assert that software, unlike other commoditized wares, is materially non-existent. Yes, yes, we need hard drives to store it, computers to interpret it, and even electrons or photons to "ship it." But these are not conditions of the thing itself, merely the expression of the thing. If my hard drive has bad blocks, it is not the software that is damaged, merely the drive. The only thing that could possibly be lost with regards to the software, is a single expression of it (albeit a digitally perfect one).
It may be argued that software is more than an idea; that it is the particular implementation of an idea. This argument, however, seems to contradict how we speak about ideas in ordinary terms. We do not, for example, claim that the Golden Rule, as expressed by Confucius, is of a fundamentally different nature than that of, say, Pittacus.3 On the contrary, we recognize that despite having been expressed in different languages and with different phrasing, the core value proposition of each is essentially equal.
Software, likewise, is capable of being expressed in a multitude of languages with diverse organizational characteristics or "phrasing" if you will. To damage software, as with anything else, we must be able to show that it is possible to reduce its value proposition by some positive action. But if we wish to truly equate software to an idea, then to do this we need to decouple it from the expression or implementation of it.
How, then, can we damage software? Exactly the same way that we damage an idea!
In modern and free societies we have started to recognize that things like the First Amendment are conducive not only to the liberty of individuals, but to the rapid progression of our technological and economic condition. What use does a great idea, if expressed to no one, serve? And what use if only expressed to a select few?
An idea unexpressed is inevitably a dead idea; buried with its creator. Thus, an idea under-expressed is a damaged idea. It is an idea which cannot ever be developed to its fullest potential as its full potential necessitates it to be received, examined, and developed by the broadest amount of people possible.4
It means nothing then to say that we damage software by restricting the software itself because, like ideas, software is not self-expressive. Substantially, we can only damage software by restricting people.
Freedom of People
The earlier mention that the MIT license is considered "less restrictive" than the GPL is chiefly derived from a single additional allowance. Namely, you are allowed to "close" the software. That is to say, you have essentially all the same freedoms as you do with the GPL, except you are granted the additional allowance to restrict those freedoms for any third party to whom you distribute it.
Imagine now, if you would, a single idea or bit of knowledge that is radically important to our human understanding or condition. Got one? Now, imagine in the infancy of its development that those who received it had the absolute freedom to do with it as we can with open source software. If they could dissect it, build on it, modify it to be better in some way, and share it with others, we would surely recognize this as not only an asset to free society, but a pillar of it.
Now imagine the complete opposite.
More, the restriction of even a single afforementioned freedom with regards to ideas (software) could have potentially devastating consequences on our society or social progression.
What Do I Care?
I owe a lot to free software. Indeed, I would wager that I owe the entirety of my programming knowledge to it. It has not only directly contributed to my own ideas, but has provided me the means to express them. In a world where high-technology is becoming increasingly important to the human condition, often times superseding more traditional technology, I believe it to be not only a moral but a practical imperative to ensure that free software is not simply protected, but encouraged.
If your next great idea extends, builds on, or merely modifies mine in some way, even marginally, then I am going to do everything I can to ensure that our idea continues to be afforded to as many people as it can be in the same manner to which it was afforded to you.
The page at http://osrc.blackducksoftware.com/data/licenses/ contains daily updated statistics on licenses. ↩
John Haller consolidated these statistics in March of 2011 at the following site: http://johnhaller.com/jh/useful_stuff/open_source_license_popularity/ ↩
This is not to say that the same idea cannot be developed independently by two separate individuals given similar preconditions. ↩
I am not proposing "design by committee," merely making a simple point that more exposure amounts to those who could and would make positive contributions, doing so. ↩
- Light bulb image retrieved from: http://www.publicdomainpictures.net