A commenter on one of my articles recently asked: "Why is it that true believers feel the need to replace every last proprietary app?" He continued: "VMware, Skype, and Google Earth are best-of-breed and free-as-in-beer."
Over the last year or two, such sentiments -- often rudely expressed -- have become increasingly common in the free and open source software (FOSS) community. But, when you think for a while, they miss the point. If free software is to achieve its goal of guaranteeing that users can control their computing, then a completely free operating system is a basic necessity. An almost completely free operating system is both short-sighted and not enough to give users the control of their own computers that is supposed to be FOSS's ultimate goal.
Focusing on short term advantages
In one sense, the idea that all we need is a mostly free operating system is a direct indication of where FOSS is today. Most types of software needed for productivity and leisure computing are now available as FOSS applications, and those that aren't, such as Flash, or video or wireless drivers, are available as free downloads with proprietary licenses. This state of affairs means that, if you don't care about licenses, for the last few years you have been able to run most GNU/Linux distributions without any inconvenience. After so many years when running GNU/Linux meant giving up some functionality, you can perhaps understand why users might be so relieved that the situation has changed, even if it is not ideal.
However, this attitude is only defensible from certain points of view. If you are in the open source part of the community, then your interest in free software is that it allows the development of better software more quickly. But if a proprietary piece of software is already "best-of-breed," then why should you bother developing a FOSS equivalent? From this perspective, the logical course is to use the superior software, regardless of the license.
Similarly, if your interest in GNU/Linux ends with it being available gratis -- "free-as-in-beer" -- then you are unlikely to care about free licenses. If software is available at no cost, but has a restricted license, then you will undoubtedly welcome it with the same enthusiasm as anything released under the GNU General Public License.
The most obvious trouble with these viewpoints is that they are short-sighted, even in their own terms. The idea that focusing on quality and ignoring licenses is the best policy is disproved by the well-known story of how Linus Torvalds chose BitKeeper, and pieces of proprietary versioning software for kernel development, only to have to scramble for a replacement when the free version suddenly became unavailable. The same vulnerability is present in software that is simply gratis. The fact that a change in license hasn't happened yet with a particular piece of software is no guarantee that it won't.
After all, according to the typical proprietary end-user license agreement, you do not own the software -- you are simply allowed to use it under the terms the company chooses to offer.
Moreover, should the manufacturer discontinue the software, your only recourse is to keep using it until updates to your system make it unusable. That was what happened to Apple users of Internet Explorer. The fact that users got a better default browser in Safari was purely accidental; that was not Microsoft's intention, and they were still inconvenienced.
Securing free computing
By contrast, when you use free software, such problems do not exist. Under the terms of the GNU General Public License, the most popular FOSS license, the distributor cannot change the licensing terms on you, and, should development on the software stop, you or someone else -- perhaps someone you hire -- can start it up again. Although free software licenses do not talk about ownership, in effect, that is what they give you, subject to very nominal requirements to preserve notices of authorship and the license should you redistribute the software. These restrictions are so mild and so easy to meet that most users are unaware of them and fulfill them without any special effort.
However, insisting that free software continue on to its logical end is not just a matter of short-term convenience. It is also the only way to guarantee that you control your computer. Manufacturers of proprietary software often worry about whether using FOSS will affect their products, but the reverse is also true: the right piece of proprietary software can affect an otherwise free system. For instance, should a proprietary video driver be withdrawn, perhaps because it is for an older card, then you might lose the ability to take advantage of 3-D acceleration, or even to use graphics at all. On a lesser scale, you might lose your ability to run certain programs, or to use certain formats.
Nor are these examples simply speculation. Such problems occur all the time in the proprietary software world, leaving users no choice but to endure, buy new software or hardware so they can run alternatives, or to try and stage some sort of consumers' revolt, as happened when Adobe decided -- apparently for market reasons -- to stop supporting FrameMaker for the Mac. But the point is that, if your system consists entirely of free software, such surprises are less likely. Lacking a profit motive, free software tends to continue support for software and hardware long past the last user.
But product cancellations are not the only problem with proprietary software. Digital restrictions management that prevent legitimate actions such as reinstallation or backup, forced updates, the unauthorized collection of information about your computing habits -- these are all increasingly common and well-documented characteristics of proprietary software. Each of them reinforces the basic fact that, when you use proprietary software, you are not in control of your computer.
Because free software not only rejects these activities but has source code available for anyone's inspection, you can be sure that, on a completely free system, they do not take place. But, if you are running any proprietary software on your system, you lose that guarantee. You do not need to be paranoid to conclude that, if you value your freedom -- that is, your control of your own computer -- that the development of a completely free operating system is in your own interests.
Sprinting to the finish line
Unfortunately, as the business logic of open source spreads, such considerations seem to be increasingly neglected. For example, over the last couple of years, the GNewSense project, with its goal of producing an entirely free distribution, has documented that even the Linux kernel depends on proprietary firmware for some drivers. Yet, instead of trying to change the situation, many users prefer to jeer at GNewSense's reduced functionality in the name of its goal.
Similarly, when Alexandre Oliva of the Free Software Foundation - Latin America tried to get Fedora to use his linux-libre kernel -- a kernel with all the proprietary blobs removed -- it was considered only as a possible option, rather than the distribution's default kernel. Even Debian, whose members like to think the distribution is the freest of all, have yet to reach a consensus on the subject of proprietary firmware, although the issue seems simple enough.
Large organizations with a long history tend to resist change, so perhaps such reactions should only be expected, even if they run contrary to the organizations' alleged ideals. All the same, if the same effort expended in denying the need to finish the goal of free software was directed toward filling the last remaining gaps, then we might see some rapid progress.
The Free Software Foundation's high priority page is overdue for updating, but it still lists the most basic needs, including 3D video drivers, Flash players and tools, a free bios, a full free implementation of PDF, and a clean-room replacement of Microsoft's .NET. Considering the hundreds of companies involved in FOSS and the billions of dollars they realize from it, I do not think that asking them to finish the effort from which they benefit so much would be an unreasonable request. Probably, most of these goals could be reached in no more than a year.
Of course, making GNU/Linux -- or any other operating system -- completely free would not automatically eliminate proprietary software, which is Richard Stallman's declared goal. But it would make GNU/Linux a complete alternative and an equal competitor at last.
The goal is eminently reasonable. The only question is whether the community has the will to pursue it.