Friday, November 26, 2010

Richard Stallman is Right

I've been "dabbling" in Linux for a number of years now, but I've really only given it a serious try in the last few of months. During that time I've become very interested in the Open Source and Free Software philosophies. I've watched documentaries on the history of Linux and the FSF, and videos of Richard Stallman's lectures.

Let me say first that in the history videos I've seen, Stallman really does come off as the freedom fighter that he seems to see himself. I really admire what he's done, particularly in running with his ideas and finally coming up with the GNU GPL. His more recent lectures, however, leave a sour taste in many people's mouths, including mine. He seems more like a stubborn zealot than a freedom fighter. To demonstrate this, let's have a look at the Free Software Foundation's website, specifically the list of approved free OSes, and why some are not included.

My current OS of choice, Ubuntu, would definitely not make it in the list. Ubuntu offers me the choice right at the point of install to use proprietary codecs and drivers. Some included repos have proprietary software that I could install using the included package manager. Indeed, on my personal system I am very conscious of this. I am using the Adobe Flash plugin for my web browser, and I am using the proprietary Nvidia drivers. I have Skype installed. All of these things would exclude me from being a part of the FSF community.

So what if I wanted my system to be 100% free? I've some experience with Debian, I have a server here running LMDE. So I could switch everything to stock Debian, a distro that many, many other distros start from. Well even Debian is not on that list. And the reason is that there is actually proprietary code within the stock Linux kernel. Proprietary kernel drivers to be more precise. It also offers proprietary software through its repos.

This in of itself, that the FSF condemns Debian as a non-free OS, is enough to turn most people away. But there is another side to this coin. There are real, inherent dangers to proprietary software, and the FSF is really only trying to avoid those dangers, and warn others of those dangers at the same time. The more proprietary software that the kernel depends upon, the bigger the danger that it will at some point have to go backwards to replace those proprietary blobs in order to remain free (as in beer). There is always the chance that those blobs will some day come only with a price tag. Or cease and desist letters. If that day eventually comes, those blobs may very well have to be replaced using code from the FSF (accompanied by a very smug [and justified] "I told you so").

Some may say that this is overstating things a bit, and in the kernel's present state that may be. But the list of proprietary blobs occupying space in the kernel seems to grow with every release. Will the day come that Linux in its official state will have to be considered proprietary? Its present growth certainly indicates that as a possibility. Or at least that the proprietary code will become predominant over the free code. And all that proprietary code is owned by someone. As Linux grows in popularity (it does experience exponential growth every year), do you really think that at no point in time any of the companies that own that code are going to start withholding it pending licensing and payment? It's simply naive to believe that. That cost will then have to filter down to the user in order for Linux to continue in development. And the biggest side-effect would be (is?) that as Linux goes down the commercial path, it becomes more and more like the restrictive, closed environments that all of us, developers and users alike, wanted to avoid in the first place.

It's either that or Linux as a desktop will have to take giant leaps backward in functionality (and all the bad press that comes with it).

Thinking in this direction, I begin to see Stallman's point. This could all be avoided if the "narrow winding path" was chosen and all proprietary code was rejected in the first place. It would be a slower process, sure. Many things that can be done on a Linux desktop now wouldn't be possible--yet. All that proprietary code would have to be rewritten from the ground-up, reinventing the wheel as it were. But there would never be the worry of anyone owning the system. It's owned by us all.

This makes me thankful for the Free Software Foundation. In avoiding the "wide and easy path" they are ensuring the future of the Free Software philosophy. They are ensuring that computers will in some fashion always be affordable to virtually everyone.

So will I be switching to an FSF approved OS? At some point I think I'll have to, but that will not be anytime soon. I'm still dual-booting Windows. But when that day comes, boy will I be grateful that Richard Stallman stuck to his guns. He may be a thorn in the side of the Open Source movement right now, but he certainly has his place.

I think the Open Source movement needs to be reminded of its roots now and again, it needs people like Stallman to point out that this direction goes against the ideals that prompted the creation of GNU/Linux in the first place. It may not be nice to hear at times, but sometimes the truth hurts.