Recently I read a blog post from the creator of Ruby on Rails titled I won’t let you pay me for my open source. On the whole it’s a good text about having a healthy relationship to your open source projects, but it also contains a common missconception about copyleft licenses such as the GPL family. It’s not a misconception that damages the overall point of the article, but I still want to use this opportunity to expound upon my thoughts on the matter.
There seems to be this idea that permissive licenses (such as MIT) that demand next to no restrictions, are more free than copyleft licenses (such as GPL) that puts conditions on redistribution. The argument is that since the former has fewer restrictions than the latter it must be more free, and indeed that argument seems to make sense. After all the fewer the restrictions the freer it must be. The author then further builds upon this general idea by comparing Richard Stallman, the original author of GPL to Bill Gates. While the author acknowledges “that these two men were diametrically opposed on many of the key questions about how software should be made and distributed”, they also claim that they are similar since both demand compensation for their software, either in code contributions or with money. Licensing with MIT on the other hand, is the ultimate gift, it demands nothing in return for your kindness. I don’t want to speak for Stallman here, but I think this view misrepresents both the idea of copyleft and freedom.
Whenever the concept of freedom is brought up in an argument, especially when the freedom of two different things are compared, it’s worth asking two questions: “Freedom from what?” and “Freedom for whom?”. Nobody, except maybe the dead, can be free from everything and all freedoms don’t necessarily affect everybody the same, especially if the freedom is the freedom to restrict other people’s freedom. Freedom is ultimately a relation — a subject can be free from the influence of an object — and not a detached, unqualified value that can be ascribed to an object.
Thinking about freedom as a relation brings clarity to the distinction between copyleft and permissive licenses. The latter comes with no restrictions on distribution, so developers can generally do whatever they want with it, even re-license it under a proprietary license. It makes other developers free from the restrictions and intentions of the author, but it also includes the freedom to restrict the freedom of those who use their derived work, ultimately reducing the freedom of those who use it. Copyleft licenses on the other hand, restricts the freedom to restrict others’ freedom by demanding that derivations are licensed under similar terms, ensuring that users of that software always have their freedom respected.
Ultimately it’s a value judgement where the potential users of a software’s freedom is staked against the freedom of redistributors. Do you care about those who use the software over those who redistribute it? Do you want your gift to the world to remain a gift with its freedoms preserved? Or are you fine with somebody taking your gift, stripping any freedoms attached to it, and turning it into an artificially scarce commodity to sell for profit?