A few weeks back there was a small tempest-in-a-teacup when Linux Action Show invited Richard Stallman (RMS) on to their show, and were astonished that he refused to compromise his views. This led Bryan Lunduke to accuse Stallman of wanting to starve the Lunduke family since he would not give his imprimatur to Mr. Lunduke writing proprietary software. My initial thoughts were along the lines of “Lunduke is an idiot”, which are thoughts I have had before. Full disclosure: I find him to be annoying and grating. For that reason, I did not comment at the time. But I just read an interview with Michael Meeks, the LibreOffice developer, that brought up some of the thoughts I had previously, and I decided to write them out.
The essence of the dispute between Bryan Lunduke and RMS was that RMS argued, as he has consistently done, that proprietary software takes away the freedom of the user, and is therefor evil. Lunduke was arguing that he makes his living by writing proprietary software, and therefor deserved some kind of exemption from RMS, and was very upset that he didn’t get it.The immediate reaction I had was “Dude, have you ever listened to RMS?” Lunduke getting RMS to say that was about as likely as getting the Pope to say “You know, that Ten Commandments thing? Totally optional.” Then Lunduke just went nuts and accused RMS of trying to starve the Lunduke children. So it became a reason for me to once again unsubscribe from that podcast, as I have done before. (Though this time it will probably stick.)
But the point of interest is that Lunduke accused RMS of being against freedom, in this case the freedom of Lunduke to write proprietary software. And this is worth taking a closer look, since arguments about freedom often get bogged down in similar dichotomies. And to understand that, I think there are some fundamental truths that need to be pointed out and incorporated into the discussion. The first is that freedom is never absolute if you are living in a society. There are always conflicts and constraints in how you exercise freedom because what you do can impact on others. As Oliver Wendell Holmes said it in a Supreme Court decision, you cannot falsely shout “Fire!” in a crowded theater. Or as another legal scholar put it, your right to swing your hand ends where my nose begins. In fact, a good many court cases are argued to decide among two different freedoms as to where the line will be drawn. This means that to say “I am in favor of freedom” is to make a mostly meaningless statement. It doesn’t become meaningful until you clarify whose freedom, and in what circumstances. And when you do clarify, you should not be surprised if someone says, and probably correctly, “But you are taking away my freedom to…” Yes, we are, and that is the point. Does my freedom to breathe clean air trump your freedom to pollute?
In this case, the conflict was between the freedom to make a living by writing proprietary software, versus the freedom of the software user to use software that gives us the Four Freedoms. Now to be clear, RMS never claimed he was in a position to actually stop Lunduke. He merely refused to countenance it as a legitimate practice. So the real issue boiled down to “He called me names!” But it is worth looking at this carefully because there is a real issue here that is worth exploring. And the issue is whether we should be more concerned with the freedom of the software user, or the freedom of the software producer. RMS is clearly on the side of the user. Lunduke was clearly on the side of the producer. And because of how these are related, you cannot simultaneously maximize both. If users have all of the freedom, there is nothing left for producers, and vice-versa. And that is why I want to turn this discussion to the topic of software licensing. For this is where the decisions are often made on where we draw the line.
In the case of proprietary software, the rights of the user are as minimal as companies can get away with. The road to evil began when someone got the bright idea that you don’t own the software you buy, you only license it, and the producer of the software can decide what you are allowed to do with it. And they can revoke your license to use the software any time they decide it violates their license, and even prevent you from selling it to someone else when you are done. Frankly, I am with RMS on this one. It is evil, and we should fight it. The answer he and others came up with was the GPL. This pushes the balance pretty far in the direction of the rights of the user, as defined by the Four Freedoms:
- The freedom to run the program, for any purpose (freedom 0).
- The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this.
- The freedom to redistribute copies so you can help your neighbor (freedom 2).
- The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.
I think of these as opposite ends of a spectrum. What is in the middle? The “less restrictive” licenses. Now, some would argue that these licenses are even “more free” than the GPL, but that just repeats the fallacy of thinking of freedom as an absolute without context. I am thinking of it as the balance between producers and users, and in important ways these “less restrictive” licenses move the balance back towards producers. The way this happens is through how the software gets ultimately used. For instance, it is a matter of record that important parts of BSD form the basis of the Apple OsX operating system. Apple no doubt used this software because there were essentially no restrictions on what they could do with it. And what they did was create a tightly-controlled OS that severely restricts what the user can do with it. I think that when you look at how the software offered with these “less restrictive” licenses is used, you will see far too many examples of this being used to restrict the rights of users when incorporated into corporate products. You may be of the opinion that what is wrong in the software arena is that companies just don’t have enough power, but I don’t see that on the planet I live on.
And that brings me back to Michael Meeks and the interview I read. He was talking about a huge increase in energy and activity in the LibreOffice project since it split off from OpenOffice. And the major reason he saw for this was that they went to the GPL! I think that makes sense. If I had worked hard on software code that I wanted people to use freely, I would want to know that it was in a license that guaranteed that freedom through all derivative works. And that is what GPL does. I think that is why so many proprietary software creators hate it so much. They are just fine with something like the BSD license that says they can take code and do whatever they want with it. But with GPL they can’t do that. And one thing I find kind of funny is that they could just not use the code if it is that big of a deal, but they don’t seem to think that is a good idea. Their software is licensed to people on a “You do what we let you, or you can’t use it” basis and they have no problem with that, but if free software developers throw it back at them, suddenly it becomes a “cancer”, “first step to communism”, etc. What you should consider when you hear these arguments is whose interests are they protecting? Yours?
Listen to the audio of this post on Hacker Public Radio!