Monday, December 31, 2007

GPLv3 - The Year in Review

The Year in Review Report is intended to give you a summary of what has happened to the GPLv3 over the past 6 months, and review some of our highlights for the year.

For those curious regarding how the overall adoption is doing, scroll down to my updated numbers. I polished up my crystal ball, and found that the predictions to date are not only accurate, they have been conservative - GPLv3 adoption, lackluster or landslide.


For six months, we have been reminding developers to check those links for the license - Bad links = invalid license?

I added a summary of our hot projects, and I listed my definitive guide to OSS licensing for developers - Ernie's Clear OSS Licensing Guidelines


Happy New Year
We welcome 2008 with open arms as we say goodbye to 2007. Looking back, since the release of the GPL v3, support for the license has grown quickly and consistently. We are ending the year at 1380 GPLv3 projects, which experience a bit of a slow down from the holidays. Over the last half a year, the LGPL v3 list has grown to 135 LGPL v3 projects. Combined, the GPL v3 and LGPL v3 projects account for 1515 projects that support the relatively new FSF license. Aside from my estimates and speculation, no one was quite sure how the Open Source community would react to the adoption of the license, but now that the first 6 months are over and the year is coming to an end, we have enough data to say that the GPLv3 is here to stay. The adoption rates are still changing, with recent news such as Sun releasing code under the GPLv3, and many large players such as MySQL still watching the license closely to see if they will adopt the license. 2008 is sure to bring new news and unexpected events, so we will continue to track the adoption of this license until we can clearly see where it is going and its impact on the community in the long run.




Past 6 months:Adopters and Rejectors



Significant adopters
Samba
From the onset, Samba supported the GPL v3 by announcing that it would adopt the license prior to the release. After the day past, they kept to their word, and Samba was one of the first large projects to adopt the license.
Their lead was no doubt a factor in many smaller projects adopting the license. After these 6 months have passed, they are still under the GPLv3 and a large influence in its adoption.

Sun
Sun has recently announced that they will release a set of VM related management products under the GPLv3. Sun had its optimism with the license from the start, calling it "a strong and market-changing document," but as with everyone else, they wanted to give it some time to develop before completely committing a project to the license. But with this new set of projects being release under the GPLv3, they are showing explicit support for the license, which may build momentum for GPLv3 adoptions.

SugarCRM
SugarCRM was also a relatively early adopter of the license, stating they would use the license in late July, about one month after the release of the GPLv3. The customer relationship management project switched to the GPLv3 because it would make it easier to share code with other GPLed projects. John Roberts, CEO of SugarCRM, stated, "Right now, we are using the GPL version 3, which is one of the best licenses out there."
Such statements and reports are driving the support behind the GPLv3.


Significant rejectors
The Linux Kernel

One of the largest names in Open Source, if not the largest, is the Linux kernel, which has been a large supporter of the GPL v2. However, when the release of the GPL v3 came around, maintainers for the Linux kernel decided not to adopt the license. Even before the license was released Linus Torvald, leader of the Linux kernel project, was against the license mainly because of the DRM provisions. These were not removed from the license and the Linux kernel did not take up the license. Being one of the largest names in Open Source, the Linux kernel is the project slowing the adoption the greatest. If Linux had adopted back in June, the adoption rates would have been much greater than they are and could have caused widespread adoption. There is still a small possibility that maintainers of the Linux kernel will adopt in the future, if more projects take on the license, such as Sun's VM projects perhaps.

Alfresco
Alfresco, the enterprise content management project, decided to switch from the Mozilla Public License to the GPL back in February of this year. But what wasn't sure was which version of the license they would take since their decision came at a pivotal time for the GPLv3. Alfresco showed early interest stating, "We'd really like to go version 3 when it comes out, if it remains as planned." However, Linux not converting played a large part in Alfresco not converting, which goes to show the large impact Linux had on the license. Their current statement regarding the GPLv3 is, "Some other GPL projects, like the Linux projects, use a single version of GPL. We have decided to follow the lead of Linux on this point."

MySQL
In January, MySQL changed their license to GPLv2 only, taking off the "or any later version" part of the license. The move was not made in an explicit rejection of the license, but like many others, they wanted to see how the license would develop before making any commitments. To this day they have still not adopted the license and are still under version 2. The people at MySQL did give the license a warm reception when it was released, stating that they expected the license to be widely adopted, but still wanted to gauge the market before putting code under the GPLv3.


In the News: 2007

GPL v3- The release of the GPL Version 3 was one of the most highly anticipated events of 2007. The GPL after all is the cornerstone license of the Open Source and Free Software world with countless thousands of projects under its license.


http://www.internetnews.com/bus-news/article.php/3717841


Patents and Microsoft- The GPL version 3 process was strongly influenced by Microsoft and its patents. While Microsoft has argued for years that Linux may infringe on Microsoft's intellectual property, it was in 2007 that Microsoft gave the infringements a number. Microsoft alleged that Open Source software infringed on some 235 of its patents. Steve Ballmer himself beat the patent drum telling people that Red Hat and others have an obligation to pay up.
http://www.internetnews.com/bus-news/article.php/3717841


SCO in a Coma- The poster child for Linux lawsuits and patent infringement, also known as SCO somehow managed to survive 2007. In 2006, we had predicted that end of SCO in 2007 due to a trial that was supposed to have happened this year. No trial ever happened. Instead SCO pleaded poverty, declared bankruptcy and tried to sell of its Unix business before creditors like Novell could get a piece of it.
http://www.internetnews.com/bus-news/article.php/3717841


Linux Gets Both Real and Virtual- There were four mainline kernel.org Linux kernel releases in 2007 adding functionality across the whole set of computing requirements. The SuperBowl 2.6.20 kernel was the first of the year, kicking off with some virtualization enhancements. The 2.6.21 kernel was also highlighted by virtualization which was a strong theme overall for Linux in 2007. New memory management and a new wireless stack debuted in the 2.6.22 kernel. The 2.6.23 kernel marked the introduction of the completely fair scheduler which provides some real time capabilities for Linux.
http://www.internetnews.com/bus-news/article.php/3717841


Google's Android- Google (NSDQ: GOOG)'s Android announcement today may be the biggest news story ever for the mobile open source community. To add some perspective, I sat down with Fabrizio Capobianco, CEO of Funambol, a company working with mobile carriers and device manufacturers to offer an open source application server.
http://www.informationweek.com/blog/main/archives/2007/11/what_does_googl.html
Review of 2007 research

GPLv3 adoption, lackluster or landslide -

7/10/07 http://gpl3.blogspot.com/2007/07/opinions-on-gpl-v3-adoption.html

7/16/07 http://gpl3.blogspot.com/2007/07/gplv3-overwhelming-support-if-you-know.html

8/13/07 http://gpl3.blogspot.com/2007/08/gplv3-past-5k-mark-and-going-strong.html

8/22/07 http://www.palamida.com/node/467

10/12/07 http://www.palamida.com/node/492



Total repository based OSS community: 236,049 (SF total 165,234 as of 12/29/07 divided by 70%)
Estimated Total active Projects: 35,407 (total multiplied by 15%)
Total active GPL: 29,388 (total active, multiplied by 77% GPL and 6% LGPL)
Estimated total GPLv3 conversion, including "or later": 21,159 (total active, divided by 77% GPL and 6% LGPL, divided by 72% estimated conversion rate)
Estimated current "or later" impact: 14,694 (50% of GPL)

Therefore:

Or later – 6390 of 14,694 projected – 44%
LGPLv3 – 135 of 1269 projected – 11% (GPL conversion divided by 6%)
GPLv3 – 8127 (GPLv3, LGPLv3 and all "or later') of 19,889 projected – 41% (GPL conversion divided by 94%)
GPL, not converted – 5923 projected (GPLv3 converted projects multiplied by (100% - 72% convert rate))
Active Non GPL license – 6019 projected (Active projects – Active GPL projects)

All this in six months!


Six months have passed since the GPLv3 became final, and despite the debate and public opinion in both directions, time always tells in retrospect. That being said, I made predictions early on based on analysis and observations on my part, and extracted from work by Matt Asay. The result was that I predicted a steady and increasing support for the GPLv3 license due to a number of issues, and I plotted the overall potential scope of what a saturated GPLv3 adoption would look like.

Bad links = invalid license?

7/10/07 http://gpl3.blogspot.com/2007/07/check-your-gplv3-link.html

7/11/07 http://gpl3.blogspot.com/2007/07/more-thoughts-regarding-invalid-gplv3.html

7/11/07 http://gpl3.blogspot.com/2007/07/correct-your-gpl-license-links.html

12/9/07 http://gpl3.blogspot.com/2007/12/crystal-clear-or-clear-as-mud-lack-of.html

12/9/07 http://www.palamida.com/node/511




Our research continues to point out the issue of ambiguous licensing. This is taken from my most current writing, in which I defined my "guidelines". I hope that developers start to adopt these.

Ernie's Clear OSS Licensing Guidelines

1. Project must have a distinct homepage that is not a repository. Domains are cheap and user pages are free in many cases. This provides a place where the maintainer can manage a freeform data exchange with users, and is a site unique from any repository and its goals.

2. Maintainer needs to provide a URL to the license(s) used. I suggest http:///license.html. Under this file, identify the applications, versions and releases, all hyperlinked. Within the hyperlinks, allow a user to follow distinct hyperlinks to the specific license text. Name the URL for the license text using the name of the core license, like http:///licenses/license-Apache_License_Version_2.0.html

3. License text must reference file from which it derived by URL, like http://www.opensource.org/licenses/apache2.0.php

4. Project homepage MUST provide a link called LICENSES that goes to the main license page, described above.

5. Each download file MUST be compressed with a file called license.txt and license-.txt, along with a hash fileof the text license file.

6. License.txt needs to described the licensing hierarchy for licensing per application/version/release .

7. license-.txt includes the explicit text of the license, and includes pointers to where the SAME license can be found on the website, within the source code (by the same name), and in the binary

8. license-.md5 MUST be included to allow absolute verification that the user has the license that was intended to be included with the specific release

9. Unless the maintainer has a Juris Doctorate and specializes in software licensing law, stick with OSI licenses, or use them as the CORE. In the event that the maintainer uses the OSI license, congratulations. In the event that a maintainer chose to reinvent the wheel, identify such. In the license URL, change the URL to read as follows:
- OSI license: license-.txt
- modified OSI license: license-Modified_.txt (this requires identification of the core license that was modified)
- license newly developed by maintainer or third party: license-custom-.txt

10. Finally, a license should be basic, and easy enough to understand that a layperson could understand the idea of it. In the event that a maintainer customizes licenses, or chooses one that is available, make sure it is easy to understand. Think of it this way, if you can't explain this to your mother, you probably can't explain this to a judge any easier.

In the end, a license for the use of open source software is an agreement between a maintainer/developer who created the project, and a user/developer who plans to use it. The agreement represents the rules of a relationship.

Summary

Regarding my GPLv3 adoption predictions, the actual will always trail the predictions by a percentage. As the database of projects that adopt GPLv3 variants grows, and as the community continues to contribute information, we will be able to accurately display information that more closely tracks the predictions in near real time.

5 months ago, the analysis looked speculative and subject to very kind interpretation. Now, with six months behind us, and fresh batteries in my crystal ball, I give credit to the open source community, the Free Software Foundation, and a little intelligent extrapolation of historic data, because it seems that the actual numbers as seen above are only marginally behind the predicted numbers. In all, FSF made a license that fairly reflects the wishes and desires of a significant number of those wishing to author and distribute free software for use. As with its predecessor, the GPLv3 license seems to have slowly and predictably gained acceptance, traction, and widespread adoption in the free software and open source community.

I hope that software developers intent on free distribution of binaries and source consider seriously the ideas behind my licensing guidelines. Clear licensing will ease use and advancement of key projects in the open source software community, and will do much to quiet much of the FUD regarding the scary OSS related licenses.

So what is ahead for the next six months? I have publicly posted my numbers, my sources, and how I estimated them. I anticipate that the new Affero license may end up being the unexpected surprise, representing a new option for licensing free software with a new method of delivery. In conclusion, in regards to the GPLv3 adoption, let me say " I told you so".



Special note -



If you have a need for additional data relevant to GPLv3 and OSS related licensing information, feel free to contact me at rdgroup@palamida.com.





Happy Holidays and Happy New Year!


Ernest Park

Antony Tran

Kevin Howard

Edwin Pahk

Chris Porter





The Research Team












Creative Commons LicenseThis work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License












5 comments:

Anonymous said...

Thanks for all the hard work folks.

We regularly discuss v3 adoption here at work and your site very important to prevent FUD over its implementation.

Im not going to play the GNU/Linux card but stop saying "Linux". Linux didnt refuse anything.
You are referring to the Linux kernel, which is a part of the operating system

Gaetano Andrea said...

i'm surprised you didn't mention that KDE 4 might adopt the GPLv3.. that would be a big step forward and a "beefer" for the license.

anyway i'm confident that Linux (the kernel) will adopt GPLv3 one day or another, it's only a matter of time. Anything (bad?) could happen to make Linus change his mind.

Ernest M. Park said...

Point well made - You are correct that the reference is to the non-adoption of the GPLv3 license specific to the Linux Kernel.

I have made an edit.

Thanks for the input.

Ernie

giovani spagnolo said...

Thank you for the very extensive update...

I'd like to suggest Palamida to start tracking the projects Shifting now to FSF's GNU AFFERO GPLv3, the license designed specifically for software running over a network (specially the www)...

The full license text here: http://www.fsf.org/licensing/licenses/agpl-3.0.html

Ernest M. Park said...

Your comments are well taken. As you may notice by our post from 1/4/08, one of hte members of the team took some time to start exploring the ramifications of the Affero license, citing the Eastwood project as an example to watch.