Linux all started as the hobby of 22-year-old University of Helsinki student Linus Torvalds in 1991. Torvalds could not imagine the revolution his decision to share the code of his newly created operating system (OS) would cause through the IT industry in the years to come. In this interview with Computerworld Brazil, he talks about why he released the code, offers his views on Microsoft and says the future belongs to open source.
What did you want from the public release of Linux? Was it money?
Torvalds: It certainly wasn't money, since the original copyright was very strict about that. It wasn't the GPLv2, it was my own "no money at all, and you have to give sources back" licence.
Was it for fame or for fun? Could you imagine the revolution you were about to start?
No, I didn't think that Linux would become as big and popular as it is now, so it wasn't really fame either. I'd like to say it was for fun, and that probably comes closest, but it might be more accurate to explain why I thought it would be fun. The releasing itself wasn't anything particularly fun, but what I was really looking for was feedback and comments.
When I released Linux in the fall of '91, I'd already been programming for a large chunk of my life, and it was what I did for fun. But I used to have a big problem in programming, namely, to find some issue to get excited about. I had done a few games, but I was never really all that interested in playing the games, so most of the time I was really looking for some interesting and relevant project for myself, so that I could keep programming.
That is where the public release comes in. I was hoping to get people to tell me what they thought needed improvement or what was good, and thus make the project more interesting for me. If I hadn't made it public, I'd probably have continued to use it myself, but it would have been good enough for what I did, and then I'd have to find a new project to work on. But it worked beautifully. I've been doing Linux for 16 years, and it's still interesting, exactly because I made it available publicly and asked for feedback.
How did Linux, as a product, benefit by being released as it was?
Well, in a very real sense, if I hadn't released it publicly, it would just have been a random small project of mine, and gotten use on my machines, but eventually it would have just been left behind as a "that was a fun project, let's see what else I can do" kind of thing. So, Linux really wouldn't have gone anywhere interesting at all if it hadn't been released as an open-source product.
I also think that the change to the GPLv2 (from my original "no money" licence) was important, because the commercial interests were actually very important from the very beginning, even if they were much smaller initially. Even in early '92, you had small (hobbyist) commercial distributions that were really just cheap floppy-disk copying services, where interested individuals that were involved decided that they might as well try to spread the word and also maybe make a small amount of money on the side. The fact that I personally wasn't interested in that part of the picture was irrelevant.
And the thing is the commercial concerns from the very beginning, even when they were small, were really very important. The commercial distributions were what drove a lot of the nice installers, and pushed people to improve usability etcetera, and I think commercial users of Linux have been very important in actually improving the product. I think all the technical people who have been involved have been hugely important, but I think that the kind of commercial use that you can get with the GPLv2 is also important - you need a balance between pure technology, and the kinds of pressures you get from users through the market.
So I don't think marketing can drive that particular thing: if you have a purely marketing (or customer) driven approach, you end up with crap technology in the end. But I think that something that is purely driven by technical people will also end up as crap technology in the end, and you really need a balance here. So a lot of the really rabid 'Free Software' people seem to often think that it's all about the developers, and that commercial interests are evil. I think that's just stupid. It's not just about the individual developers; it's about all the different kinds of interests all being able to work on things together.
Lots of researchers made millions with new computer technologies, but you preferred to keep developing Linux. Don't you feel you missed the chance of a lifetime by not creating a proprietary Linux?
No, really. First off, I'm actually perfectly well off. I live in a good-sized house, with a nice yard, with deer occasionally showing up and eating the roses (my wife likes the roses more, I like the deer more, so we don't really mind). I've got three kids, and I know I can pay for their education. What more do I need?
The thing is being a good programmer actually pays pretty well; being acknowledged as being world-class pays even better. I simply didn't need to start a commercial company. And it's just about the least interesting thing I can even imagine. I absolutely hate paperwork. I couldn't take care of employees if I tried. A company that I started would never have succeeded - it's simply not what I'm interested in! So instead, I have a very good life, doing something that I think is really interesting, and something that I think actually matters for people, not just me. And that makes me feel good.
So I think I would have missed the opportunity of my lifetime if I had not made Linux widely available. If I had tried to make it commercial, it would never have worked as well, it would never have been as relevant, and I'd probably be stressed out. So I'm really happy with my choices in life. I do what I care about, and feel like I'm making a difference.
Didn't you fear you would lose intellectual property when you released Linux?
I didn't think in those terms (and still don't). It was never about intellectual property, it was about all the effort I had put in, and it was about the project being something personal. But yes, I was a bit worried that as a totally unknown developer in Finland, somebody would decide to just ignore my license, and just use my code and not give back his changes. So it worried me a bit. On the other hand, what did I really have to lose?
Also, quite frankly, looking back, it wasn't something that really is worth worrying about. First off, even if you're the smartest man on Earth, and you write something really interesting, it will take you years to do. In other words, it will take you time before it's really even worth stealing. So if you start making it public early on, don't worry about people and companies trying to steal your work. They'll probably not even know about your work, and they'll certainly not think that it's worth stealing. And by the time it is worth misusing, the project is already well enough known that people can't really misuse it on a big scale without getting caught. So the very openness of the process actually protects the developer to a large degree.
So have people used Linux without following the license? Sure. Copyright isn't necessarily honoured in all parts of the world, and there are nasty people and companies that just do legally dubious things. These kinds of things happen. But once the project gets big enough for those kinds of things to happen, there really isn't any point in worrying about them. The people who misuse the project limit not you, but themselves. If somebody uses Linux without following the GPLv2, they just limit their own market (they cannot sell it legally in the developed world without having to worry about the legal side), and they won't get the advantage of open source that the companies who follow the license get.
Which are the benefits of Linux for the users, apart from the fact that it's free?
The biggest advantage has very little to do with the money, and everything to do with the flexibility of the product. And that flexibility has come from the fact that thousands of other users have used it, and have been able to voice their concerns and try to help make it better.
It doesn't matter if 99.99 percent of all Linux users will never make a single change. If there are a few million users, even the 0.01 percent that end up being developers matters a lot and, quite frankly, even the ones that aren't developers end up helping by reporting problems and giving feedback. And some of them pay for it and thus support companies that then have the incentive to hire the people who want to develop, and it's all a good feedback cycle.
What's more important, Linux's huge user base or its large developer base?
I don't think of them as separate entities. I think that any program is only as good as it is useful, so in that sense, the user base is the most important part, because a program without users is kind of missing the whole point. Computers and software are just tools: it doesn't matter how technically good a tool is, until you actually have somebody who uses it.
But at the same time, I really don't think that there is a difference between users and developers. We're all "users", and then in the end, a certain type of user is also the kind of person who gets things done, and likes programming. And open source enables that kind of special user to do things he otherwise couldn't do.
Are those special users that actually do things more important? Yes, in a sense. But in order to get to that point, you really have to have the user interest in the first place, so a big and varied user base is important, in order to get a reasonable and varied developer base.
And I would like to stress that varied part. A lot of projects try to specialise in one area so much that they get only one particular kind of user, and because they get one particular kind of user, they then get just a particular kind of developer, too. I always thought that was a bad idea: trying to aim for a specific "niche" just means that your user-base is so one-sided that you also end up making very one-sided design decisions, and then the user base will be even more one-sided, and it's a bad feedback cycle.
The private sector is not adopting Linux and free software as fast as it was first imagined. Why do you think lots of enterprises still have concerns about free software?
I actually think adoption is going at a fairly high rate, but what people sometimes miss is that there's just a huge inertia in switching operating systems, so MS Windows has a big advantage in just the historical installed base. And on bigger servers, people are still running older UNIX installations.
So these things don't take a year or two. They take a decade or two. I have the advantage of having seen Linux develop (and being slowly adopted) over the last 16 years, while most others users have really only seen it in the last few years - and trust me, we've come a long way in those 16 years. Is there a long way to go? Sure. There are technical issues, support infrastructure and just people's perceptions that just take a long time to sort out.
Microsoft has recently claimed that free software and some email programs violate 235 of its patents. But Microsoft also said it won't sue for now. Is this the start of a new legal nightmare?
I personally think it's mainly another shot in the FUD [fear, uncertainty and doubt] war. MS has a really hard time competing on technical merit, and they traditionally have instead tried to compete on price, but that obviously doesn't work either, not against open source. So they'll continue to bundle packages and live off the inertia of the marketplace, but they want to feed that inertia with FUD.
Do you think you and the open-source software community are prepared for this battle?
I don't actually see it as a battle. I do my thing because I think it's interesting and worth doing, and I'm not in it because of any anti-Microsoft issues. I've used a few MS products over the years, but I've never had a strong antipathy against them. Microsoft simply isn't interesting to me.
And the whole open source thing is not an anti-Microsoft movement either. ... Open source is a model for how to do things, and I happen to believe that it's just a much better way to do things and that open source will take over not because of any battle, but simply because better ways of doing things eventually just replace the inferior things.
Microsoft and Novell announced last year a partnership for the interoperability of Windows and Suse Linux. Do you think Novell betrayed the principles of open software?
I actually thought that whole discussion was interesting, not because of any Novell versus MS issues at all, but because all the people talking about them so clearly showed their own biases. The actual partnership itself seemed pretty much a non-issue to me, and not nearly as interesting as the reaction it got from people, and how it was reported.
Some analysts are saying this kind of agreement is positive for consumers and can also popularise Linux. Do you agree?
I don't know. I don't actually personally think the Novell-MS agreement kind of thing matters all that much in the end, but it's interesting to see the signs that the sides are at least talking to each other. I don't know what the end result will be, but I think it would be healthier for everybody if there wasn't the kind of rabid hatred on both sides.
Some people get a bit too excited about MS, I think. I don't think they are that interesting. And conversely, some MS people seem to get really hot under the collar about open source. ... I'd rather just worry about the technology. The market will take care of itself. Giving customers what they want is the way to make progress, not to try to control them or try to spread propaganda or FUD.
The Free Software Foundation issued the second draft of the GNU general public licence version 3 (GPLv3). What's your impression of it? Is it good for the concept of Linux?
I personally think the GPLv2 is the superior license, and I don't see the kernel changing licenses (not that it would be very easy anyway, but even if it was, right now there just wouldn't be any advantage to it). But, hey, other people have their own opinions, and other projects will use the GPLv3. Again, it's not that big of a deal -- we have something like 50 different open-source licenses, and in the end, the GPLv3 is just another one. I don't use the BSD license either, but tons of other projects do. Whatever suits you.