Search This Blog

Wednesday, 25 November 2009

The Face to Face with RMS interview

ref:
http://www.linuxforu.com/views/face-to-face-with-rms/

Face to Face with RMS
By : Swapnil Bhartiya

It was one of the rarest opportunities to spend some time with the man I’ve always looked up to since I migrated to GNU/Linux systems. The father of the free software movement, Richard M. Stallman was in Delhi for three days, and during the time I spent with RMS, we discussed various topics that helped me get to the bottom of why ‘Free Software’ matters so much. This frank discussion with RMS also covers topics like the entire confusion created around patents and copyright, what a sensible government should do, why free software matters for an enterprise as well as a developer and what will happen to the free software movement after RMS… though we wish him to live another 100 years. So read on…

Chilly Pepper: This is the first interview in which RMS has responded to a recent blog post by Linus Torvalds, where the creator of the Linux kernel has criticised the father of the free software movement.
I would like to start off with what free software is all about, according to you?

Free software means software that respects the user’s freedom and the user community. Proprietary software traps the user’s freedom and divides the user, leaving him helpless. They are divided because they are forbidden to share the source code. Helpless because they don’t get the source code; hence they can’t change the program and they can’t even verify what it is doing to them. Free software respects that and there are four essential freedoms that a user must have.

Zero is the freedom to run the program as you wish. Freedom One is the freedom to study the source code of the program and then change it to make the program do what you wish. Freedom Two is to help your neighbour, which means to make exact copies of the program and distribute it to others when you wish. And Freedom Three is the freedom to contribute to your community, which means distribute modified versions when you wish.

Now, this has nothing to do with the details of what the program does and how. It’s about what you are allowed to do with the program. So, if one of these freedoms is missing, or partly missing, then the social system of a distribution is unethical, and that makes it proprietary software. So, that software should not exist, because every time someone uses it, it becomes a social problem.

To whom does free software matter?

It matters to everybody who uses software. So, if you have a computer these freedoms are important to you and you deserve free software.

Is there any particular reason why free software makes more sense in a country like India?

I don’t think so. I think freedom is essential for everyone. The only country where free software doesn’t matter is the country where nobody uses computers.

Why is it important for governments?

All users of software deserve the four freedoms and that includes government agencies. However, in their case it’s not just what they deserve, it’s their duty, it’s their responsibility. Because the government has a responsibility to maintain its sovereignty, i.e., control over what they do. So a government agency that does computing has a duty to maintain control over its computing, which means it must use free software.

What are the kinds of relations that exist between the governments and the free software community around the globe?

It depends on which government—they are not all doing the same things. Some governments have explicitly adopted a policy of moving government agencies to free software. These include Venezuela, Ecuador, apart from others who are migrating to free software though they don’t have a formal policy.

Then there are some governments like the US government that has no pride, no ethics, and basically just sells out to multinational corporations. And then there are some governments that are very concerned about letting those corporations have power and try to resist it. And while doing so they also defend their citizens from those corporations.

And what about education? Now there are two aspects to that: using free software in the IT infrastructure of schools, as well as getting it into the curriculum.

Well, regarding the administration of the school, they deserve to use free software just like everyone else. What is especially important is what software they teach students. Because schools have influence over society and they have a social mission—which is to teach the next generation to be good citizens of a strong, capable, independent, cooperating and free society. In the field of computing, this means that their responsibility is to teach students to be users of free software and to appreciate and applaud the freedoms of free software.

If a school is teaching proprietary programs, that means it is selling dependency to the next generation, directing them under the power of a particular company. This is something schools must never do. In addition, some students are people who will be fascinated with computers and will learn to be great programmers. When they get interested in programming, which is usually between the age group of 10 and 13, they want to learn how the software works, and then they want to start changing and improving it. That is how they learn to be great programmers. So, if the school uses free software, the students have the opportunity to learn. If the school uses proprietary software, children don’t have the opportunity to learn, because proprietary software is an enemy of education, it’s opposed to the spirit of education. And thus, it doesn’t belong in a school.

Do you think the training cost is one of the concerns? If you look at the education system, it needs investments to train teachers on the new systems?

Well yes, in order to get out of a path that is leading you to a bad destination you have to make an effort. And this is a kind of investment, social investment. Even if you ignore all the freedom and the community, the cost savings alone are worth making that investment. That is the smallest and most superficial part of why you should do it.

However, you will notice that the proponents of proprietary software encourage people to think short term, because if you think very short term it might seem that switching to free software is a lot of work and more expensive. It seems more expensive because you have to train some people at first. But that is a one-time expense. Once schools start graduating people who know free software there is no shortage of people. So, this is only a short-term expense and, therefore, those who are trying to defend proprietary software are trying to encourage a very short-term way of thinking.

How much sense does free software make to the enterprise segment?

Well, if you are running a business, you ought to want to have control over your computing, so you should insist on free software. Businesses get the benefits of the four freedoms just like everyone else. Not only that, there is a side effect. The support for free software is a free market. In case of proprietary software, only the developer has the source code, so if there is a bug, only the developer can fix it and thereby support is a monopoly. This means that support is usually expensive and bad. But with free software that support is available from the free market, so businesses get better support for their money. And any time they are not satisfied with their support provider they can switch to another.

What about developers who while using a lot of free software in the backend, release their products as proprietary software?

Well, that is unjust. Any proprietary program means that there is a user who doesn’t have freedom. There is no excuse for this. Users should refuse to get subjugated in this way. They accept it because of the short-term thinking—”I want to do this now, and the only way I can do this now is to let this developer have power over me.” So, what is to be done? Well, that depends on whether I am thinking short-term or long-term.

The free software movement has made it even easier to choose freedom. When I started the movement 25 years ago, the only way I could have freedom was through developing an operating system and that was going to take years. If I were thinking short term, I would have said: “Oh, it’s so far ahead. I give up!”, and I would have let the developer of the proprietary software have power over me the same way everyone else was doing. But instead I thought long term, and I thought: “Yes, it would take years, but it is worth it!” Today, we have free operating systems, we have thousands of free applications, and as a result, choosing freedom doesn’t require you to work for many years any more. Now, at most, it requires an inconvenience every so often.

But why should developers be working on free software?

I am not saying that everybody should develop free software. If you don’t feel like developing free software then you don’t have to, because lots of other people will. I certainly don’t want to pressure anyone into spending his time writing free software if he is not interested in doing so. But what you should not do is release proprietary software, because that is denying freedom to somebody else. It is not legitimate and is unacceptable for anyone to do that. So, if you are developing software to release, you must make it free software. But you don’t have to develop software to release it.

Now, we should know that most people who are paid to write software are writing custom software. There is a particular client that wants a particular program, and he is paying them to write it. This client should, of course, insist on receiving the product they paid for as free software and that should be capable of running on a completely free platform. Because, otherwise, they are paying to lose their freedom. They still have to pay some people to write solutions, because this is not something people would want to volunteer for otherwise. So, companies have to pay and this means that most people who get paid to program free software won’t change things much. It may increase their productivity somewhat, but it won’t change things much.

There’s been a lot of confusion between free software and open source. Would you like to say something about it?

Once Linux was put together with the GNU operating system in 1992 to make a complete free operating system, people started distributing the GNU/Linux operating system and telling friends about it, and they were mainly techies. People accustomed to judging software in technical terms, recommended the system to other people looking at the practical advantage of GNU/Linux systems and they did not mention these ethical issues.

Meanwhile, we in the free software movement were talking about these ethical issues. Some people listened to us and others listened to them. So during the 90s, a split, an argument, arose within the community between the people who valued the freedom and community above all and the people who only valued practical convenience.

In 1998 this group, which valued only superficial practical values, chose the term open source as a way to avoid mentioning or alluding to our ideas of freedom. Because that term had never been used, they could choose whatever idea to associate with it and leave out other ideas they did not want to mention. That’s what they did. Ever since then, free software and open source are two fundamentally different philosophies based on different ideas of what is important.

So, the difference between the two philosophies is not just the detail, but goes down to the root. We have some criterion for free software, which is actually the criterion for the licensing and distribution of the program. There is also a definition of open source that has a criterion of how a program is licensed and distributed. So, in practical terms, they come out fairly similar. As far as I know, all free software is open source and nearly all open source programs are free software. But there are some open source programs that are non-free, and the reason is that they interpret their criterion for licensing in a way that is little bit more lax. So, there are some licences that they have accepted, but we have not.

The ordinary public uses the word open source…

Well, that depends… Don’t simply assume that, and don’t declare the total defeat of the free software movement, because that is not true. You just made a statement that is not true, because the ordinary public is a lot of people. Some have heard of one and some have heard of the other. It’s true that more people have heard of open source, but that doesn’t mean that everybody has heard of only open source.

The reason is that the supporters of open source are more in number and thus the companies who are involved with software mostly say ‘open source’. And the reason is that most of those companies also are involved with proprietary software. They don’t want to educate the public to reject the proprietary software on moral grounds, thus avoiding mentioning the free software movement and never mention our ethical ideas. They can win certain amount of favourable public opinion by connecting themselves with open source, and yet avoid teaching users to reject proprietary software.

They find a way to use the term open source and their company’s name in the same sentence even if what they are saying has nothing to do with it. They don’t generally do that with free software because the idea of free software says that if it doesn’t respect freedom it is an injustice, and so you should reject it. A company that makes non-free software is not going to want to link its name with free software. And that’s why, theoretically speaking, they could play these double-talk terms with any other terms, but they don’t generally play these tricks with free software. They do a different thing, however—they misunderstand the term ‘free’ and interpret it as gratis copies of proprietary software telling that it is free.

The English language has a flaw that other languages don’t have—that is, there is no word that means free as in freedom with only that meaning. Whereas in most other languages there is a clearer word which doesn’t mean zero price. In France, I always say ‘logiciel libre’, because ‘libre’ means free as in freedom. So, most languages have a word which mean free as in freedom and it doesn’t talk about price. English seems to be the only language that fails to have such a word.

Can you clarify a bit between copyright and patents?

First thing, copyright and patents have nothing to do with each other. So, you may as well ask me to clarify between copyright and trees… or side walks.

But at times, people do try to club them together…

The first thing to realise is that copyright and patents have nothing in common; they are totally unrelated laws. What one of them does, the other one doesn’t. So, in particular, if someone starts making statements using ‘intellectual property’, that is a sign of confusion, because that term attempts to generalise several different laws (copyright is one of them), when all these laws have nothing in common.

So, whatever that person says is pure confusion; it is nonsense. And this nonsense is being passed off as meaningful. But, most people don’t know it is nonsense, so they repeat the nonsense. There are also people who know how wrong it is, but they use it and then they justify it. There are a lot of others who are simply trying to mislead other people. It is in their interest not to have other people understand these issues.

Is there any connection between the two at all?

What has copyright to do with licensing and what does it have to do with free software? Well, under today’s copyright law, any work that is written or composed somehow is automatically copyrighted. So, there is a copyright on that work or particular authorship. By default, the copyright law says that people are not allowed to copy or distribute or modify the program. In some countries people are not allowed to run it without permission. So, how do you make free software?

The only way is through a formal declaration by the copyright holder saying that you, the user, have the four freedoms. That declaration, we call the free software licence. It is not the only context in which the term ‘licence’ is used. Licences are signed contracts, but this one is not. This is simply a unilateral grant of permission from the copyright holders of the program. Free software licences have some conditions. It could be a tiny requirement like you can’t remove this licence, but some other licences have more requirements. For example, I wrote a licence, which is one of the many free software licences, called the GNU General Public Licence or GNU GPL. And it is used in over two-thirds of all the free software packages. However, GPL is not all—there are other free software licences too.

What’s special about this licence is there are certain requirements we call copy-left and that is: “When you redistribute copies of the program, either exact or modified, you must keep the licence the same and you must distribute the whole of the modified version under the same licence and make the source code available.” These licences make an extra effort to defend the freedom of every user.

What led to the move from GPL version 2 to 3?

That is hard to say, because there were different reasons for every change. If you look at GPLv3.fsf.org, you can find the rationale document that states the purpose of every change that we made. However, in general, the overall purpose of version 3 of the GPL is the same as version 2—to defend the freedom of every user.

We made some changes for convenience. We made some changes in order to permit things that ought to be permitted. And we made some changes to defend users’ freedom against new methods of taking it away. For instance, there are some changes we made to better defend freedom against software patents; we made some changes to block tivoization. We also made some changes so that you can lawfully redistribute the software using BitTorrent. Because it turns out that BitTorrent violates GPL v2. But, obviously, it is a good thing for people to use BitTorrent as long as they use it for the right purpose. So, in GPLv3 we added a clause to make it legal.

What do you think about the MS-Novell deal?

The deal between Microsoft and Novell was an attempt to take away our freedom. It is an attempt to convert free software into proprietary software. The way they did it is by using Microsoft’s patent claims. A patent is a government-issued monopoly on an idea. Some countries allow patents in the software fields. When that happens, it means that a software technique or feature can be patented. If a country allows software patents then all the developers are in danger, because when you develop a program, you implement many ideas. If some of these ideas are patented that means the patent holder can sue you. If you distribute the copies to some users, then the patent holder can sue those users too in some countries.

The mega corporations own half of the patents; that’s true in every field and they cross-licence each other in a way that gives them a form of dominion. This is why the software mega corporations want software patents. Three years ago, the mega corporations in the US asked the government of India to implement software patents and the government went along with it, but the opposition parties blocked it. So, they were not able to change the law. Now the Indian patent office is trying to authorise the software patents again by twisting the existing law. So, you really have to fight constantly to stop these companies from grabbing control.

Now, in the MS-Novell pact, Novell accepted a licence patent for Novell customers from Microsoft and Novell agreed to pay Microsoft a fee for usage. So, if you are a Novell customer you are paying Microsoft. Because of this, there is a boycott of Novell by free software activists who condemn this betrayal.

What do you say about censorship?

I should explain that this is not part of the free software issue. It’s a much older issue of human rights. Censorship is an evil. It attacks your freedom and is very dangerous.

So, you mean there should not be any kind of censorship?

No, not at all. Now, I have seen things that disgusted me. For instance there was a movie, which was very famous and very popular, called Pulp Fiction. The violence in the movie disgusted me. If there is somebody bleeding on the street and I can help him, I guess I have to force myself to look. But if it is just fiction in a movie, why should I suffer?

However, I am against censorship. I do not want people to censor movies like Pulp Fiction. I am against it. I defend their freedom to make movies like these, and I am not going to go and watch them.

There has been a lot of concern regarding software as a service. What do you think?

Software as a service means that in order to do your computing, you are going to send your data to someone else’s computer. There, he is going to run a program and your computing will be done in his computer and with his copy of a program. If the program is someone else’s copy then the person who owns the copy takes away the control from you. Here you don’t have control on your computing, so you must not do this. The only way you can have control of your computing is if you do it in your copy of a free program. But the structure of the problem is different.

Interestingly, in case of software as a service, it doesn’t matter whether that guy’s copy, which you are using, is free software or not, because if it is free software—that means he has control of the copy and not you. We can’t say that you, we and everyone has to have control over his copy. Because he is entitled to control his copy. That means, when we do computing we should not use his copy; we should use our copy. That is the only way the user can have control. So, software as a service is simply bad and cannot be redeemed. Nothing can make it acceptable.

However, I want to point out that most servers are not software as a service. Most servers are just doing something and, in most cases, it’s not you computing your data on that server. For example, if you visit stallman.org, you can read what I have published. That is not software as a service. Or if you go to the free software directory at directory.fsf.org, you can search our list of free programs. Well, that runs a program, but that is not software as a service. What you are doing is looking at our data. So there is no problem. Or suppose you go to a Web-store and buy something; what you are doing there is e-commerce and that is a mutual transaction between you and someone else. It is not you computing your data, so that is not software as a service. Suppose you help edit a Wikipedia page—what you are doing there is helping to do Wikipedia’s computing. And that is not your computing on your data. It is not software as a service and it is fine. So, we should be aware when I condemn software as a service—out of all the websites in the world software as a service is a tiny fraction of them. It is a narrow way of using a server. Most Web servers are something else.

But when I am running a website, my data is on someone else’s server and I don’t even know where my data is.

That is a somewhat different issue. You can have your computer that is hosted by somebody and you can still have your copies of software. So, you still do control the computing that is done. True, you are trusting your data to whoever hosts the machine. He can go to the machine and rip off the data. It is trusting somebody, but at least he doesn’t control the computing that you do.

But today people care about mobility; they don’t want to carry their data. They want to access it from where ever they want.

That is silly! That means you are trusting your private data to someone you don’t know you can trust. So, that is foolish, that is really dumb!

There shouldn’t be any such thing?

I don’t think you should do it. In many cases it goes hand-in-hand with software as a service. Consider the worst example, Google Docs. With Google Docs here is what happens: you keep your private data, or you wish it were private, on Google servers. So, you are trusting a multinational corporation with your privacy, which, of course, you can never trust—any of them for that matter. In order to use it, the site transmits a large proprietary program to your computer, which you may not realise as it happens invisibly – it’s a Java script program and it gets loaded into your browser.

Aside from this, which is obviously wrong, there is also a large program that is an unreleased program running in Google servers, and Google, of course, controls it and you don’t. So, this is absurd—you should have control of this computing. You should run your word processor or your spreadsheet on your computer. Don’t run it on Google’s computer or anyone else’s. And I am not saying that Google is particularly worse, although it’s true that they are. They should release that Java script program—that will solve one of the problems.
But the other problem is the program in the server; there is no solution for that. Even if Google releases that as free software, it would not solve this problem. The fact is, if you are using someone else’s server, no matter how ethical that someone is, no matter how much you can trust him, you still don’t control your computing.

What do you say about DRM?

You mean digital restriction management—digital handcuffs? This refers to more malicious features put into some programs to restrict the user, most often to restrict your access to your copies of published works. This is injustice! DRM must not exist. And almost always DRM is imposed by a conspiracy of companies. There are a few exceptions, but they are minor.

Consider, for instance, the inscription on a DVD. That scheme was set up by a group of companies. They established the DVD conspiracy that anybody who wants to make a DVD player has to join them and promise to design DVD players so that they restrict the users, just like every other DVD player manufacturer. Now, I believe that these conspiracies ought to be felonies. So the executives that organised these conspiracies and signed up to participate in it should be prosecuted and imprisoned. But, unfortunately, our governments are sell-outs and they have taken the side of those conspiracies, against the public. These executives are well aware that they are in no danger of being prosecuted.

In fact, many governments have passed laws forbidding us to get around the restrictions they have imposed on us, starting with the US. For instance, there is a free software that can play a DVD and in the US that free software is censored. This shows how evil they are. They actually practice censorship of software. You may ask how I know about these conspiracies. It’s because it’s no secret—they boast about these conspiracies. They are so confident that they will not be prosecuted for this attack on our freedom and this conspiracy to restrict commerce that they stand upright and say, “We have made this agreement to restrict the public.”

So, DRM is evil. We should establish laws to prosecute conspiracies that impose DRM, and we should completely reject all products that have DRM unless we have the free software that can break the digital handcuffs. Never buy an encrypted DVD, or any other product with DRM, unless you personally have the means to break the DRM. If you have a free software program to watch the encrypted DVD, then it is OK to buy an encrypted DVD. But otherwise you must only get unencrypted DVDs. In India, I guess the legal DVDs are encrypted so you should not buy them, and I think the illegal ones may not be encrypted so those are OK.

I am excited to know about the status of development of the Hurd?

The Hurd is the GNU kernel that we started in 1990 because there was no free kernel and we needed a kernel to have a complete GNU system. Well, various things went wrong and it works, but it doesn’t work all that well. However, it’s making progress. A few years ago they could only compile 40 per cent of Debian packages on Debian GNU/Hurd and now they can compile 60 per cent. So, they are making progress, but have a long way to go.

Do you have any idea when it will be ready?

No, I have learned not to make predictions about such things. There is a lot of work to be done and progress is being made by volunteers. Now, we don’t consider finishing the Hurd as one of the high-priority projects. Although we would like to have Hurd work, but the fact is there are free kernels. So, it is not an area where the community has nothing. The high-priority projects are to do things that free software doesn’t do.

Linus Torvalds recently criticised you on his blog. Do you have something to say about that?

Well, you can see that he is a person who doesn’t believe in freedom. You can tell that from his writings. Why does he reject GPLv3, because GPL3 protects users from tivoization, which is a fairly new method of denying freedom. It did not exist when I wrote GPLv2 or I would have done something about it then.

Tivoization means delivering a product with some free software, but the machines are designed so that if the user installs a modified version, it won’t run at all. So theoretically, the users are free to study and change the source code, but they can’t run their own binaries. This means that if they change the source code, it’s useless. So practically, they don’t have the freedom to study and change the program. Therefore, I decided in GPLv3 to prevent this. V3 requires the manufacturer to provide to the user the information necessary for the user to install his own changed binaries in the product he owns and make it run, assuming it is possible—if it’s denied by law, then it’s okay, because no one can change that.

We are trying to stop a practice where a manufacturer can change it, but the user can’t. Well, this is what Torvalds objects to. He is in favour of tivoization. He doesn’t care if the user of, in this case Linux, is free to change it. So, what can we do? He has a right to his views. I am not a one-issue person and I care about a lot of political issues, as you can see if you look at stallman.org. But the free software movement is a one-issue movement. Lots of people support the free software movement, who have different views on other issues. That’s why I put my views on other issues into my personal site—they are not part of the free software movement.

This whole free software movement has sort of grown bigger than RMS…

I hope so, as I am not going to be around forever.

Right, so how self-sustaining is it?

Well, your guess is as good as mine. But I can see there are thousands of free software activists. There are other people who could tell you the same things that I can tell you, but there are people who would listen when I say it and they perhaps won’t when other people say the same thing, because my name is better known now. Well, we make use of that for the better cause.

What are you doing to ensure that your movement is self sustaining?

Well, I do my best. Basically, what is going to increase our chances? Having more people who are free software activists and who look for ways to be better activists—who look for ways to spread the idea of the movement and try to learn to do it the best they can. That’s how they will be the same sort of person that I am now.

Well, I hope the force of free software activists keeps growing…