Jeremy Allison Column Archives

The Low Point — a View from the Valley —; Column 9

Freedom Fighters

As I write this the GNU GPL license is undergoing some robust discussions about its future. Eric Raymond used a keynote speech to state: "We don't need the GPL anymore. It's based on the belief that open source software is weak and needs to be protected. Open source would be succeeding faster if the GPL didn't make lots of people nervous about adopting it.". There have also been many articles in the trade press about the future revision of the GPL license, version 3, claiming everything from the fact that major vendors will be able to dictate terms to Richard Stallman (or Linux won't adopt it so it "won't be successful" they say) to the possibility it'll make commercial use "impossible" by prohibiting use with any Digital Rights Management or "Trusted Computing" scheme.

The truth, as always, lies somewhere in between. I am lucky enough to have actually seen an early draft of the GPL version 3, and was able to scribble some hasty comments on it before having to return it to Bradley Kuhn, Director of the Free Software Foundation. The one thing I can say for certain about it is that it isn't finished yet. What gets released will almost certainly be very different from what I saw, which will be a good thing in my opinion. The strength of the GPL (version 2) is that it doesn't read like a legal document. Having read enough legal documents when dealing with the Microsoft Anti-Trust case in the EU I can only say that is probably its greatest strength. I'm a programmer, not a lawyer, and the more something can be parsed by simple English and not have to be interpreted with legal help to clarify it the better. The draft I saw was too close to a legal document (in the words of Peter Shaffer's "Amadeus" it had "too many notes") and hopefully will be much simplified before being released as a discussion document.

The thing people forget about the GPL is that it's a document dealing with human Freedom. Eric doesn't get it, because he doesn't see creating software in those terms, he just wants to have more efficient and better software and thinks that allowing others to see and modify the source code will achieve that. In fact, one thing the Bitkeeper fiasco taught me is that Linus doesn't get it either. He doesn't care about Freedom, just getting a more efficient way to develop the software he finds fun. He's quite willing to sacrifice Freedom (yours and mine) in order to help out his mates.

I disagree. I'm going to put my cards on the table and say I'm not an "Open Source" person, I'm a Free Software person. Freedom is the most important part of what we do in developing this code. Hopefully an example will illustrate this.

One of the most successful companies shipping data storage appliances (a particular concern of mine for obvious reasons) is NetApp. NetApp could be said to have created the category in fact. What isn't commonly known is that NetApp was originally based on Open Source (note not "Free") software. The underlying operating system for their filer appliances was originally FreeBSD. I'm sure since then it's been heavily modified, I know just as one example it's been made SMP-aware to cope with multiple processors. The reason few people know this is not one line of those changes (to my knowledge) has been contributed back to the FreeBSD effort. Open Source, in the form of the BSD license, was certainly weak in that case. Too weak to compel NetApp to participate in the community.

"Why pick on NetApp" I hear you ask ? After all Microsoft did exactly the same with their initial TCP/IP stack for Windows. The reason they make such a good example of the difference between Free Software and Open Source is when you look at their contributions to Linux. To their great credit, NetApp are a big contributor to Linux, under the GPL of course. They actually employ Trond Myklebust, the maintainer of the NFS code in the Linux kernel, who busily releases large amounts of code back to the community. The magic difference of course is the license.

The same can be seen in many other cases. "Weak" Open Source code is taken and used, "strong" GPL code is taken, used and contributed back to. Yes, I'm sure there are companies that don't use GPL code because they're "nervous about adopting it". These are companies we don't need to help. After all, they don't want to help us. As a counter example many people mention Apple, as they are probably now the largest contributor to the FreeBSD effort by releasing the core code of their "Dawin" operating system (the basis of Mac OS X) back to the community. But for every Apple, there are a hundred NetApp's. They do contribute, but because the GPL means they have to not because of altruism. Saying we don't need the GPL is like saying we can do without criminal law and replace it with the chilling Aleister Crowly statement; "Do what thou wilt shall be the whole of the Law", because most people are basically decent. That may be true but it's not the decent people we need to protect ourselves against.

I'm going to put my trust in people like Richard Stallman, Eben Moglen, Georg Greve (of the Free Software Foundation Europe) and Bradley Kuhn, because they've earned my trust over the years. Whilst we may be out there writing the code, that's the easy part. Writing code is fun, it's the glamorous side of the Open Source/Free Software community. The people who do the hard work, the real Freedom Fighters, are the people who have created the GNU Free Software foundation, who have written the GPL, the legal basis for our community. They are the ones out there giving talks to the public, working with legislators, creating the framework that allows us programmers to safely write our code and release it in what would otherwise be an incredibly hostile and predatory environment for Free Software.

Freedom fighters of the Free Software Foundation, creators of the GNU/GPL, I salute you ! I hope this column will inspire more people to join them and contribute money and resources to their fight. After all, they're fighting for our freedom.