Why GPLv3 Will Supplant GPLv2
One of the most important recent events in the world of free software has been the release of version 3 of the GNU GPL. There were fierce arguments about its utility while it was being drawn up, and although the rhetoric has abated somewhat, there is still a big question mark over its eventual success. Some evidence suggests that GPLv3 uptake is coming along nicely, while other reports indicate a reluctance to adopt it (but note also Matt Asay's neat reconciliation of these contradictory messages). To see what's likely to happen in the long term, it's useful to look back at the past history of licence adoption.
The first detailed discussion about licences arose when companies began offering open source software other than GNU/Linux distributions. Many were rather timid or even downright sceptical about embracing the GNU GPL wholeheartedly, and chose instead to adopt a dual licensing policy, offering a version of the software (sometimes with extra features) under a non-free licence as well as a version under the GNU GPL. This was pioneered by L. Peter Deutsch with Ghostscript.
Ghostscript was the direct inspiration for the early dual-licensing approach of MySQL, where initially the free licence employed was not the GNU GPL. As MySQL's CEO, Marten Mickos, told me last year:
Initially, [MySQL's founders] had another dual licence that said it's free on Linux but you pay on Unix and Windows. And at some point they realised to get included in the Linux distros you needed a licence that people could readily accept. People had nothing against the MySQL licence, but it took time for them to read through it and accept it. And [the co-founders] argued that if they would adopt the GPL then there would be no questions asked.
The interesting point here is that it was not legal issues that prompted the adoption of the GPL, but simply a desire to make it easier for MySQL to be included in distributions by simplifying the legal wrapping. MySQL is not alone in making the move to the GNU GPL for this reason.
Alfresco is the leading open source player in the enterprise content management space. It's a relatively recent start-up, dating back to January 2005. And yet, since then, it's been through several licences as it has tried to find the best solution for itself and its customers.
Initially it adopted the LGPL, but as John Powell, Alfresco's co-founder and CEO, explains:
The difficulty we found with that, early on, was that it's almost too permissive as a licence. And for an open source company where we had assembled the engineers and were creating the product before we'd built, if you like, our reputation, our brand, on the Internet, we wanted to make sure that people know that Alfresco had created the product.
And LGPL doesn't allow you to do that. So we moved quite rapidly to a licence called MPL, which is the one used by Firefox, that also allows you to have what's called attribution in the product. So someone building a product would refer to the software created by Alfresco or whatever.
But there was a problem with the MPL too:
After about 18 months, we got to the point where Alfresco was becoming well known. A lot of people were saying, "We want to work with Alfresco, but we don't understand this MPL licence." And open source works when you remove all the barriers to customer acquisition, so you want to make everything as straightforward as possible. The last thing you want is a licensing discussion.
Whether it's good or bad, the most popular licence is the GPL. So we thought, "We'll have the GPL." And that's where we are now.
What's interesting about this is that once again the GNU GPL was adopted not out of any passionate belief that it was the best, but simply because it was perceived to be the norm.
I'd like to suggest that the same will happen with the GNU GPLv3. As we are seeing, some projects have already moved to version 3, while others are holding back. Nonetheless, version 3 is the latest version, and as such in some sense the "official" GPL. So when users are confronted with software that uses earlier versions, they may well wonder why that is – unaware of, and probably indifferent to, the detailed legal arguments. Instead, many will see it in black and white terms: that version 3 is an update to version 2,and therefore preferable.
In other words, it will be marketing rather than legal considerations that will gradually push open source companies to adopt GNU GPL version 3 for their software. And where the companies lead, the independent projects will tend to follow (excluding likely holdouts such as the Linux kernel), because it is the companies who are spearheading the massive uptake of free software in new areas. Again,it will just be easier for projects to go with the flow and adopt version 3 in order to fit in with the prevailing approach adopted by companies.
Ultimately GNU GPL version 3 will supersede version 2 not because it's better – that's a matter of opinion – but because three is bigger than two, which is a fact.
Glyn Moody writes about open source at opendotdotdot.
Getting Started with DevOps - Including New Data on IT Performance from Puppet Labs 2015 State of DevOps Report
August 27, 2015
12:00 PM CDT
DevOps represents a profound change from the way most IT departments have traditionally worked: from siloed teams and high-anxiety releases to everyone collaborating on uneventful and more frequent releases of higher-quality code. It doesn't matter how large or small an organization is, or even whether it's historically slow moving or risk averse — there are ways to adopt DevOps sanely, and get measurable results in just weeks.
Free to Linux Journal readers.Register Now!
- August 2015 Issue of Linux Journal: Programming
- Hacking a Safe with Bash
- Django Models and Migrations
- Secure Server Deployments in Hostile Territory, Part II
- Huge Package Overhaul for Debian and Ubuntu
- The Controversy Behind Canonical's Intellectual Property Policy
- Shashlik - a Tasty New Android Simulator
- KDE Reveals Plasma Mobile
- Embed Linux in Monitoring and Control Systems
- General Relativity in Python