23 Nov 2004 17:51
The man behind GNU/Linux -- not just Linux, he stresses -- is relentless in his quest to help users worldwide free themselves from the shackles of proprietary software.
He speaks three languages -- English, French and Spanish -- and has also studied Bahasa Indonesian. But the language he is most famous for is one that has helped create a platform that has touched communities and nations worldwide: the GNU/Linux operating system.
Richard M. Stallman, 51, is one of the industry's most controversial figures, known for his strong and very vocal convictions that the existence of proprietary software is perilous to software development.
Stallman was recently in Singapore to speak at an event organised by the School of Information Systems at Singapore Management University. He caught up with ZDNet UK sister site CNETAsia and explains why the free software movement should not be confused with the push for open-source applications, and how writing software is much like creating a musical symphony.
Q: What's your impression of Asia's take on the free-software movement?
A: Most people everywhere have never come across the idea that there is something wrong with proprietary software. They accept it as normal and it has never occurred to them that it's depriving them of human rights. Human rights that are appropriate to people using software, that is. And that's because they've been encouraged to think it's normal to be kept divided and helpless.
Once I gave a speech and someone in the audience came up and said: "I've been working with GNU/Linux software for years, and this is the first time I've heard anyone tell me that the whole point is freedom."
And of course you'll notice that most people who talk about Linux software treat it as if it were just another technical alternative, nothing deeper than that. So my task is to tell people about the issue of freedom that they usually won't hear.
Maybe we're having a little more success in spreading the word now, at least, I hope so.
You're very particular about referring to it as free software, as opposed to open-source software. Why is that?
Don't say open source. They [the open-source community] have done a good job of putting their name on what we do, which is what I take exception to.
The free software movement has been working for your freedom for 21 years now and after we've had some success, after we had developed the GNU/Linux system and people were starting to use it in the millions, some of them [the open-source community] in fact, it can be many of them didn't care about freedom. They were only interested in getting powerful, reliable, convenient software.
So in 1998 they made up the term 'open source' and used it as a way to talk about free software and not mention freedom, which is part of why so many people who use these software have never heard about freedom and why we have so much work to do.
If you give people freedom today, but they don't appreciate it as freedom, then they will lose it because they won't make the effort to keep it. Freedom doesn't defend itself automatically. If you want to keep your freedom, you have to be ready to defend it. So we now have a large community, tens of millions of computer users who now more or less have freedom, but they don't know that it's freedom and don't know what freedom means, and have never thought of it in those terms.
And that means we cannot expect them to defend their freedom, and that means that our community's future is not safe. It doesn't have a deep foundation.
The ideas that the open-source people talk about can encourage people to want to use free software when it works very well. But it won't show them why they should insist on free software.
Many people and organisations are switching to free software now because it works well, because of technical advantages. But if we want freedom, if we want to establish freedom and maintain it, we need to go beyond that into recognising the value of freedom. Free software, regardless of who the user is -- they could be an individual, a company, government or a school -- means software that respects the user's freedom.
So what is free software?
There are four essential freedoms that define free software.
These define free software… free software is defined in terms of freedom for the user.
When you say distribute, do you mean with a financial value on it?
That's up to you. Either way goes. You could give away a copy, or you could sell a copy. In fact, you've got to be free to do both. And the buyer has the freedom to choose whether or not to buy. You're free to buy it or not.
And you have nothing against people who sell it?
Not at all… in fact, I did that for a part of 1985. I was getting enough money to live on from selling copies of GNU/Emacs. I stopped in Oct 1985 because we started the Free Software Foundation, and it seemed appropriate for the foundation to start selling the copies instead.
So the foundation raised a lot more money from selling both the source codes and manuals. They both give you the same four freedoms. We sold tapes and later CDs of the source codes and the manuals, and brought in hundreds of thousands dollars a year this way.
You compared the works of Beethoven and Mozart to software development in your speech.
I made a specific analogy between software and symphony which is a useful analogy in certain ways. The analogy is that they're both large collections of details, but they embody ideas… and you combine many ideas to make one piece, and even more different ideas to make one program.
Imagine if music can be patented, like a patent on a technique or a chord progression. Then imagine you want to write a symphony without being sued. Beethoven is a great composer because of his ability to combine many known music customs and create his own unique symphony. Nobody can re-invent music from ground zero, likewise in software development. It's an unfair challenge for anyone to put that requirement on anyone.
A software program can contain thousands of ideas, and if only 10 percent of those are patented, it is harder to develop software safely without breaching the patents. That hampers improvements to software. Users will find themselves like Gulliver, being held down by different ropes.
Software developers share the same interest -- to be able to develop freely without having to worry about patents. Sustainable software is only found in free software.
So if you composed a piece of music, would you expect the same things of it that you do of the free software movement?
Absolutely. I put on a licence on anything that I publish that gives the kind of freedoms that I believe is the ethical requirement for that kind of work. If it's a program or a manual or a reference work, something that's useful for doing a practical job, then I make it free with the four freedoms.
If it's an essay of opinions, I don't think it's a socially useful thing for people to rewrite other people's opinions. I put on a notice giving permission for verbatim copies. If it's art, I'll probably make the art free as well, though I don't feel all art has to be free in the same sense as a software, manual or encyclopaedia has to be free.
There has to be a minimum freedom that everyone must always have for any kind of written or artistic work, and that is, the freedom to non-commercially redistribute exact copies. It's tyranny to take that away, and only a police state could succeed. You can see the worldwide campaign for the war on copying gradually being ramped up… more and more harsh punishment, more and tighter restrictions on what people are allowed to do. And I think that's completely wrong and it has to be stopped.
For works that you use for a practical job, those have to be free, you have to be free to publish a modified version of those, even commercially. Because that's the only way that they become fully useful to society… that's when people are free to take advantage of them in all the useful ways.
Tell me about the GNU GPL (General Public License). Are you still working on it?
Yes, we're slowly working on thinking about what to put into GPL version three, but not with a great sense of urgency.
What's not clear about the GPL now?
It's not so much as in things that are not clear as a matter of trying to handle some issues differently. One issue that we might want to handle differently is the question of using a modified version publicly.
Usually, when you install a program on your computer and you run it, you're using it privately. There are certain kinds of use that are public, for instance, putting it on a server and letting the public get access to that server and run that program. So our idea is that, it's legitimate for a developer to say, if you make a modified version and you put it into public use, then you have to make the source codes available to those who are using it.
There was some confusion around that, wasn't there?
There is no confusion about that. GPL version two doesn't require this, it's very clear. But we're thinking that it might be a useful requirement to have for some programs so the idea is to design a way that a developer can optionally require this when using GPL version three.
The way we're thinking of is, if you design the program so that it has a command that the user can use to download the source, then whoever makes a modified version and installs it publicly has to keep that working and provide the source code of the version in use.
And you won't make an umbrella rule that requires everyone to do that?
No. This is because that would mean a big change for existing programs and we don't want to do that.
We might also put in some kind of additional clause to take away rights from those who attack the community with patents. But we're not sure what kind of clause would be legitimate and effective. So we haven't done it yet.
We might put in something that says you can't put the software into a kind of DRM signature system that won't let the users run modified version. So, if you're distributing it in a machine that requires signatures to run the program, then you've got to give the signature keys to the users so they can store their modified versions so it would run. This would essentially make such a scheme futile, but that's the whole point: people should be free. But again, this is a possibility and we're not sure we're going to do this.
I should point out that the GNU GPL is just one of many free-software licences. Any licence that says you have these four freedoms is a free-software licence. Now, there are two large categories of free-software licences: the copyleft and the non-copyleft licences. The copyleft licences say that all modified versions must also be free and they must be under the same licence. The GNU GPL is an example of a copyleft licence.
There are also free-software licences that are not copyleft, and those permit non-free versions of the program. Now, I think it's a mistake to permit that in most cases. Why should we cooperate in any way with resistance of non-free software? Why should we let our code be used in any non-free software? The way I see it, if someone else is not going to share with you and me, then why should he be able to use our code if we're not going to be able to use his codes? The GPL says, you're welcome to join us in sharing… but you can't just take and privatise, and then use our code to subjugate people.
Story URL: http://news.zdnet.co.uk/software/0,1000000121,39174878,00.htmCopyright © 1995-2008 CNET Networks, Inc. All rights reserved
ZDNET is a registered service mark of CNET Networks, Inc. ZDNET Logo is a service mark of CNET Networks, Inc.