Cathedrals, bazaars, copyleft and free software licenses
Any stakeholder in the FOSS community should read this article by Armin Ronacher. Whether or not one agrees with his opinion on Github's license selector interface, the blog post excellently summarises the state of licensing affairs for FOSS projects.
Based on preliminary evidence from an analysis of some Github projects, there seems to be a strong trend towards "more free" licensing like the MIT or BSD licenses, and, more worryingly, the lack of a license for a large chunk of the code.
We are not yet in a post-copyright world. You might claim that eventually the world should get rid of copyright, but software (unlike art) can quickly become obsolete and useless. Technology moves much faster than the human lifespan. If your code isn't used for a decade or two, chances are that it's irrelevant to the developers of the future since the devices and the frameworks it was designed for would have become obsolete. In reality, the impact of software written today depends critically on licensing matters.
What makes free software free?
The freedom in free software comes from the fact that users have rights, as encoded in the license. So using any software without a license codifying user rights is a source of potential trouble, especially if one party can decide to unilaterally change the terms of the license agreement (as is true with the obnoxious EULAs for most internet services). So, open source code without a license is quite unusable.
Cathedral vs Bazaar
It strikes me that the current situation is analogous to the Cathedral/Bazaar contrast that Eric Raymond (ESR) wrote about over a decade ago, in the way developers interact with their users. In the "cathedral" model, the software is licensed strictly, often with the hope/vision of it gathering contributions over the long-term. In the latter model, code has permissive (or no) licenses, is meant to serve immediate purposes without much thought given to the long-term, very reminiscent of a "bazaar". Is is interesting how the same concepts could be used to depict another aspect of FOSS development. Note that throughout this essay, when I mention cathedral/bazaar, I don't quite mean the development styles that ESR talked about, but rather, the way developers share code and use licenses for the same.
Ideally, Richard Stallman would like a world without copyright where people have maximum freedom and access to the source code (or its analogue) for everything. Failing that, given the situation today, he strongly believes in using copyright to ensure freedom, which is the idea of copyleft. Today, these efforts are spearheaded under GNU/FSF leadership. The cathedral like structure built on this foundation, can in a sense be considered the bastion of freedom.
The cathedral has been painstaikingly constructed like a fortress, with the solidity of the GPL and similar licenses. While its necessity is obviated in a post-copyright world, as long as the concept of copyright is in practice, the cathedral will provide shelter to those who seek to work with free software. By design, it is set up to protect people from a hostile environment. Recall that the eighties and nineties when the GNU movement started and flourished was a pretty hostile environment for those seeking FOSS software. The whole point of the copyleft movement was to ensure that people couldn't leech off free software without also supporting it and contributing in return. By that, I don't just mean contributing source code back upstream, but giving the source code to users and respecting copyleft. This has worked tremendously well in practice, and just for example: look at GCC and linux.
The remix-culture of today is bazaar-like and inherently dislikes the rigidity and bureaucracy associated with the cathedral. This might be one of the reasons behind some of the community members' dislike of GPLv3. The "move fast and break things" philosophy probably engenders a lot of innovation, which could be shallow or deep -- the shallow innovation boosts and gives impetus to the big/deep ones by adding bells and whistles and attracting more eyeballs. Twitter-bootstrap is a not-very-deep but hugely empowering example. That said, the bazaar model builds a loose structure which is great in good times but might not last in a hostile situation. The bazaar, though more organic, (like useful markets) requires a strong foundation and regulation to sustain. The cathedral, developed with its strong licensing framework (particularly the GPL) provides that platform. It's worth pausing for a minute to think whether something like twitter-bootstrap (just an example) could have happened without the open source LAMP stack and if those might even have been possible without GCC and co. The GPL has played an important role in bringing us to this strong situation now, where most programmers in this generation consider free software to be a given and cannot imagine or grasp a hostile world. It is worth remembering that this was not always the case, and will not necessarily be the case unless one continues to strive for it in each generation, as technology brings us new platforms.
On the other hand, the bazaar does not have as strong a foundation, and could be more vulnerable. When a big entity comes and starts trolling the little ones, there is no cohesiveness or structure to the resilience, and the bazaar could collapse. Some possible scenarios
- Companies regularly try to exploit all the unlicensed or improperly copyrighted code out there and are only too happy to take without giving back. Examples here and here. Also check here.
- If there is no clear license, there is a possibility of mismatch in expectations between the (upstream) developer and others using the code (downstream). Then it might not take long for trolls to get hold of some software and start suing people (individuals and small groups) in what would effectively be a shakedown. The Github philosophy of Keep-Calm-and-fork will be in deep shit and people might start staying avoiding FOSS as it would be filled with poorly-licensed landmines.
I don't want to spread FUD about the bazaar model, but the lack of a rigid structure and the duplication of effort is worth reflecting on, even if it might be desirable for some reasons.
Copyleft as a tax
Those who opine that the GPL reduces developer freedom for derivative works are missing the point. The GPL is meant to be viral and infective, by design. Consider that to be a tax on developers building on free software -- the tax of using GPL software is that you have you pass on your additions to others under GPL. Consider this a form of reward for the developers who have already invested their effort into GPL software. You get to stand on the shoulders of giants while giving back to the community, what you can add. It is meant to ensure user freedoms and in that process, forces some terms on derivative software. When a state is to be managed, taxes help build a functioning structure which ensures freedom for everyone. Without taxes and an enforced rule of law, the privileged can take care of themselves and exploit the underprivileged. It is difficult to have a civil society with the law of the jungle, however "free" the jungle might be. The GPL's notion of freedom is that of a civil society rather than that of a jungle.
I'm reminded of this thought-provoking excerpt from A man for all seasons.
Alice More: Arrest him!
More: Why, what has he done?
Margaret More: He's bad!
More: There is no law against that.
Will Roper: There is! God's law!
More: Then God can arrest him.
Alice: While you talk, he's gone!
More: And go he should, if he was the Devil himself, until he broke the law!
Roper: So now you'd give the Devil benefit of law!
More: Yes. What would you do? Cut a great road through the law to get after the Devil?
Roper: I'd cut down every law in England to do that!
More: Oh? And when the last law was down, and the Devil turned 'round on you, where would you hide, Roper, the laws all being flat? This country's planted thick with laws from coast to coast– man's laws, not God's– and if you cut them down—and you're just the man to do it—do you really think you could stand upright in the winds that would blow then? Yes, I'd give the Devil benefit of law, for my own safety's sake.
While formulating recent versions of the GPL, GNU had the foresight to see the ascent of internet services and also attempts to take on many hard problems. In a world still shaped heavily by copyright, there are no simple and obvious solutions to these matters. Of course, writing legal documents is an art that software developers have much to learn about, but would prefer not having to go anywhere near. Making licenses shorter and simpler might make them easier to read, but is not always more effective in the promotion of user freedom. Some people take objection with the GPL v3, and with good reason. However, copyleft is currently the strongest protection for free software and it would be a big mistake to abandon that (and free software licenses in general) prematurely. A movement ceases to exist without the support of people and risks becoming irrelevant if the younger generation does not understand or identify with it. Given that most code has a fairly short lifespan, it is possible that the GPL and most GPLv3 code might lose effectiveness in promoting FOSS, over the next decade or so, if the copyleft movement is not carefully nurtured.
I thank Kumar Appaiah for helpful comments on this essay.
blog comments powered by Disqus