The Rise of the Free Software Movement: Freedom from Proprietary Control
Richard Stallman is an icon of the Free Software Movement, and the founder of the GNU Project, launched in 1984 to develop the free software operating system GNU. The name "GNU" is a recursive acronym for "GNU's Not Unix." Today, Linux-based variants of the GNU system, based on the kernel Linux developed by Linus Torvalds, are in widespread use. There are estimated to be some 20 million users of GNU/Linux systems today.
Stallman is the principal author of the GNU Compiler Collection, a portable optimizing compiler which was designed to support diverse architectures and multiple languages, as well as other programs for the GNU operating system. The compiler now supports over 30 different architectures and 7 programming languages.
Stallman is a recipient of a MacArthur Foundation "genius" award, among many other honors.
Multinational Monitor: What is free software?
Richard Stallman: Free software is freedom that respects the user's freedom. More precisely, it means you have four specific freedoms: 0. The freedom to run the program, as you wish. 1. The freedom to study and change the program's source code to make it do what you wish. 2. The freedom to redistribute copies. 3. The freedom to publish a modified version.
These are the same freedoms that cooks enjoy in using recipes. Imagine the outrage of cooks if they were told that, from now on, if you share or change a recipe, you'll be called a "pirate" and put in prison for years. I felt the same outrage when forced to use proprietary software in the 1980s, and that is why I started the free software movement in 1984.
MM: How is free software different than open software?
Stallman: The term "open software" was used around 1990 to mean systems made up of components that function together using documented standard interfaces--so that the user could choose from various options for each component. Most free software would qualify as "open software," but most "open software" of that epoch was proprietary (non-free).
Perhaps what you really wanted to ask about was the term "open source software." That term was promoted in 1998 by some who liked free software but disagreed with the ideals of the free software movement. They sought to make free software corporate-friendly by leaving out the ethical aspect and appealing to short-term practical values only.
They formulated their own different criteria for licenses, so a program can be open-source but not free, and vice versa. However, in practice, nearly all open-source software is free software, and nearly all free software is open-source. The real difference is in the philosophy, in the values. In the free software movement, we are aiming for freedom. They only say they want more powerful and reliable software.
MM: What are examples of free software? What is GNU/Linux?
Stallman: The GNU/Linux operating system is a complete software system, which consists of the GNU system plus Linux. You can install GNU/Linux on a PC (or various other kinds of computer) and do all the everyday jobs with it. We began the development of GNU in 1984 with the aim of developing a complete free system. By 1992 We had developed most of the system, but had not finished the kernel (one important component). At that time, Linus Torvalds developed a kernel called Linux and made it free software. Linus filled the remaining gap in GNU, and the combination, GNU/Linux, began to catch on. Nowadays many other programs have been added.
For other examples of free software packages, see the Free Software Directory.
MM: What kind of market shares have free software achieved?
Stallman: I have heard statements that tens of millions of computers are running GNU/Linux, but I don't try to keep track. The usage is hard to measure, since people are free to make copies and not required to report to anyone when they do.
It is a grave mistake to apply the term "market share" to the question. That term regards people, the users, as mere territory that the competitors fight over. That is disrespectful towards them. That term implies a commercial rivalry, in which all sides aim only for their own success, and no ethical issues are at stake. If free software were nothing more than that, it would not be worth your attention.
Free software is a campaign for freedom. We are not merely providing an "alternative." We stand for real change, not just a change of masters. Our software allows you to be the master of your own computer, because we don't impose anyone else as master over you. To interpret this in terms of mere commercial rivalry is to miss the point completely.
MM: What is copyleft? What is the reason for using the copyleft device rather than simply placing software in the public domain?
Stallman: A program in the public domain is free software: people are free to run it, modify it, copy it, and publish modified versions. They can also make these modified versions non-free. The result is that the developers of the free version may have to compete with improved non-free versions of their own work. That competition is one-sided, because the non-free version can absorb all the improvements made in the free version, but the free version cannot get the improvements made in the non-free version. It puts the free version at a disadvantage. Copyleft is a technique that I developed so as to avoid being at a disadvantage in this way. The technique uses copyright law to require that all modified versions be free just like the original. The main embodiment of copyleft is in the GNU General Public License, which is used by about three quarters of all free software packages. When a program is GPL-covered, you are free to publish a modified version, but your version must also be free, meaning that I can use your improvements just as you can use mine.
MM: Who programs free software?
Stallman: Aside from they’re being programmers, I can't tell you anything general about them. Anyone who wants to write a free program can do so. There is no central organization that they must join. We know there are on the order of a million contributors, but only a survey could find out more about them. Occasionally such surveys have been carried out; you would have to look for them on the net.
MM: What are the incentives for programmers to develop free software?
Stallman: The word "incentives" is misleading because it implies an artificial, extrinsic motivation. The question therefore presupposes that some extrinsic motivation is required. This is what the prevailing ideology encourages you to assume. In the case of software, it is ridiculous.
The most widespread motive for writing free software is to have fun. Programming is great fun. Building things is great fun, and millions of people build things as a hobby. The free software community has mobilized this widespread inclination into development of something that every one can use. That's because we only have to build something once, and then everyone can use it.
There are other motivations as well. The determination to live in freedom is an important motive for many, but not all, free software developers. Other motivations I recall encountering include being admired, gaining a professional reputation as a capable programmer, gratitude to the community, and hatred for Microsoft. In some cases, money is also a motive. However, I doubt anyone writes free software for money alone, hating his job. The developers are surely all having fun.
MM: How do free software programmers make a living?
Stallman: They have jobs, I guess. Most free software developers are part-time volunteers, and don't need to be paid for this. Some of them have jobs as programmers, probably developing software for clients' specific uses (most software development is of this kind); some do other sorts work.
There are also people who are paid to write free software full time. Some work on projects at universities or companies. Some have their own businesses, where they adapt certain free software to the needs of various clients successively.
MM: Why are IBM and other companies paying people to program free software? How do these companies hope to make a profit? Are they undermining or assisting the free software movement?
Stallman: I cannot tell you what they plan or want. What I can tell you is that these programs are a contribution to our community. We don't judge a program by who wrote it, we judge by whether it respects our freedom and whether it is useful.
MM: How has Microsoft responded to the growth of free software?
Stallman: Microsoft is actively trying to kill off free software, primarily by patenting many software ideas. Allowing patents on software ideas is a foolish policy which the U.S. stumbled into by accident, and since the late 1990s the U.S. government has been trying to foist this mistake onto the rest of the world.
Other methods Microsoft is using to attack free software include the imposition of secret file formats and protocols, which they hope we will be unable to figure out.
Stallman: You can guess as well as I can. My guess is that they see us the way Rome saw Spartacus.
MM: Can Microsoft actions threaten the integrity of free software, by capturing its products and making them proprietary, by imposing proprietary standards on the Internet, or by other means?
Stallman: When free programs are copylefted, nobody can legally make non-free versions of them. But Microsoft has no need to do that. It can afford to pay programmers to write, from scratch, whatever it wants. It does not care much about compatibility with existing software, since it expects to impose its own incompatible protocols and formats as de facto standards.
MM: Is this happening?
Stallman: It is starting to happen, but we expect the main attack to be through patents--and not only from Microsoft. A recent study found that Linux, the kernel of the GNU/Linux system, was covered by some 280 US patents. (More precisely, each of these patents covers an idea implemented somewhere in the hundreds of thousands of lines of code of Linux.) I would not be surprised if in the entire GNU/Linux system there were 10,000 ideas covered by patents, but nobody knows. Many of these patents are absurd, and might be overturned by a court, but even one that gets through and detonates could destroy a part of the system--either a large part or a small part.
MM: Can free software potentially displace proprietary technologies altogether? Is this a worthwhile aim?
Stallman: The word "technologies" includes many things that could hardly be done by any software. You can't replace antibiotics or the fuel cell with free software, or with non-free software. So let's look at a narrower question that makes sense: can all software be free, and should it?
Non-free software tramples your freedom. It is distributed in a way designed to keep users divided and helpless: divided because they are forbidden to share, and helpless because none of them can change the software or even verify what it does. It's unethical and it should not exist.
No program is inherently non-free. It's clear that we can develop free software for people's needs, because we've already done the most important jobs. Our community's resources of volunteers are constantly increasing, and since governments have always paid for a large fraction of software development, they can just as easily fund free software henceforth. Twenty years ago, nobody could be sure that the social system of free software would work. Today it is simply a matter of whether we have the will to insist on freedom.
MM: Is free software really innovative, or is it really just mimicking proprietary programs?
Stallman: The free software movement started from zero 20 years ago, and non-free software had a big head start. So most of what we have done is replace non-free programs. However, there are innovative free software packages. Since I consider innovation less important than freedom, I don't try to keep track of innovations in free software. Nonetheless, just now I can think of Emacs, GDB, Perl, Python, TeX and Apache. I believe the World Wide Web was first implemented as free software.
MM: Can the free software approach be translated to other technologies? Are there unique features of software development that make it more amenable to the free approach?
Stallman: Software is a completely different issue from physical technology because it is mathematics that runs on a universal machine (the computer). The only equipment you need to develop software is a computer, and the same computer can copy it for you. For other fields of engineering, you'd need to build a factory. Designing the product would be far harder, too, which is why physical products are nowhere near as complex in their designs as today's software packages.
There are no copiers for physical objects, so the issue of freedom to copy does not arise. Perhaps some of the practices of free software development could be useful in physical engineering fields, but the ethical problem of non-free software has no analogue in them. Where it does exist is in other fields of useful practical writings, such as educational materials and reference works. They too should all be free.
© Multinational Monitor July-August 2004