Liberating cyberspace

Published : Feb 27, 2009 00:00 IST

RICHARD MATTHEW STALLMAN has visited India several times during the past eight years or so and given lectures in many parts of the country. He started the GNU (a recursive acronym for GNUs Not Unix) project in September 1983 to create software that gives users the freedom to use, share, modify and redistribute. Though he was alone in this task at the beginning, today there are tens of thousands of programmers worldwide helping to create such software.

The GNU project has inspired a large number of projects for creating free software and has led to the development of a variety of applications from text editors to office suites, browsers, e-mail clients, audio and video editors and even 3D animation tools. This is beginning to challenge large companies that create proprietary software. GNU/Linux, formed from the kernel (core) Linux developed initially by Linus Torvalds and tools such as compilers and editors developed under the GNU project, is the most popular free operating system and is being increasingly adopted by governmental and other agencies in many developed and developing countries.

In India, free software has been mandated for government purposes by the Government of Kerala, in its information and communication technology (ICT) policy, and has become part of the syllabus of State-run schools. Several organisations in the country use free software, including the Life Insurance Corporation of India and the Electronics Corporation of Tamil Nadu (ELCOT).

The new culture of cooperative production of goods of value, though the goods are virtual, is leading people to explore the possibility of an economy where production will increasingly become peer-to-peer and could take over from the capitalist mode of production eventually.

Stallman was in Thiruvananthapuram to participate in the International Free Software Free Society conference in December 2008. This interview was done through e-mail after his return to the U.S.

Twenty-five years after you launched the GNU project, how do you see its progress? What do you feel about its achievements and failures?

The GNU project has succeeded we developed the free GNU operating system and made it work well enough for millions to use. Of course, not every specific programming project that we undertook was a success, but the overall project succeeded. It succeeded so well that it has inspired thousands of other projects to develop and release free software, which is why a GNU/Linux system distro today usually contains thousands of application programs.

However, the GNU project was just the beginning of the free software movements mission. Our mission is the liberation of cyberspace. That wont be finished until proprietary software disappears and all computer users are free.

The free software movement has a long way to go. Most computer users do not use GNU/Linux or any free operating system.

And most GNU/Linux users have installed some non-free software, often drivers or applications. And even those who have not knowingly installed any non-free software may run it unknowingly through their browsers. To change all this, we have a lot of work to do, and we need your help.

What do you think are the major threats today to the freedom that you have been working for?

One threat is that of hardware, whose specifications are a secret. It is hard to write free software to talk with a device if the manufacturer wont tell you how to use it.

Yet another threat comes from laws that forbid some free programs. Software patents are an example of such a law. India is currently trying to allow software patents through a sneaky route.

Another threat comes from the way some proprietary software companies put their software into schools where they are taught to students, thus leading students and society down the path of dependency.

Lack of drivers for some of the hardware such as display cards and printers has been one of the problems we face when we try to use free software. How do you see this problem? Has there been any change in this situation during the last few years?

We have made substantial progress. Around three years ago, there were no WiFi devices in production that worked without non-free software. Now there are several; see the FSFs hardware resource pages for a list of them.

None of the best 3D graphics accelerators worked with free software; now only nVidia refuses to cooperate with our community. So spread the word: dont buy nVidia graphics accelerators.

We have also made progress in removing the firmware blobs from Linux; the result is Linux Libre, a branch of Linux, which is once again free software.

We are now on Version 3 of the GPL. What were the main reasons for introducing a new version now?

Version 3 of the GNU General Public Licence has around 10 major changes and dozens of minor ones. See the rationale document in https://gplv3.fsf.org/ for explanations of every change.

The most controversial change in GNU GPL Version 3 is to protect users freedom against tivoization. This is the practice of building a physical product so that it refuses to run modified versions of the program. GPL Version 3 blocks tivoization by requiring the products distributor to offer you whatever information you need to install your modified versions and make them run.

Torvalds said he rejects GNU GPL Version 3 because he approves of tivoization, because he does not agree that users deserve the freedom to change their own copies of software.

Can you tell us something about the history of the GPL, how it came to be written and how it has evolved?

In the early 1980s, I came across the peculiar licence of TeX [a program for typesetting documents], which permitted modified executable versions to be distributed without requiring the accompanying source to be made available. As a result, some modified versions of TeX were available only as executables.

Thinking about this led me to look for a way to require that redistributors make source code available with the binaries. I came up with the basic idea that you can trace through various versions of the GNU GPL.

Since Emacs was the only GNU code that was worth releasing at the time, I wrote this up as the GNU Emacs General Public License and released GNU Emacs that way. Later on, I copied the licence into GCC [GNU Compiler Collection] as the GCC General Public License, and so on into other programs.

Then I realised that since the licence of Emacs and the licence of GCC were not identical (one said Im the licence of GNU Emacs and the other said Im the licence of GCC), perhaps they did not permit merging code between these programs. That was supposed to be permitted. So I developed the GNU General Public License, which did not mention the program by name, and would apply to whatever code was released under it. Version 1 of the GNU GPL appeared in 1989.

Could you tell us the story of how you hacked the printer driver at MIT [Massachusetts Institute of Technology] and how you decided to create software that gave users freedom. Could you please repeat it?

During the 1970s, at the AI [Artificial Intelligence] lab at MIT, we used a free operating system that had been developed by the labs system hackers. When I was hired in 1971, my job was to improve the system. At that time, all the software we used on our computer was free.

In the mid 1970s, Xerox gave us the Xerographic Printer or XGP. This was like a laser printer except that instead of a laser it used a one-dimensional CRT [Cathode Ray Tube]. It often got a paper jam. It was not very fast but its paper rolls were small, so it ran out often too. To make the operation smooth, I added two features. First, the system displayed a message on your screen whenever the printer finished your print job. Second, whenever the printer ran out of paper or got jammed, the system displayed a message on the screen of each user who was waiting for printing.

Both features involved communication between the dedicated PDP-11 computer that ran the printer and the main PDP-10 computer. Both were possible because we had the source code of the printer control program that ran on the PDP-10.

In 1978 or so, Xerox gave the AI lab a newer printer, the Dover. It was the first model of a laser printer, actually a modified copier.

We soon noticed that it was very fast and printed with very high quality, but often got paper jams. Its paper magazine was large, but with such fast printing it could run out of paper often too. So I thought of adding features similar to the ones I had implemented before. However, there was no way to do this because we had not been given the source code for the printer control software, which ran in an unusual computer called the Alto. Since the road was obviously blocked, I abandoned the idea.

Then I heard that someone at CMU [Carnegie Mellon University] had the source code for this printer control software. Later, I was visiting Pittsburgh for some other reason, so I took advantage of the opportunity to go to that persons office and ask for a copy of the source code. According to the customs of our community, he should have shared it.

He refused to give me a copy, saying that he had signed a non-disclosure agreement. This made me angry, and since there was no way I could change his mind or punish him, it rankled. The anger made me reflect at length about the ethics of what he had done.

I concluded that when he signed that agreement he committed the inexcusable wrong of betraying the rest of our community. I vowed that I would never sign a non-disclosure agreement for generally useful technical information, such as software.

This one series of experiences was not the sole and whole basis of my views about free software. It combined with a number of other experiences, both in our free software community and with the proprietary software that we increasingly saw around us as the 1970s went on.

You stated that all the software you were using at MIT in the 1970s was free. What licence were they under? Or were they in the public domain?

You are a graduate in physics, how did you then come into software?

As a student, I was interested in many subjects, but there was a limit to how many courses I could take. So I decided to take classes to learn math and physics, while learning programming by doing it. (I chose to officially major in physics rather than math only for reasons of specific university requirements this did not affect what classes I took.) In my first year of college, I was hired by MIT as a programmer, giving me a great opportunity to learn.

Over the years, I found that doing real, useful work in programming was more fascinating than merely studying physics. After graduation, I did one year of graduate school in physics, then dropped it and focussed solely on programming.

You have been coming to India for several years now. How do you see the progress of free software in the country?

I see substantial progress in some government agencies, and in the schools in some States. But, despite this progress, most Indian computer users have no idea of what free software is or what the GNU/Linux system is. There is a lot of work for Indian free software activists to do.

The free software movement has seeded freedom movements in other areas, such as Wikipedia and Creative Commons. How do you see these movements? What is the FSFs stand on them?

The FSF is concerned with the useful works that you need in order to use a computer: software, documentation for software, and text fonts for display and printing. Beyond that, the FSF does not have a stand, but I do; I believe all information works whose social purpose is to do a specific functional job should be free (in the sense of freedom).

So I am a strong supporter of Wikipedia, and of free dictionary projects. I support projects to develop free textbooks.

Regarding art and entertainment works, works whose social purpose is simply to make an impact on the user, I think the user is entitled to one essential freedom: the non-commercial redistribution of exact copies.

To this extent, I am in favour of releasing art and entertainment works under any of the current Creative Commons licences, since all of them give this freedom.

But Creative Commons fails to advocate this freedom: it does not say that users deserve this freedom, only that it provides licences by which developers can do what they wish. At the level of philosophy, I think Creative Commons falls short.

How well has the FSF been able to stop GPL violation? Do you see this as a problem?

We have been pretty effective in ending known violations: over 20 years, we have cleared up hundreds of them, and only this month have we encountered a violator (Linksys) that made it necessary to actually sue them.

Thank you Richard, for spending so much time with us and answering our questions.

It is my pleasure to help the cause.

(This work is published under the Creative Commons Attribution No Derivatives (by-nd) 2.5 India licence. Details of the licence may be seen at https://creativecommons.org/liceses/by-nd/2.5/in)

Richard MatThew StallmanBorn: March 16, 1953, in New York City.

Education/career: 1971: Joined Harvard University and at the same time worked at the Artificial Intelligence laboratory of the MIT.

1974: Graduated in physics; subsequently worked at MIT.

1984: Quit MIT to work on the GNU project.1985: Launched the Free Software Foundation.

Mid-1990s: Started advocacy for free software and the campaign against software patents.

Awards: MacArthur Fellowship (1990)

The Association for Computing Machinerys Grace Murray Hopper Award for pioneering work in the development of the extensible editor EMACS (1990)

The Electronic Frontier Foundations Pioneer award (1998)

The Takeda Techno-Entrepreneurship Award for Social/Economic Well-Being (2001)

The Fundazione Pistoletto Prize (2005)

Membership: Honorary life membership of the Chalmers Computer Society (1986)

The U.S. National Academy of Engineering (2002)

Sign in to Unlock member-only benefits!
  • Bookmark stories to read later.
  • Comment on stories to start conversations.
  • Subscribe to our newsletters.
  • Get notified about discounts and offers to our products.
Sign in

Comments

Comments have to be in English, and in full sentences. They cannot be abusive or personal. Please abide to our community guidelines for posting your comment