I’ve long been a fan of Free Software - both the technical aspects and the moral implications. As such, I’ve long been somewhat of a fan of RMS, and have followed his public persona. I’ve had the experience of exchanging short emails with him, and was lucky enough to attend a speech of his, entitled “Copyright vs. Community in the Age of Computer Networks“, here at Rutgers.
I’m a big fan of most of RMS’s thoughts. I do, however, think of him as a religious zealot. While his teachings may be pure and closest to “the right way”, I find them a bit to pure for the lay-people; perhaps they’re more suited to the priestly class. Reading an interview with RMS today, I came by an interesting response (the first answer on the second page) dealing with the use of proprietary software and drivers. I’ll be the first to say that I’m a big fan of GPL, including GPLv3 - granted most of the “software” I write is shorter than the GPL itself.
However, I have a bit of an issue with RMS’s stance. In my view, freedom is the right of the masses. The GPL speaks at length as to the freedoms granted to a user of software. However, what of the responsibilities of the developers? Compromise is part of life. Very few of us have the privilege of being able to live an idealistic life free of compromise. So, in my opinion, one of the most important aspect of free software is the right of users to be exposed to Free software. This entails not only producing truly (purely) Free software, but also the responsibility of us, the developers, administrators, consultants, and manufacturers, to raise the world’s awareness of Free software. Most importantly, this must be done with the long-term, “big picture” view in mind.
If I hadn’t acquiesced to using proprietary video drivers, I never would have gotten Linux running on my laptop. Unfortunately, I routinely have the need to view multimedia files which are encoded with proprietary codecs. This isn’t a choice of mine - if I had an option of getting files which only use Free technology, I would. But unfortunately, the only other logical option is to run a separate system, running Windows or Mac OS, and transcode everything. But I have an issue doing that. So, I do the best that I can.
In the world view, most people aren’t programmers. They aren’t going to actively seek out Free software, since they don’t receive most of the important benefits of it. Therefore, we as developers must make a concerted effort to raise the awareness level of run-of-the-mill end-users when it comes to Free software. Most importantly, for us, this means actively working to create fully functional replacements for proprietary software. However, the inherent problem is that most end-users don’t care whether they can see the source code of a program, whether they can modify it, or whether it’s Free. What they care about is whether it works or not. If the average person buys a computer with a DVD player, and wants to watch DVDs on it, they’ll use whatever software they need to do that. If Linux doesn’t do it, they’ll most likely use Windows or Mac.
The bottom line is that the average end-user doesn’t care about morals or Freedom or getting source code. Because they haven’t been shown the advantages of that. For the average user to care about software Freedom, they must be introduced to it. Most importantly, they must be introduced to the *power* of Free software, not its’ limitations. Ubuntu is a prime example of this - it’s easy, and does a *lot* out of the box.
My main point is the compromise is a good thing, with long-term objectives in sight. In order for Linux, or any other Free operating system, to gain significant share of the desktop market, it must WORK. It has to do everything that end-users expect from a new computer system, and do it without pain - out of the box. Limiting the software options of an end-user to those which are religiously pure will limit acceptance of that software to those who already share the ideals of Free software. Provide a *mostly* Free alternative (i.e. free where ever it is at all possible) which is functionally identical (or superior) to the common proprietary alternatives, and users will adopt. The more users that adopt, the more they will become aware of the concepts behind Free software. More importantly, each and every user that adopts will increase support for Free software, increase development capabilities, and decrease reliance on proprietary components.
This is an issue of critical mass, of momentum. At the moment, we are forced to make compromises by installing proprietary drivers on our otherwise Free GNU/Linux systems. As can already be seen through Dell, ATI, and other major vendors, when the installed user base grows, the reliance on proprietary software WILL shrink. As more people adopt Free operating systems, vendors will clearly see this trend, and will respond with Free drivers and Free alternatives to other proprietary software.
My cry to the Free software world is, therefore, that trading some of our religious purity for a larger installed user base, and greater public awareness, is ultimately in the interest of the greater good of Free software.