The GNU General Public License (GPL) has been through three major versions. The first, released in 1989, was mostly concerned with preventing the addition of non-free code to a project in order to circumvent the requirement that modified versions of free software (under a license like the GPL) also be distributed under permissive terms. The second version addressed the problem of dual distributions, requiring that if a person was legally incapable of distributing the source code for GPL’d software under a permissive license, they could not distribute it at all. Finally, the third version addressed the problem of “Tivoization”, by preventing hardware manufacturers from forbidding their users to modify the software on their machines. The third version also added the Affero clause, which (if included) would require anyone offering access to the software over a network to also allow modifications and redistribution freely.
These versions have all faced one serious recurring controversy: This license, masquerading as a protector of liberty, appears to restrict the users and developers of the software, too! There are similar licenses, like the LGPL, which allow derivative works without permissive licensing, but the GPL and AGPL both require that derivative works be licensed under the GPL, and often under the same version.
The major gripe is that, while the FSF and the GNU project both preach freedom loudly and clearly, they seem hell-bent, from the text of these licenses, to restrict people from doing what they wish with respect to derivative works. This perception appears to be tearing the free software community apart.
I hope, today, to dispel some of the myths. I don’t dispute the facts, here. There appears to be a severe disconnect between the words and deeds of the FSF. But I think that disconnect is justifiable.
Small side note: in addition to majoring in computer science, I am minoring in government, and I’m using all of my time in the government department studying United States constitutional law. The reasons for that decision are many and varied, but it’s a source of much clarity for me, and on this subject in particular, I have found a very interesting parallel between the actions of the FSF and the words of the Supreme Court.
In a case called Regents of the University of California v. Bakke, a case before the Supreme Court in 1978, there was a lot of discussion about affirmative action in state-run universities. Bakke, the respondent, said that the affirmative action program at UC Davis was detrimental to his ability to receive an education. Justice Powell, in a plurality opinion (later affirmed by an opinion in Grutter), upheld the program on the grounds that racial preferences, while generally abhorrent, were necessary in some cases to remedy past wrongs, and to establish justice once more.
Perhaps I’m overplaying my analogy here, but I think the principles are roughly equivalent. The FSF, whether knowingly or not, has instantiated a legal tool that takes away some of the choice from the developers of derivative works in order to prevent further such deprivals in the future. I’m sure that, in a perfect world, many of the people at the FSF would release their code under a public domain license, or maybe the BSD or MIT licenses, that give almost complete freedom to the users. But they’ve seen a severe societal meltdown with respect to digital freedom. The problem they see cannot be solved by mere goodwill towards man, or the charity of many volunteers. The problem needs a legal solution, as well. To create that solution, they devised the GPL.
I think that the GPL isn’t the only part of the free software movement affected by these principles. I think there are a lot of people who view the free software camp as unmoving, unwilling to accept compromise. I hope that this analogy I’ve set forward will help others to understand that many people have been fighting this war for too long, and suffered too many defeats, to allow themselves to give any quarter. That’s not to say that these people aren’t very understanding and helpful, but they will definitely be antagonistic if asked to give advice contrary to their ideals, and I hope that someone out there can understand that at least a little.
With that said, maybe it’s time for the free software community to start thinking in smaller steps. As I put forward in another blog post, maybe we need to start considering the immense administrative difficulties that face people in their struggle for digital freedom. Maybe encouraging someone to use Firefox, or even Chrome, on a Windows computer, is the best thing we can do for them until they truly understand what may be at stake.
As always, thank you for reading, and go freely.