tecosystems

How Important is the GPL?

Share via Twitter Share via Facebook Share via Linkedin Share via Reddit

To many in the Free and Open Source Software (F/OSS) world, the GNU General Public License or GPL is held up as the finest example of everything that free and open source stands for. Unlike licenses such as the BSD or even MPL, the GPL makes few if any compromises; its goal is nothing less than guaranteeing in perpetuity the freedom (not as in beer, but as in open) of the works licensed under it. This noble ambition is so important to some of its advocates that works released under more permissive, alternative open source licenses are viewed as less than “true” open source – their OSI stamps notwithstanding. In simple terms, saying the GPL is popular in the F/OSS world is understating the case significantly – it’s sacred.

Enter Eric Raymond, open source luminary and author of the seminal Cathedral and Bazaar essay on the principles behind open source, who took a fairly unambiguous position as anti-GPL in an interview with ONLamp.com last week. Here’s an excerpt:

I’ve actually been making the argument that the GPL is rationally justified only if open source is an inferior system of production since 1998. But back then, the evidence that open source is a superior system was much less clear. I believed it, having written the first analytical argument for that proposition in The Cathedral and the Bazaar in late 1996. I already knew what that implied about the superfluousness of the GPL when I wrote the paper–but until there was a lot more real-world evidence, I knew the argument would be difficult for GPL fans to hear.

In fact, it’s political considerations that kept me quiet for a while. For a long time, I judged that any harm the GPL might be doing was outweighed by the good. For some time after I stopped believing that, I didn’t see quite enough reason to fight with the GPL zealots. I’m speaking up now because a couple of curves have intersected. It has become more apparent how much of an economic advantage open source development has, and my judgment of the utility of the GPL has fallen.

Unsurprisingly, members of various F/OSS communities have reacted strongly to the assertions he makes (just see the comments to linked interview), and I expect quite a bit more fallout in the days ahead. But as much as one might like to view his comments as just so much flamebait, there is a logic here that’s difficult to dismiss, and certainly it’s difficult to argue considering ESR’s personal history that he’s ignorant on the topic.

The difficulty in evaluating a statement such as “We don’t need the GPL anymore” is the “we.” Who does it refer to? The free and open source community (which one)? Developers? End users? Corporate entities? All of the above? It’s in answering that question that I formulated my own answers.

At the risk of subjecting myself to the same flames ESR is undoubtedly receiving, let’s look at the question from an open source advocate’s viewpoint. Besides its explicit goals for protecting the freedoms of an invidual project, it’s not much of a stretch to say that the GPL was intended more broadly to ensure the ongoing survival of the open source ecosystem by providing a credible license developers could use to contribute their works in such a manner that would prevent them from being appropriated and subverted beyond the original intent. In that, I’d say: mission accomplished. Where Raymond and I agree, I think, is that in that context having GPL be the dominant license of choice is no longer required. Beneficial, perhaps, but IMO open source has reached the point of critical mass that ensures that it’s a viable – and often preferred – development model for the foreseeable future. Open source is here to stay – just, for that matter, as the GPL is – and one license, however important, will not make or break its future.

But, and this is an important but, saying that the GPL is unnecessary for the continued success of open source is a far cry from saying the license that the license itself is unnecessary – at least in my case, if not Raymond’s. Because if we look at constituencies other than open source advocates, say, an individual developer – there are unquestionably reasons that they may choose to release their code under GPL’d terms. Raymond’s experience [1] might lead him to believe that this choice is driven by something other than an affinity for the license itself, but I think it’s equally likely that developers choose the GPL because they felt confident that it would best support and protect their work indefinitely. Certainly Linus felt that way with Linux [2], and I doubt that the GPL’s overwhelming popularity in venues such as Sourceforge [3] is driven purely out of notions of solidarity, or a simplistic popularity contest. Is much – or even most – of that popularity an outgrowth of Linux? Possibly, but that does not obscure the fact that the GPL is the most stringent at protecting developers’ rights, although as Raymond points out may or may not be a good thing for developers generally.

Beyond such subjective reasoning, however, there’s a bigger issue: the tens of millions of lines of GPL’d code that’s been submitted to date. I believe Raymond’s point is not about retroactively relicensing existing works (if that’s even possible considering the copyright assignment provision of the GPL) but rather licensing for current and future projects, but even then the fact is that the majority of open source code is GPL licensed. For that reason alone, the GPL is vitally important and will continue to be.

Ultimately, while I think what Raymond has to say is not without merit – and should absolutely be considered as rationally and dispassionately as possible – I don’t believe that as a general, unqualified assertion, “We don’t need the GPL anymore” is accurate. Necessary means different things to different constituencies, and when you deconstruct some of the arguments I think two big questions are being asked:

  1. Is the GPL necessary to the continued survival of open source?
  2. Is the GPL necessary to preserve certain authors rights and priveleges?

As long as some portion of the developer population desires the sort of freedoms and protections provided by the GPL, it’s necessary. But has open source matured to the point where the “GPL as default” is not required for its continued success? I think so. As discussed previously, I don’t subscribe to the notion that the GPL should be the only path for those seeking to release their code, but I do believe it will continue to be an important – and therefore necessary – one.

[1] “I’ve used GPL on many of my own projects, but more as a gesture of solidarity with the majority in the community than because of any attachment to the GPL itself.” (link)

[2] “But the GPL is what _I_ want to program with, because unlike the BSD license it guarantees that anybody who works on the project in the future will also contribute their changes back to the community.

“And when I do programming in my free time and for my own enjoyment, I really want to have that kind of protection: knowing that when I improve a program those improvements will continue to be available to me and others in future versions of the program.” (link)

[3] As of today (7.5.05), I count a total of 64,993 projects released under OSI approved licenses, of which 44,854 (69%) are GPL licensed, compared with 4,688 (7%) for the BSD and 1,060 (2%) for the MPL 1.0/1.1.