Open Voices Podcast with Linus Torvalds

The Linux Foundation Open Voices Podcast with Jim Zemlin and Linus Torvalds


Part I (43 min)

Part II (39 min)

Part I

January 2008

Jim Zemlin: So, I wanted to start out by asking you the first question. What is it like being a part of The Linux Foundation?

Linus Torvalds: To me, what Iíve been doing for the last four years has basically been finally doing Linux full-time. Before that I always had Ė I had a so-called real job that supported me and the family and then Linux was kind of a hobby and although my employers knew about Linux and supported it, but it was not my official job.

So, about four years ago I basically said I needed to do it full time and I was ready to just go at it alone and just take a break from Transmeta and, instead, found this company that was willing to support doing what I needed to do anyway.

So, as far as Iím concerned, The Linux Foundation is my way of not having to worry about all the details about feeding my family and doing what I wanted and needed to do.

Jim Zemlin: Great. What motivates you to work on Linux?

Linus Torvalds: Well, it used to be the technology was just Ė I was interested in just how the hardware worked and the interactions between hardware and software and thatís still a large part of it, but largely itís also now just the social side.

So, itís just a lot of fun working with people; even though, I mean, I sit in my basement all day long and actually donít meet anybody at all, but what I do is essentially communicate and it is very social: reading email from people, answering them, telling them that theyíre being difficult. Although I donít Ė I just say it in that polite manner or that theyíre doing a good job and trying to push people in the right direction.

Jim Zemlin: Youíve often been quoted as saying, ĎLinux is just fun,í and thatís what really motivates you to do this.

Linus Torvalds: Right.

Jim Zemlin: Do you see Linux, the development of Linux as something of a greater cause?

Linus Torvalds: No. No, not to me; I mean, to other people it is. I mean, itís actually one of the things I found to be interesting is how people use Linux in ways that I didnít start out designing it for and sometimes use it for things that I really donít care about personally that much.

And all the usage where people use Linux for third world countries and helping humanity, some people think thatís why I got into it and, no, thatís not why I got into it and the credit should go to projects like OLPC that use Linux to try to better the world in a bigger picture.

To me itís being Ė I think itís very interesting and, I mean, when I say itís Ė what drives, motivates me is the fun part. I mean, part of being fun is that it should be difficult enough to not be trivial. So, fun doesnít mean that itís frivolous; it just means itís interesting and exciting.

Jim Zemlin: Letís talk about the part that ďdifficult enough to be not be trivial.Ē So, thereís a technical aspect to 

Linus Torvalds: Right.

Jim Zemlin: Öbeing difficult. Thereís a social aspect and a collaborative aspect to being difficult as well. Which do you find more challenging? Is it just different?

Linus Torvalds: Theyíre all, I mean, theyíre all changing and theyíre just different in sometimes the technology itself can be really challenging; the technical side is seldom frustrating. So, the technical sides are often easier in that sense that I donít get frustrated. Okay, weíve had a bug and weíve hit our head against a technical bug for a couple months and, yes, that can be Ė feel slightly frustrating at same Ė but at the same time, you always know that itís something that you are going to solve and youíre just Ė I never worry about that.

The social side is maybe a bit more difficult in the sense that that can be really frustrating and sometimes you donít solve the social problems and people get upset and I think thatís very interesting too. I mean, itís not Ė if it was Ė if everybody was easy and everybody was all pulling in the same direction, it wouldnít be as fun and interesting.

And itís different and also it changes from time-to-time. Sometimes we concentrate on technical problems and then occasionally, happily fairly seldom, there comes like this perfect storm of social issues that start up and one flame-war perhaps brings out some other issues that people have had and have been kind of simmering under the surface, so.

So, itís not like you have this constant technical and social issues; they tend to come and go.

Jim Zemlin: Letís look a level deeper at the social interaction because open source is often described as this sort of democratizing process that, you know, everyone has a say, thereís this grand consensus, but at the end of the day, needs to be some sort of decisiveness when it comes to making decisions. How do you deal with that?

Linus Torvalds: Well, I mean, itís really not a democracy at all and some people call it a meritocracy which is not necessarily correct either. Itís Ė I have a policy that he who does the code gets to decide, which basically boils down to thereís a Ė itís very easy to complain and talk about issues and itís also easy for me to say, ĎYou should solve it this way.í

But at the end of the day, the only thing that matters is actual code and the technology itself and the people who are not willing to step up and write that code, they can comment on it and they can say it should be done this way or that way or they wonít, but in the end their voice doesnít matter. The only thing that matters is code.

And it turns out people are lazy, so most people are much happier just arguing and quite often you only have one set of Ė one example code and thereís not a lot of real choice there. You Ė thereís not a lot of people who are competent enough to really do kernel programming and also not lazy enough that they actually get the job done.

So, occasionally it turns out that we have two pieces of code that actually do the same thing or similar things in different ways and then you get to the situation where somebody has to choose and quite often itís me and that can cause some social issues with that too. Itís actually fairly unusual.

Jim Zemlin: But youíre willing to make those decisions when you need to, right?

Linus Torvalds: Right. And actually, the technical issues are fairly easy in the sense that if I end up doing Ė making the wrong decision, we can undo it. It happens. I mean, people just say, ďOkay, it maybe have looked like the right decision, but that was completely off-the-wall wrong.Ē

And we just switch over and it can be slightly painful at times, but as mentioned, itís not that common to have Ė to make big decisions in the first place and most of the time the decision isnít the wrong one.

Jim Zemlin: Step us through the organization of the development process itself. You know, who are the people who are at the center of the project and how does the project expand out in terms of the participants who work on the Linux kernel?

Linus Torvalds: Well, one of the Ė my favorite theories that the whole organization doesnít really exist and that itís largely self-organizing. And what that means is we do not have any strict Ė when there is no rules about who is really a maintainer and even when we have a maintainerís file that says, ďThis person is in charge of that sub-project,Ē thatís really more of a hint than anything else. It means that, okay, if you have problems in this area or if you have a patch in this area that you want to push, that person is probably the right person to approach.

But even that is a fairly soft thing and in the end what ends up happening is that itís more like a social network where some people just have more connections than other people have and a patch is not a problem; reports tend to move along the edges from the originator through all the people who have the most connections eventually up to me and/or other few other kind of core people who have a lot of connections to a lot of different areas.

Jim Zemlin: So in many ways, participating in a meaningful way in the development process is a lot about having trusted relationships?

Linus Torvalds: Right.

Jim Zemlin: Including the different participants?

Linus Torvalds: Right. It doesnít matter at all who you work for pretty much because nobody really cares and there might be some politics going on but in the end what happens is people know Ė theyíve seen other people do work over the last months or years, in some cases decades, and they know that, ďOkay, I can trust this person. When he sends me a patch, itís probably the right thing to do even if I donít understand quite whyĒ and you kind of build up this network.

And because it is self-organizing, it means that usually it evolves as time goes on. So, people might start out being not very central, but as more and more they show theyíre good at a certain area, they kind of gather more and more trust and get more and more connection and become more central without really having a Ė without there being in place any way to make them central in a kind of official way.

Jim Zemlin: So, letís talk a little bit about community, then, from this aspect of trust and Iíd like to start by asking you a question about the term community itself. People throw the term community Ė you know, ďDonít do that. It will upset the ĎcommunityíĒ or ďThe Ďcommunityí doesnít accept this particular practice.íĒ

What Ė how do you define community? I mean, what is the way you look at that?

Linus Torvalds: I actually Ė I try to avoid using the word community because itís misleading in so many ways. Itís misleading in the sense there is no one community; itís everybody tends to have their own issues that they care about and they may Ė may or may not have anything to do with another person whoís ostensibly in the same community.

So, one misleading thing is thinking that people kind of share ideals and goals and thatís not true. Itís quite often the case that people have completely different goals; you have commercial vendors who have their very clear commercial goals and you have individuals that in the open source, so-called community, you often find individuals who really donít like commercial entities, especially not the big ones. So, quite often the goals are very different.

And the other thing is, community tends to also be Ė become a Ė not just to see it as one entity, but you also see people as being inside and outside and that used to be especially Ė I think most companies have slowly started to learn, but it used to be a huge issues where companies kind of were talking about ďHow do we interact with the community?Ē

And there the community ended up being some external entity when the real answer always ends up being you donít interact with the community, you just act as a member of this non-existent community. You really Ė you donít interact with it, you are part of it.

Jim Zemlin: Thatís something that Iíd like to expand upon because a lot of times at the Foundation, corporations will come to us and ask, ďHow do we participate in the community? How do we work with the community?Ē and our response, similar to yours, is ďYou can be a part of the community.Ē

What advice would you have for corporations who have goals in participating in Ė letís not use the word community, development goals?

Linus Torvalds: Usually, I mean, the easiest way is to find a person who is already a member of the development process or maybe not a very central one, but really Ė central enough that heís been involved and knows how things works and basically bring that person into the company.

Quite often people, I mean, companies have those kinds of people inside already, especially if youíre in a tech company and you have interest in something like the Linux kernel, the reason you have interest in the Linux kernel probably has something to do with the kind of people you have working for you.

So, there probably already are people inside the company who know how things work.

Jim Zemlin: But you talked before about trust and why trust is important in terms of the influence you have to some degree in accomplishing what you want in the community.

Sometimes corporations donít think about it in that way. They think, ďHey, if I assign people to work on this and I just throw resources at it, Iím going to accomplish my goal.Ē

How can these organizations, if they assign staff, build that trust? What should they tell their people who are participating out there?

Linus Torvalds: I donít know if there is an answer to that question. {Laughter} I Ė if you think about trust the way you think about trusting a personal relationship, you donít get trust and you donít even really build trust knowingly. The trust either comes or it does not come and it largely depends on your actions.

So, the way to build trust is not to think of it as building trust, but trying to make sure that your actions speak louder than whatever youíre saying and maybe what your internal strategy is doesnít matter. What your external actions are is eventually what will either give you trust or not give you trust.

Jim Zemlin: Letís talk about the kernel development process today and how itís changed over time and let me kind of paint a picture for you and then Iím curious to hear what you have to say.

Many years ago it was a fun project that was used by companies in some cases, but it was not as widely-adopted as it is today.

Today you have this groundswell of mobile devices, of huge server implementations that are really critical to companiesí interest in industry; just this massive participation from a commercial sense.

If you look between now and then, how has the development process changed? Have the people changed? Is Ė whatís different now about what youíre doing than it was, letís say, even three, four years ago when you were at Transmeta?

Linus Torvalds: I think the process is largely the same. There have been certain process changes that are purely technical in the sense that we have made some of the process more explicit and there are tools that support our particular way of doing things that did not exist five to ten years ago.

Another thing that has changed is the people involved have certainly been involved longer and are, perhaps, more aware of just how much they can screw up and care about it more than they Ė Iím thinking about me in particular. It was to some degree easier ten years ago when it was easy to just say, ďHey, weíll try this and if it doesnít work out, not a big deal.Ē

And we donít have quite that amount of freedom anymore, we canít just take completely experimental code and say, ďHey, letís see how this works out.Ē

And it Ė as a result of that, we now have multiple layers of where a code goes in, where it doesnít immediately go into my tree. If there is something that is experimental, it gets developed in some external tree and then usually goes through, for example, (Andrew Morton)ís tree and can sit in that tree for a year until people say, ďOkay, it worked out in those trees. It hasnít gotten a lot of wide testing yet because itís been in specialized trees, but everything looks good so letís push it to the main tree.Ē

So, we have changed that. A lot of that has actually happened on its own not so much because we foresaw the problems but because it just became the way we worked because it was clear that my tree can be quite as experimental which, in turn, motivated other people to kind of take up the mantel of experimental trees.

Jim Zemlin: In some ways what youíre describing sounds a lot like going from being single to getting married to having kids in that thereís sort of this increasing amount of a sense of personal responsibility.

Linus Torvalds: Right. I mean it Ė to some degree it definitely is about growing up and there are lots of similarities; there are probably lots of differences too, so {laughter} I donít know if that Ė you can take that analogy that far, but.

Jim Zemlin: You donít love the kernel community, do you?

Linus Torvalds: Well, some people I worked with, I mean, it Ė when you work with people for five or ten years, maybe you donít love them that way but at least you trust them in a very real sense on a personal level.

Jim Zemlin: One of the things thatís happeningóto continue to talk about communityóis Linux is starting to be more important across the globe to Ė whether itís from governments who see it as a strategic way to grow with a software industry, sort of use Linux as something that can do that or its mobile device manufacturers in Taipei or One Laptop Per Child, et cetera.

One of the things that people ask a lot about is why donít we see more global participation in the development process itself? In other words, observers say this is very North American-European focused.

Iíd be curious to hear your thoughts on: a) why donít you see more of it; and, b) any ideas on how you can get more participation from folks from other geographies.

Linus Torvalds: Well, weíve done some studies, six over the years just looking at where developers come from and one of the obvious things is people tend to come from not just populous countries, but countries with a very high density of Internet access and that is one of the reasons.

I mean, you can easily say that, yes, thereís a billion people in China, thereís a billion people in India, but China and India are not represented very well in the developer community.

But if you actually Ė instead of just looking at just number of people, you look at number of people who actually have good Internet access. China and India simply arenít that big and thatís one of the issues is just connectivity.

Jim Zemlin: But proportionally, do they participate as much or is there stillÖ?

Linus Torvalds: There are other issues too and clearly the language and cultural barriers are one of the big issues and something as simple as and maybe obvious as education.

So, the language barriers tend to be a huge problem for Ė well, actually, maybe more even the different cultural issues that Ė with Asian countries they have good penetration; some of them have huge penetration of Internet use, they have a obviously great education and they do not end up contributing a lot to open source, not the kernel, not to generally other projects either.

And that seems to be at least partly cultural and itís really hard, then, for some of these people who have cultural barriers and a language barrier to then become actively involved. It does happen, but it certainly explains a lot of the reasons why Western Europe and the U.S. are the biggest development areas.

Jim Zemlin: Is this something that the kind of core kernel community thinks about, like, ďHow can we get more people involved? How can we make it easier and more accessible to get people involved?Ē

Linus Torvalds: It comes up every once in a while. I donít think anybody really knows what the answer is. Weíve added some documentation. Usually the kind of initial ďread meĒ kind of documentation: where to go to get involved, how to behave, so thatís available in a number of languages.

Whether that makes a huge deal or not, I donít know. I suspect it doesnít, but I also suspect that it may make people more likely to at least take a look at the project. Maybe it scares away people less when they see the project itself, at least tries to approach them. People in Asia might feel like, ďOkay, Iím not fighting against this. I may have issues,Ē but at least theyíre kind of aware of them and theyíre trying to some degree. So, thatís one of the things weíve been looking at.

That said, I mean, I actually think the cultural barrier is bigger than the language barrier and the reason I say that is especially South America has been pretty active, so itís not that Ė and they donít necessarily speak English all that much, but I think culturally theyíre more closer to Europe and the U.S. which makes it easier to enter.

So Ė and the cultural differences I donít think we even know how to really even approach.

Jim Zemlin: The Ė letís talk a little bit more on the technical aspect of where the kernel is going. Earlier usage of the Linux kernel was largely on the servers. It obviously is used for desktop computing, increasingly in mobile and embedded computing.

As you see this, you know, more embedded and mobile devices use Linux, any impact on the kernel at all from a technical perspective?

Linus Torvalds: I actually expected more of an impact. It turns out the mobile devices have grown up so much that even a cell phone, even a fairly, like, middle-of-the-road smart phone today probably has more computing power than the first desktops that were used to run the Linux at. And that doesnít seem to be stopping.

So, I think especially as far as the kernel is concerned, people worried about that more than I think it turns out you need to worry. The biggest issues on the mobile side tend to be not so much Ė well, there is still the kernel side; you want to make it smaller, you want to make it more efficient, but I think the thing that more people worry about is actually interfaces.

It makes more a difference that the way you connect to a mobile phone is different from the way you connect to a desktop. You have a very limited keyboard, you have touch screen issues, you have a very small screen and I think the bigger issues tend to be in things like the UI interfaces.

So, you have Qtopia and that seems to be big on the mobile side and the kernel hasnít seen that much of that. It may be that I just think so and Iím insulated from some of the issues because thereís all these mobile kernel groups involved that I donít interact with directly, but I suspect on the whole people worry less about the kernel than about user space.

Jim Zemlin: Well, letís talk about that second half of the comment you made about thereís lots of these sort of mobile-specific kernel groups or Linux distributions out there. And, you know, one of the things that you hear people say is a reason they participate in the Linux development process and open source is because itís that collective work that really reduces the cost and really allows them to work together effectively.

And by having, you know, sort of groups flaking off,, what can they do from just a best practice point of view in terms of if youíre a mobile device company in getting what you want into the mainline so that, you know, you can have it there indefinitaly so that itísÖ

Linus Torvalds: I think the big problem in the mobile world tends to be that the whole marketĖ is so used to being completely fragmentary. Everybody makes,, these one-off pieces of hardware; theyíve done it for the last few decades, theyíre very used to basically writing throwaway code and starting entirely from scratch when the next generation is Ė comes out.

So, they may have generations of hardware for Ė that go on for many, many years and they support that generation, but then when they finally decide to do another generation, they basically start from scratch.

And when you come with that mindset, you sometimes Ė as far as I can tell, people donít even understand the notion of trying to work with the process and trying to get integrated into the standard kernel or the standard utilities because thatís never how they worked before.

So, what a lot of these mobile manufacturers actually do is they pick one version, they usually pick a version that is fairly recent at the time they pick it and then they say, ďOkay, this is the base.Ē And then for the next five to six years for that particular platform, they stick to that version and they enhance it for their own needs.

And when they then want to do their next version and next-generation hardware, theyíre in the situation where the rest of the world has worked on something else for those few years and all their modifications are to a version that is now Ė has nothing to do with what the version is today in the rest of the world and they end up doing what they did before: they throw away their work entirely and start from scratch.

And this is not something I Ė I donít think we can help with. I think that mobile market, to some degree, needs to grow up and grow out of that bad behavior.

Jim Zemlin: In some ways itís a cultural issue not from ahistorical perspective and a geographic perspective, more from a business perspective.

Linus Torvalds: Yeah. Itís a technical cultural issue and technical and business practice cultural issue.

Jim Zemlin: One of the things you talked about was thereís an increasing complexity in how you interface with the kernel and device drivers is obviously a component of this.

I get asked a lot, which this probably wonít surprise you, why doesnít the kernel have a stable device driver ABI?

Linus Torvalds: Well, thereís Ė the lack of an ABI is two-fold: one is we really, really, really donít want one. Every single time people ask for a stable ABI, the main reason for wanting a stable ABI is they want to have their binary drivers and they donít want to give out source and they donít Ė certainly donít want to merge that source into the stable kernel or the standard kernel.

And that, in turn, means that all the people who actually do all the kernel work and maintain the kernel are basically unable to work with that piece of hardware and that vendor because if thereís any bugs whatsoever, we canít fix them.

So, all the commercial vendorsóeven the ones who used to accept binary driversóhave moved or are moving away from wanting to have anything at all to do with binary drivers because theyíre completely unmaintainable.

So, thereís one of the reasons. Some people see it as political. There is probably a political aspect to it, but a lot of it is very pragmatic; we just canít maintain it.

Jim Zemlin: This sounds like another one of those cultural issues where, you know, people were just used to supporting binary drivers and thereís benefit, perhaps, to that, but they donít maybe even understand the benefit of sharing in the support.

Linus Torvalds: Well, itís not so, you know, maybe so much the benefit; itís the fact that when support is distributed. I mean, I end up not having to support most devices, but I end up being kind of the last stop support for when Ė when if sĖt hits the fan and thereís a big problem, in the end it comes all the way up to me.

And when you have that kind of distributed support system when Ė where everybody ends up being involved at some point, you really canít afford to have the situation where only a very small subset actually has access to the code that may be causing the problem. You need to have the code out there, not because of any social issues, but simply because you donít know whoís going to be the one who has to fix it.

So, thereís a real reason why we need to be able to have source code which means that to all kernel developers, a binary interface is basically Ė it is only a bad thing. There is Ė there are no upsides whatsoever.

But thereís another reason which is that we actually do end up changing things in radical ways inside the kernel and that has led to the fact that even if we wanted to have a binary interface, we simply couldnít or we could but it would then stop us from fixing stuff and changing how we do things internally.

And this is something you do see in other projects where, yes, they have binary interfaces for one reason or anotheróquite often because of commercial reasonsóand that just means that they cannot fix their fundamental design. They sign up not just the binary interfaces, they also sign up to the exact design they had when they came up with that interface.

So, thereís Ė thatís the second major reason why a stable ABI is not going to make Ė in fact, that means that we donít even guarantee a stable API; so, even on a source level we say, ďOkay, this is the API and weíll Ė if you have external drivers that use this, weíll help you fix them up when we have to change the API. But we donít guarantee that the same API will work across versions.Ē And it doesnít.

Jim Zemlin: But by opening up, youíd obviously be able to work with those issues.

Linus Torvalds: Right. Immediately when people work with, like, source API and then we can say when somebody complains, ďHey, it doesnít compile anymore. My external module here depended on that function and now it doesnít exist anymore,Ē at that point at least we can fix it for them.

So, thatís not a huge deal. It does mean that people who maintain external modules, even with source available, they canít assume that they can just recompile unmodified across many different versions.

Jim Zemlin: Why do you think more device manufacturers donít open up their device drivers? And are there any culprits?

Linus Torvalds: There are certainly culprits. There are certainly specific vendors who end up having more problems than others. In fact, sometimes the same vendor may be very good in one area and very bad in another area.

Broadcom is an example of this. They are Ė they have actually been fairly good when it comes to high-end gigabit network devices, wired network devices, but only when it comes to wireless networks and other more consumer devices, theyíve been completely unable or unwilling to help us at all.

So, sometimes you have the same company acting very differently depending on which market theyíre selling into. Certain markets, Linux is a big Ė for some markets, Linux is a big deal for them; in other markets, itís not.

Sometimes itís just Ė especially when we talk to Taiwanese vendors, one issue is Ė some of these hardware people, literally, they rev their hardware several times a year; they have 100 different versions of the chips. They have engineers who do drivers for Windows; they just donít have the resources. they havenít been able to become part of the Linux community, so they Ė sometimes we have issues. Finding documentation is really hard for them; maybe it doesnít even exist internally in a form that they are willing to release.

So, sometimes itís just a practical issue. Sometimes itís just that they might want to help us, but their resources donít end up being in that area.

Jim Zemlin: Have you seen that change as Linux becomes more of important part of industry, more people adopt it, that thereís a critical reason that, you know, they may not have time before but now they have to make time?

Linus Torvalds: It definitely is changing. I mean, itís Ė it used to be that very few hardware manufacturers really actively tried to help Linux people write drivers. And now, at least, Iím personally getting the feeling that the companies that donít try to help, at least with documentation and sometimes even with writing drivers themselves, are starting to even be a minority.

So, itís definitely changing, but itís still the case that Ė especially in certain areas we donít have the kind of support that I wish we had.

Jim Zemlin: Letís shift a little bit to issues that I know are near and dear to your heart: legal, legal issues.

Linus Torvalds: Oh, I love legal issues. {Laughter}

Jim Zemlin: Iíd like to talk a little bit about licensing, maybe a little bit about patents. Let Ė tell us a little bit about GPLv3 and, you know, youíve suggested that GPLv2 works great for you.

Do you imagine any point where you would say GPLv3 would work for you?

Linus Torvalds: Well, I may have strong opinions, but at the same time Iím not Ė or at least I claim that Iím fairly pragmatic, so I donít care, per se, about one particular license or another. I want to pick the license that makes the most sense for what I want to do. And at this point in time, Version 2 matches what I think we want to do much, much better than Version 3.

And thereís always been a very clear tension between Linux and open source on one side and the FSF and free software on the other side where, to some degree, Linux was the project that made this whole split inówhat should I call it?óapproach.

In some ways, Linux was the project that really made the split clear between what the FSF is pushing which is very different from what open source and Linux has always been about which is more of a technical superiority instead of a Ė this religious belief in freedom.

So, the GPL Version 3 reflects the FSFís goals and the GPL Version 2 pretty closely matches what I think a license should do and so right now Version 2 is where the kernel is.

Could there be something that happens to change that? Maybe.

Jim Zemlin: What would something like that be?

Linus Torvalds: Well, one of the Ė what used to be a huge advantage for the GPL was that there was one license and that one license version was basically Version 2. And that resulted in a huge bulk of source code that was all under the same license which meant that you could basically cherry pick, pick and choose and share code as much as possible.

And one of the things Version 3 did was it basically split this source base so that now there are certain projects that are Version 2 only, there are certain projects that are Version 2 or later and there are certain projects that are Version 3 or later.

And that means that now suddenly you canít maybe share code simply because of license issues and thatís not something new; weíve always had that. Weíve had that with other licenses. So, there used to be code that was licensed under the Apache license and that was not compatible with Version 2. [NOTE: This is now not the case and Apache is compatible.]

So, itís not something new, but there is a clear advantage and there are network effects when it comes to licenses so that one Ė and, in fact, one of the few reasons I see why Version 3 might be useful is simply there ends up being tons of external code that we feel is really important and worthwhile that is under the Version 3 license. And then, in order to avoid the licensing compatibility, we Ė I suspect I could see the kernel people saying, ďOkay, weíll re-license to Version 3 not because we think itís the better license, but because it opens up code to us.Ē

Jim Zemlin: Then, basically what youíre describing is a way that Ė you end up at the same place, albeit it for very different reasons; one is a philosophical reason and an idea of freedomófreedom meaning access to code from a liberty point of view almostóand then other from just a pragmatic, ďHey, we want to get things done. If thereís more code out there vis-ŗ-vis this model, thatís something weíre interested in.Ē

Linus Torvalds: Yeah, so I always Ė I really want to have the Linux license choices be made on pragmatic issues. Clearly there is ideals that go hand-in-hand with those pragmatic choices, but I think licensing is too important to think that itís not about practical issues as well as your idealistic issues.

Jim Zemlin: You know, a lot of times I talk to people and describe issues around licensing from the perspective of you have sort of on the far right Microsoft talking about how dangerous licenses are and then on the far left you have attorneys talking about how much time you need to spend examining licenses and that theyíd be happy to perform that service for you.

Whatís the real answer? I mean, is licensing any kind of big risk? I mean, is it any more of an issue as opposed to proprietary software licenses?

Linus Torvalds: Well, I personally think that license choices are really, really important. To me, like, the authorís choice of license under which he releases any code or, I mean, it doesnít have to be code, it can be anything else, is almost sacred. I mean, itís that Ė if somebody really came up with something really normative and really interesting, itís up to him to choose how it should be used, within reason. I mean, clearly, like, there should be issues about greater good which is why copyright exists in the first place.

But that said, it is a personal choice and I donít think itís Ė I mean, once some person or company, for that matter, has made that choice, I donít think thereís a lot of reason to them to start arguing about why or why not or trying to say, ďHey, this license is better than that other license.Ē

I donít think thereís Ė I mean, thatís simply not relevant anymore.

Jim Zemlin: Iíll put you on the spot for a second, then, about the idea of personal choice and the license. From the kernel perspective, itís a personal choice among a lot of people, is that right?

Linus Torvalds: Well, in some sense it started out as a personal choice of just one person, me.

Jim Zemlin: You.

Linus Torvalds: And once you have an existing project Ė and thatís different from somebody starting a new one. Once you have an existing project, the choice kind of changes. The initial choice is ďWhich license do I choose?Ē Once you get past that point is the choice becomes ďDo I want to be part of this and do I want to participate considering that the license has been chosen?Ē

So, then you donít chose the license anymore, then you choose the project. But itís still a personal choice, but itís a completely different personal choice.

Jim Zemlin: So, from that perspective, do you have an obligation to the broader kernel community or the people participating in it to be inclusive if a license choice would change or toÖ

Linus Torvalds: Well, not just an obligation.,itís a legal requirement. I cannot change the license on my own anymore. I mean, because I have accepted code over the last 15 years by people who kind of accepted my original choice of the GPL Version 2, Iím not just, I think, ethically bound by those peopleís choices, I am also actually legally bound.

I canít just say, ĎHey, now weíll change license to some other license.í A lot of people participated in development and sent me patches and they are still actually copyright owners of those patches or those changes. And if we actually want the change to the GPL Version 3, itís not different than changing to any other license; we might Ė I mean, it is theoretically possible that people decide, ďHey, we want the change to the BSD licenseĒ or we want the change to some other license.

In practical terms, for that to happen, everybody whoís a copyright owner really has to agree or the ones who donít agree, their code needs to be rewritten.

So, in practical terms, thatís not going to happen. The GPL Version 3 is much more likely just because then you are more likely to find people who either started off with Version 2 or later in the first place, so they always accepted Version 3 implicitly.

Or youíre just likely to have people say, ďHey, I accepted Version 2. Version 3 is not that big of a change; Iíll accept that too.Ē

Jim Zemlin: Do you feel like youíll play a role as a leader with the legal and sort of moral implications included in that to say, you know, to help guide people on what your personal judgment is?

Linus Torvalds: Right. I do. And itís one of the reasons Iíve spoken out against the GPL Version 3 before it was released and all the drafts because I wanted to make sure that as a leader in the kernel community I kind of told people want to expect from my standpoint that I was not happy with the drafts, but also explain why and maybe lead people to understand the issues like the people in the embedded areas for whom the Tivo-ization clause was a real downer in Version 3 shouldnít be ignored.

And theyíre a part of the community too Ė and there I used that community word again, but that itís not just that the Version number has increased doesnít necessarily mean that itís automatically a better license.

Part II

February 2008

Jim Zemlin: Letís talk a little bit about patents. Certainly there have been allegations about how Linux is infringing on certain organizationsí patents; recently there was even a patent suit filed against Novell and RedHat related to patents.

Tell us a little bit about your perspective on either those specific issues or patents in general.

Linus Torvalds: Patents are nasty. Itís kind of hard to really say a lot more than the fact that patents on ideas in general are a huge mistake and the whole notion that you can have patents, business models and software is pretty broken to begin with.

And at least in the EU so far theyíve been able to fight that whole notion of patenting software. In the U.S., I think there are certainly more than just open source people who are realizing that software patents are a huge mistake.

Jim Zemlin: The argument for patents is that it provides an incentive for inventors or innovators due to the exclusivity they grant to create more innovation.

Linus Torvalds: Well, thatís actually the second argument; the first argument for patents is that itís meant to be a way to enhance human knowledge and technology, right? Then in order to do that, you then do patents that might incentivize the people who are inventing things.

The problem with that, and there are economists who also are very strong on this opinion is, patents donít actually work that way. Especially on software, patents do not incentivize anybody and they do not actually help inventions; quite the reverse.

So, if they donít actually help the fundamental reason why patents exist in the first place, patents on software should not be allowed. And itís not about making people rich; it was never about making people rich. It was about making the knowledge available publicly and the limited protection that patents give has always been about making incentives for new development.

And it just does not work in software, and the reason it doesnít work in software is any complicated piece of software contains so many pieces that nobody could even know whether, maybe, one out of a million different things might be under some completely trivial patent.

So, everybody just digs their head in the sand and basically ignores the issue and all the commercial companies try to gather their own patents just as a defensive weapon, not because necessarily they want to use them for offense, but because that way if somebody else comes and knocks on their door they can say, ďHey, but I have this patent, and, by the way, Iím sure some of your lines have problems with that patent. So, letís be friends and not bring up patents at all.Ē

Jim Zemlin: So weíve created a cold war-like situation?

Linus Torvalds: Yes and no, and the no part comes from the fact that now the big issue is all these patents trolls where the cold war-like situation doesnít work at all because they donít have any code or any product or they donít sell anything at all.

Jim Zemlin: Itís the rogue state?

Linus Torvalds: So, theyíre the Ė yeah, theyíre kind of the terrorists that you canít bomb them back because thereís nothing there to bomb. There are these individuals that donít have anything to lose, and that breaks the whole cold war model and that seems to be one of the reasons that even big companies are now starting to realize that patents and software is a really bad idea.

Jim Zemlin: Thereís been arguments made also that patents are far more in favor of large organizations with lots of resources to go and get as many patents as they can and the community, or the open source development world, just simply doesnít have those resources and so that the whole patent system somewhat favors this corporate world.

Linus Torvalds: Well, I think it does favor the corporate world in the sense that if you see patents as a cold war thing, it clearly helps to be big and have lots of patents because theyíre the equivalent of having lots of nukes, and small companies and individuals canít have nukes; itís practically not very accessible.

So, the model does favor large companies. On the other hand, again, thatís where the rogue state problem comes in. Large companies, in some ways, are more vulnerable to being blackmailed over patents, so when you have patent trolls, the trolls usually want to go after the big money, so they actually go after the large companies and now it doesnít help to have lots of patents.

Jim Zemlin: Not to extend this metaphor too much, but is the open source community, or are many open source projects to be more specific, sort of aligned with the Russia or the U.S. in this cold war? Do you feel like there are enough allies on the side of Linux, for example, that patent problems are really not an issue because of these very strong allies?

Linus Torvalds: I donít think we necessarily have quite enough alliances there. On the other hand, if you look at the last patent lawsuit against Novell and RedHat, it was by one of the rogue states. So, maybe there are enough alliances that patents are not a huge problem with regards to other large companies that actually use patents themselves.

But the patent troll problem ends up being visible even for open source; of course, most of the time, especially with smaller open source companies, the patent trolls wouldnít go after them, so.

Jim Zemlin: But this is nothing new to software, right? I mean, thereíve been patent trolls for years whoíve taken action against proprietary software companies for decades.

Linus Torvalds: Right. This has nothing to do with open source, no. No, I mean, this is very much a software patent problem in general. I donít think any other issues with patents have really anything to do with open source; I think that the open source people are perhaps just much more aware of them and it took commercial companies longer to realize because the commercial companies didnít actually worry until the patent trolls started coming around.

Jim Zemlin: So, from that perspective what do you think of Microsoft say, rattling around patents, given that on the one hand patents donít really help them out, but on the other hand theyíre out there talking really specifically about Linux to some degree relative to these so-called patents that somehow Linux is infringing upon?

Linus Torvalds: So, I think that Microsoft really sees patents as a marketing thing and I think that for two reasons: a) it is what they seem to have used in the past. So far I donít think Microsoft has ever sued anybody over patents. They have been sued for patents by other people, but I donít think theyíve Ė not that Iíve gone through any huge amount of law cases, but I donít think theyíve generally used patents as a weapon.

But theyíre perfectly happy to use anything at all as fear, uncertainty and doubt in the marketplace and patents is just one thing where they say, ďHey, isnít this convenient? We can use this as a PR force.Ē

Another reason why I donít think Microsoft really seriously would go after patents is when youíre a convicted monopolist in the marketplace you really should not be suing your competitors over patents. I think that most Microsoft lawyers would say, ďYou know, letís not do that; that sounds insane.Ē

Theyíre perfectly happy to use patents in the dťtente and cold war sense.

Jim Zemlin: To continue talking a little bit more about Microsoft, have talked about how they want to improve interoperability with Linux. What do you think of those efforts?

Linus Torvalds: I have such a hard time judging. I donít know. Microsoft says many things and they may even mean them, but the fact that the person who says them means them, does that mean anything in the larger Microsoft picture? I donít know. That seems to always be a bit unclear.

I think there are people inside Microsoft who really want to improve interoperability and I also think there are people inside Microsoft who would much rather just try to stab their competition in the back.

I think the latter class of people have usually been the one who won out in the end, but Ė so I wouldnít exactly trust them. But I think theyíre sincere; itís just that a part of them, at least, is sincere.

Jim Zemlin: Like many big companies.

Linus Torvalds: The left hand doesnít know what the right hand is doing.

Jim Zemlin: Speaking of that, letís talk a little bit about Open Solaris and Sun Microsystems. Any thoughts on Sunís community development plans or advise, for that matter, given that theyíve stated that they want to build an open source community around Open Solaris and obviously you are a great example of an incredibly robust dynamic community?

Linus Torvalds: Itís generally hard to build a community around a commercial entity that also wants to be in control because everybody else around that commercial entity will always feel like theyíre at the mercy of Sun.

And Iím not even going to go into Open Solaris because, quite frankly, I donít even care. But I think you see some of that with a project that is considered to be completely open source and has been for a number of years, namely Open Office where the fact that Sun wants to have copyright assignments and exclusive control over the license ends up being something that actually drives away some developers.

Jim Zemlin: Some would argue that theyíre a very good open community player: Java, Open Office they would point to, they would point to Open Solaris which is opening up a huge amount of their intellectual property. How would you respond to that?

Linus Torvalds: The reason Iím ambivalent about Sun is that they do a lot of things right and they traditionally have done a lot of things right. I mean, and they do point to that fact that theyíre open source mentality actually goes back quite far and one of the things they and others point to is NFS itself where it may not have been open source, but it was an open standard and being open was actually what made NFS succeed in the first place.

And that was definitely a Sun thing, being open. So, in many ways, Sun has done a lot of things right. At the same time, they seem to often have trouble going the full last step. So, Java is an example of that where they have now Ė I think theyíve released another GPL Version 2 basically a year ago; I forget the exact details.

And they finally did that and it is now really open source, but at the same time it took them something like six years to get to that point and before that they tried to push a failed license where they did try to maintain control and they always claimed the best of intentions. They claimed that they needed to be in control because they didnít want to fragment the market and there was always this kind of rationalization for why they had to be in control.

Jim Zemlin: But in some cases that has undermined the greater goal which was building the community.

Linus Torvalds: Right. Definitely I think the same is true right now when it comes to projects like Open Office where, again, there are rationalizations for why you have to assign copyrights to some and they may even be valid, but it does undermine the community because it means that there is a first among equals.

There is Ė Sun ends up having rights that nobody else has Ė even if they then act perfectly and they really behave well, just the fact that they have special rights makes people legitimately feel like they are second class citizens and thatís not how you build a community.

One of the things I did with Linux from very early on was when somebody sends me changes, they retain all copyright in those changes. Nobody has Ė I donít have any more rights than anybody else has except in the sense that Iíve written more code than most people, but Ė I say most people, not all people, that your rights when it comes to Linux are directly what you put into it.

Jim Zemlin: Letís talk about one more thing relative to Open Solaris or their open source projects. You know, thereís competition in marketplace. IBM wants to sell their Linux systems, HP wants to sell their Linux systems, Sun wants to sell their Solaris systems on their high margin server products.

But thereís also competition in the open source world and let me describe that. For a developer mindshare, right, for participation, are you, Linus, personally, are you a little competitive?

Linus Torvalds: Iím more than a little competitive. Iím a huge believer in competition. I think itís really important, as a way to motivate people. Itís certainly how I get motivated. I mean, itís one of the things that motivates me, right? I want to be the best.

And, in fact, Iím more interested in internal competition than external competition. So, for example, when I say I want to be the best, I donít even compare Linux against Solaris; thatís the kind of external competition that to me is secondary. I donít think itís at all as interesting.

I want to be the best in the sense that I want to be the best in Linux. If somebody else comes up and basically says, ďHey, I can be a better maintainer than Linus,Ē that would motivate me like no end. Thatís where I want to show everybody that, ĎNo, Iím the best maintainer,í.

Jim Zemlin: That keeps you motivated?

Linus Torvalds: That absolutely keeps me motivated, yes. I work weekdays, I work weekends, I work 52 weeks a year. I donít want there to be any question of whoís the best maintainer.

And at the same time, I actually also do want to encourage competition. Competition doesnít have to be something where you are very antagonistic. So, quite often the best competition is things where you actually work together, but thereís certainly a sense of Ďokay, I want to be as good as that guy,í even though youíre both working on the same thing.

So, I actually enjoy seeing all these other kernel trees happening. All the vendors have their own. If a vendor has drivers that I donít have, I get really upset with the developers who decided those drivers are not good enough to send to Linus. Iím like, ĎWhy is my kernel tree worse than a vendor kernel tree?í

We had this exact issue come up just a few weeks ago Ė with the kernel side, where the standard kernel did not come with certain drivers that people almost take for granted now. And it turns out people felt those drivers werenít good enough quality-wise to make it into my tree. That drives me wild.

Jim Zemlin: But in a sense, over time, you win because you set the bar high and you encourage people to get it into the main line.

Linus Torvalds: One of the problems is we have people who have so high criteria for what is acceptable or not that it scares away people who want to do new code and do new experiments.

We mustnít set the bar that high. New code, new drivers, there will be problems and Iíd rather take them and then improve them than expect driver authors, especially when they stand outside the main tree and feel kind of like outsiders even though maybe they really are part of the same whole development community, but they feel like outsiders because their driver hasnít made it into the tree yet.

And then asking them to jump through hoops and make their driver perfect when theyíre standing there alone and donít have help; I think thatís unfair. And there are people in the kernel community that feel that way that things have to be just right before you can accept them and Iím much more of a laissez-faire kind of person. We donít want to accept bad things, but on the other hand, hey, everything starts from less-than-perfect roots and itís much better to accept things that work but may not be perfect and then improve on them when we can all improve on them and all the different vendors can fix the small nagging issues they have instead of keeping them at armís length until theyíre perfect because maybe theyíll never be perfect without help.

Jim Zemlin: Hopefully the Broadcom engineers are listening to this.

Linus Torvalds: Yeah, I donít think so. Iím not very optimistic about Broadcom.

Jim Zemlin: Hope springs eternal on my end.

Letís talk a little bit about some deeper issues and long-term future things related to Linux and what I mean by that is specifically your legacy.

While youíre the best today and while you compete to be the best today, you know, what happens over time as, you know, LinusÖ

Linus Torvalds: When I get Alzheimerís? Are you saying that {laughter} Iím already starting to lose it?

Nobody should be worried about that. I mean, certainly we have one of the widest development bases of pretty much any open source project. Itís kind of interesting to actually see how many developers the kernel project has.

And Iím actually happy to say that another project that I helped start seems to follow the same pattern where the culture really encourages lots of people being involved.

Jim Zemlin: Iím not asking the question so much from a people are concerned about it point of view, Iím asking more from a Ďwhat do you thinkí? I mean, what would you like to see Linux become, when youíre not around?

Linus Torvalds: I really donít have plans like that. I kind of worry about two things; maybe worry is the wrong word to use because I donít really worry about them, but I concentrate on two things: one is the details. Iím a big believer in the devil is in the details and if you get all the details right, the rest works itself out.

Donít worry about the big questions. If you can just solve every single nagging detail, the big questions will have solved themselves.

I really take a very pedestrian approach to a lot of technical issues that I may look a few months out, but I never look five years out. I just donít even think itís worth it and very few people can even make a good prediction five years out.

But more importantly if you look too far out, youíll stumble over the immediate issues. So, when it comes to the actual technical details, I look a few weeks, maybe a few months out.

And then the other thing I worry about is kind of the general development flow and model and thatís something where I can take a longer-range view and worry about, ĎOkay, does that actually affect how people interact?í and that had some affect on when we started doing the whole sign-off procedure where we added in the kernel, the developer certificate of origin sign-offs.

Part of that whole discussion and part of how we solved it was making sure that it doesnít hold up the flow and the whole way development gets done is sane and doesnít get slowed down.

And thatís as much a software issue and I donít claim to look five years out, but I think that if as long as you maintain the basics there in the same way, things will work out.

Again, take care of the details in the short-term and for the long-term, just make sure that you have a very wide developer base and you actually encourage new people to come in and join that developer base so that it remains very wide in the future.

And I wouldnít worry about me or Andrew or Alan or anybody else going away because if you have a wide developer base, thereís always somebody.

Jim Zemlin: Right, right.

Letís talk about some technology issues sort of from a broader marketplace point of view and when I say marketplace, Iím more talking about, you know, sort of technical innovation over time; who uses what type of computing.

Letís start with the Linux desktop. Some people find it really important, some people make predictions that itís going to happen this year or weíre going to see it happen next year, itís unfair that Microsoft has a monopoly position on this desktop, Linux is really, you know, the incredible alternative.

What are your thoughts on the Linux desktop and its broader adoption?

Linus Torvalds: Well, I donít know about broader adoption, but the Linux desktop is why I got into Linux in the first place. I mean, I have never, ever cared about really anything but the Linux desktop.

The server market was a lot easier to get into. Thereís just a few loads, theyíre fairly simple, theyíre fairly well-understood, people are Ė have much less inertia in upgrading a server than they have in upgrading their desktop. But I have never, ever even run a Linux server and I donít even want to; itís not what Iím interested in. Iím more of a desktop guy. Iíve always used Linux as a workstation person.

So Ė and I think I see that as not just me. I think a huge amount of the developers see Linux the same way because it turns out that while, yes, maybe servers is a huge market, when you actually look at developers, what developers interact with all the time is their workstation, their desktop and thatís the area where you really eat your own dog food and where you really end up seeing the fruits of your labor.

So, I think a lot of developers get very attached and emotional about their desktop issues and I donít worry at all about the desktop on a technical level because I think thatís the first thing that most kernel developers will really put their efforts in.

Jim Zemlin: Thereís been criticisms about the Linux desktop as to why it hasnít been adopted by the mainstream user and that is that the nature of the development process, the sort of technical scratch your own itch as an engineer doesnít make usability a feature.

Linus Torvalds: That may be true to some degree, but I actually think itís a small detail. I think the reason the desktop is special is that the desktop really is so special and so much harder than any other market.

Pretty much any other market you have thereís a very clear model of what itís going to do. If you have a server, you know a priority of what that server is going to do. Maybe youíll expand on it later on, but if itís serving email, it has a very clear thing that itís doing in life.

The same is mostly true in the embedded space although clearly in the embedded space itís these thousands of different niches, but each of them tends to have a fairly clear thing that theyíre doing.

The desktop is special. Everybody has a different idea of what the desktop is going to be. You have lots of people coming from Windows who just Ė they know what a desktop is supposed to be – Windows, right?

You have people coming from Mac and they know what a desktop is supposed to be and it has to have that menu bar at the top and if you donít have the menu bar at the top, itís not a desktop, right?

So, everybody has a different idea. Everybody also has different hardware. The desktop is also where all the hardware really exists. Servers have 1% of the hardware that the desktop has in terms of different drivers and things like that. You donít find webcams on servers generally. You donít find oddball IDE drives on servers.

So, the desktop is just much more varied and, at the same time, the desktop is also the thing where people get really upset if something changes, so itís really hard to enter the desktop market because people are used to whatever they used before, mostly Windows. And if you act differently from Windows, even if you act in some ways better, it doesnít matter; better is worse if itís different.

Jim Zemlin: So, is open source, as a development model, an effective way to create desktop given that?

Linus Torvalds: I think it is, but I also think the desktop just fundamentally takes a long time to enter and it certainly takes longer than people, including me to some degree, have ever expected. Thereís just this huge inertia in that market.

But at the same time, one of the things that worked against open source, I think, in the desktop was that when things are really changing fairly rapidly which the desktop used to do during the 90ís, there was a lot of new features. The whole way people interacted with the desktop went from having a few programs to the whole web browsing thing and peopleís use of the desktop really changed.

When that happens, when you have lots of change, itís easier for one company that drives it, in this case mostly Microsoft, to kind of drive the market and at some point, and I think one the reasons people are having issues with Vista now, is that itís much harder to Ė for one company – to kind of change the market and when the market has matured.

And I think the desktop market, to some degree in the last four or five years, has started to mature in the sense that people today are not probably using the desktop all that differently from what they were five years ago which didnít used to be true.

Jim Zemlin: So, in some sense that sort of guidance that a single company has given is now taken away over to the moving side, to agility thatís needed.

Linus Torvalds: Well, itís not even so much agility; I think agility is good in any market. What is, I think, happening is the desktop, as itís maturing, itís becoming, I wouldnít say less relevant because itís much more relevant, but itís more of a commodity, so itís Ė the same way PC hardware became a commodity market, the desktop software has become a commodity.

People take it for granted. Itís supposed to do one thing; you donít even want it to do anything else, really. And you may have niche applications that Ė on top of that commodity. But the desktop itself is something that people arenít necessarily interested in new features and I think that actually is something that helps open source because now you canít have one company that kind of tries to move the goal post because if it keeps trying to move the goal post, thatís just going to irritate that companyís own constituents.

Jim Zemlin: Letís continue that conversation to talk about it even broader and this is in the sense that there have been critics of open sourceówhether itís on desktop computing or in other areasóthat say, ďYou know, open source is really good at being a copycat, but they donít do anything.Ē How would you respond to that critique?

Linus Torvalds: I think itís true to some degree. Itís definitely the case that when the whole development model basically involves having lots of different people pulling in their own direction, the end result is not going to be something which goes suddenly in one direction; itís not going to do a quantum leap in one huge direction because everybodyís pulling in their own direction and itís moving, but itís kind of taking a fairly middle-of-the-road kind of approach where you try to balance out the interests and needs of different companies and different individuals.

And thatís kind of not very conducive to what some people want to call innovation.

Jim Zemlin: But at the same time itís a lot like science where youíre sort of laboringÖ

Linus Torvalds: Right. And thatís what I kind of wanted to get up to is that innovation is way too over used a word and people seem to think itís something wonderfully good and the fact is it was Thomas Edison who said, ďItís 99% perspiration, 1% innovation,Ē right?

Innovation is not that important and it shouldnít be because in the end what you want to do is you want to get the work done and 99% of that is really Ė itís not about innovation.

Jim Zemlin: Yeah. In some ways, if you look at an area where people want to see innovation power management, right, to retain Ė for environmental purposes or just financial purposes, this is an area weíre sort of slugging along and this is where open source can be very successful.

Linus Torvalds: People expect open source to Ė well, maybe not expect, but open source and Linux in general has gotten the name of having very fast development and thatís not actually even true. Itís not that developing fast, itís more that itís very wide and itís across the board.

And itís across the board exactly because you have thousands of companies involved and each of those companies tends to push their own agenda so you have lots of development happening at the same time, so in that sense itís fast. But on any particular front, itís not necessarily fast.

So, the whole open source model, I think, is much more like science and much more of a Ė itís incremental and it turns out incremental is actually much better than innovation because innovation is kind of – youíre jumping all over the map, and once in a while you hit the golden nugget, whatever, I have no idea what you hit.

But if you just incrementally improve on something, you will get there eventually. One analogy Ė the science one is one of my favorites – but one analogy is also the auto industry 40 years ago and how non-innovative Japanese companies that just plodded along, how they were looked down upon by the true innovators in the U.S. auto industry.

And look Ė who was it that actually ended up changing the auto industry?

Jim Zemlin: It was the incremental improvements over time that really were the innovation.

Linus Torvalds: Right. Yeah, yeah.

Jim Zemlin: Letís talk to conclude about the future. Where do you see Linux Ė and I know you donít think too far ahead about this, but Iím going to prod you to say five years from now.

Is the world Windows and Linux? Does the operating system become irrelevant because everythingís in a browser? Is everything through a mobile device? Is there a new form factor that comes out of mobile tab? Where do you see things going?

Linus Torvalds: I actually think technology in the details may be improving hugely, but if you look at what the big picture is, things donít really change that quickly. We donít drive flying cars. And five years from now we still wonít be driving flying cars and I donít think the desktop market or the OS market in general is going to move very much at all.

I think you will have hugely better hardware and I suspect things will be about the same speed because the software will have grown and youíll have more bling to just slow the hardware down and it will hopefully be a lot more portable and that may be one reason why performance may not be that much better just because you canít afford to have a battery pack that is that big.

But I donít think the OS market will really change.

Jim Zemlin: Virtualization. Game-changer? Not that big of a deal?

Linus Torvalds: Not that big of a deal.

Jim Zemlin: Why do you say that?

Linus Torvalds: Itís been around for probably 50 years. I forget when IBM started offering virtualization on their big hardware. Maybe not 50 years, but itís been all around for decades and itís very interesting in niche markets – I think the people who expected to change things radically are just fooling themselves.

Iíd say that the real change comes from new uses, completely new uses of computers and that might just happen because computers get pushed down and become cheaper and that might change the whole picture of operating systems.

But also, Iíd actually expect that new form factor is in new input and output devices. If we actually end up getting projection displays on cell phones, that might actually change how people start thinking of hardware and that, in turn, might change how we interact and how we use operating systems. But virtualization will not be it.

Jim Zemlin: Everybody calls everything Linux. What is Linux? And this may have something to do with standards in terms of how people define a Linux desktop or a Linux server, but, you know, the fact is and you own the Linux trademark, you have allowed broad usage of that term. Lots of people can call lots of different things Linux.

Linus Torvalds: I think itís wrong to try to kind of compartmentalize it to Linux is just a kernel or Linux is so-and-so.

The kernel is useless without all the programs running on top of it. Are the programs running on top of it Linux? No. Open Office is still Open Office, even when itís not running on Linux. But at the same time you really shouldnít pick out one part. I mean, a huge part of the whole Linux thing is all the development and all the programs that went around the kernel. So, just limiting it to the kernel is wrong too.

Jim Zemlin: But people will say when they think of Linux they think, ďI use Windows, I use Mac, I use Linux,Ē which is the kernel and everything thatís around.

Linus Torvalds: And everything around it, yeah.

Jim Zemlin: But even there, people can define that in different ways so that different Linux versions are incompatible and then you start to get to a point where people are saying, ďWell, I was using Linux but this Linux application didnít work on my Linux and it works on that Linux,Ē and it becomes this sort of confusing world.

What do you think of that? Do you think thatís good? Do you think thatís bad?

Linus Torvalds: I donít think itís good or bad; I think itís reality. Reality {laughter} is confusing and when we use a word like Linux in different contexts it means different things. As a programmer, it tends to mean just the kernel because when you look at it as one program and actually as a code base, then itís the kernel.

But then to a person who really compares it to Windows, then itís a whole infrastructure and itís all the companies that go along with it and maybe itís the philosophy and everything else, so.

Jim Zemlin: So, most people think of it that way and from that aspect, do you think itís good for Linux to have a reasonable common definition of server or a desktop in order to compete with Windows? In order to allow people to target Linux in a federated way as opposed to just target specific versions of Linux from that perspective?

Linus Torvalds: I think we need to make sure that we donít fragment the market unnecessarily. On the other hand, itís clear that all the vendors always want to have their own identity and theyíre never going to sell the exact same thing and so two different versions of Linux are still going to be called Linux but theyíre not going to be identical.

So, itís balance, right? I think actually weíre much better off now than we were, say, ten years ago. People talk about the KDE versus Gnome desktops and how programs look different even when they work on the same desktop. One may have Ė youíve been using the KDE widgets and the other one with Gnome ones and they donít look the same, but back ten years ago we had the whole SysV unit versus BSD unit and you simply could mix and match almost anything in the whole system because that was such a big deal and none of the programs from one world expected things to be in completely different locations than they were in the other one.

And so weíve already moved up the kind of common base much, much further than it used to be and there will always be things that are different Ė I mean different versions.

Jim Zemlin: The challenge is finding the balance.

Linus Torvalds: Right. I donít think weíll ever be in a place where everybodyís happy, but I do think thatís pretty much just inherent to different people have different priorities.

Jim Zemlin: Any final advice for an organization or an individual that wants to get involved in working on the Linux front?

Linus Torvalds: I get the question of ďWhere should I start?Ē fairly often and my advice is just donít even ask that question. Itís more like if youíre not interested enough in one particular area that you already know what you want to try to do, donít do it. Just let it go and then when you hit something where you say, ďI could do this betterĒ and you actually feel motivated enough that you go from saying that to doing that, you will have answered that question yourself.