Interview with Linus Torvalds, creator of Linux



As many DistroWatch Weekly readers will be aware, I recently spent a week in Hobart, Australia, at Linux.conf.au. The popular annual conference draws many big names from the open source world, including Linus Torvalds (pictured on the right), chief architect and creator of the Linux kernel. Linus was a Finnish university student from Helsinki in 1991 when he released the first version of the kernel he originally called 'Freax' (a play on 'Free' and 'Unix'). " I'm doing a (free) operating system (just a hobby, won't be big and professional like GNU) for 386(486) AT clones... It is NOT portable (uses 386 task switching etc.), and it probably never will support anything other than AT hard disks, as that's all I have :-(, " Linus wrote to the comp.os.minix newsgroup. Ironically, almost 20 years later Linux supports more hardware out of the box than any other operating system and is the backbone of many corporate giants such as Google and Amazon.



At LCA this year I was fortunate enough to meet up with Linus and have a chat. Among other things, he confirmed that 'that blog' really is his and agreed to answer some questions for our DistroWatch readers.



* * * * * DW: Linus, thank you very much for finding the time to talk to us during your busy schedule. It's greatly appreciated! I'm sure that many of our readers will be interested to know which Linux distribution you use and why? What do you like about it and what do you think needs improvement? Do you use the same distribution for your work machines as well as play machines?



LT: Since I only really "use" a very limited set of programs, my choice of distribution is pretty arbitrary. My main requirement is that it's fairly easy to install and keep up-to-date, just so that I can mostly ignore it.



And the "keep up-to-date" part really means that I want the distro itself to be up-to-date and have good coverage (including things like making it easy to get Flash, MP3 and other plugins); otherwise it would just degenerate into me having to work at getting/compiling user-land components that I really don't care too much about.



And yes, I want to use the same distribution for my own work machines as I end up using for the other machines in the household (i.e. kids and wife), for all the same reasons - I care about the kernel (and a very few other programs), the rest I just want the distribution to handle for me.



As an example of some small detail that I want the distribution to handle for me, and that I want to get handled in a timely fashion: I ended up upgrading our DSLR [camera] after our old one was finally three generations behind. So I expect the distro to have support for RAW format, and I expect it to be recent, and support the latest-generation UFRaw [program]. And again - if it isn't, the distribution is worthless to me.



At the same time, I want to be able to feel like the distribution isn't just a random pick of bleeding-edge programs gotten out of the 'random SVN repo of the day' kind of thing. Mistakes will happen, but I want to feel that the distribution tries to be up-to-date without doing totally crazy things.



What that results in is that I want one of the "large enough" community distributions that I can trivially download, install and update over the net, and that is proactive but not crazy about updating. That pretty much narrows it down to openSUSE and Fedora, with Ubuntu being a possible third one.



And for the last few years, it has been Fedora.





DW: Since Fedora has dropped support for KDE 3.x in recent times, what desktop environment are you using now? Have you made the move to KDE 4.x, or dare I say it, GNOME? If so, how have you found the transition?



LT: Since I'm on Fedora, I got hit by the (bad) transition to KDE4, and as a result I've been using GNOME for the last year or so. It's still somewhat painful, more so when I'm on my laptop, mainly for the same old reason: you cannot fix the mouse buttons in GNOME. (The reason this hits me more on the laptop than anywhere else is that most laptops only have two buttons, making the middle-button press much harder. And middle button is what you need for the 'send to back' window action.)



I wrote the patch (including even the graphical configuration management), I sent it in, and it got rejected as "too complicated for users". Frickin' idiots (and I'm not talking about those alleged users).



But right now, KDE is worse. I'd like to explore alternatives, but if you've followed my answers this far and are perceptive, you'll probably already have figured out that the programs involved aren't on my list of things I care about that much.



I'm well known for disliking GNOME, but it's not the "using it" part that I dislike as much as the apparent mentality of the GNOME people who think that all users are idiots and then limit what I can do with it for that reason.



See the difference?



So I'll use whatever works best on my machine and in my workflow, and a window manager is not something I really care deeply about.





DW: The release of the Eee PC has introduced Linux to an even wider range of everyday consumers. What are your thoughts on Linux running in this consumer space and do you think it will help Linux gain more traction on the desktop? Do you own a netbook?



LT: I actually took an Eee PC with me to Tasmania for LCA, not because it's a 'consumer device', but because I've actually long been in the camp of people who think that laptops should be small and light and not to be used as desktop replacements. So I think that netbooks are really just 'laptops done right'.



And yes, I think Linux fits pretty well in that space, partly because Linux works better on low-end hardware than say, Vista, but partly because I think it's also a good way to enter the "mindshare" for people who, like me, don't necessarily want a desktop replacement laptop, but simply a small thing to take with them on trips. People don't necessarily expect the same thing out of a netbook as they expect from their desktop - and I'm not talking about just performance. And those different expectations may make it easier for people who otherwise are very tightly attached to Windows to say "OK, I want something small and easy for just travelling, and if it doesn't run exactly the same apps that I have on my desktop I don't care".



So just the change in form-factor may end up being a way for people to be willing to learn something new, and thus be introduced to Linux when they might not otherwise have been ready to take that step.





DW: Do you think having so many distributions is a good thing? Should a collaboration effort exist for a single "new user orientated" distribution, or should new users just get used to the "Linux way"?



LT: I think multiple distributions aren't just a good thing, I think it's something absolutely required! We have hundreds of distros, and a lot of them are really for niche markets. And you need that - simply because different markets simply have different requirements, and no single distro will take care of them all.



Of course, people then often say "well, do you need multiple distros for the same market" when they think about the normal desktop market and just look at the whole issue of having openSUSE/Fedora/Ubuntu all in that same space. But it really isn't that different - you still have the distributions looking at and concentrating on specific issues, and you do want the competition - and letting the markets decide which issues are the ones that really dominate.



In addition, having multiple players just keeps everybody honest, and allows you to compare them. It may all look a bit messy and complex, but I'd much rather have a multi-party system over a single-party one. Even if it's more complicated.





DW: Also, what barriers for entry do you think still exist which stop new users from trying or sticking with Linux on the desktop? Once these are overcome, do you think we'll then see "the year of the Linux desktop"?



LT: I don't think it's one thing, and I don't think it's also ever going to be "a year". It's a combination of lots of small things, and it's this constant slow steady drive towards a more complete solution, and getting people to slowly try out something different. It just takes a lot of time.



People often see open source development as being something very fast, but it really isn't. Yes, there are huge developments going on at an incredible rate, but at the same time, quite often any particular issue moves very slowly indeed. Think about (to pick just a totally random example that has been discussed over the years) something like the GIMP user interface. Has that changed as quickly as people have wished for? Should it?



And at the same time, quite often it's really an issue of people, not technology. You sometimes just need to get people used to a new idea and a new way of doing things, and that takes tons of time too. Maybe the GIMP interfaces really aren't as horrid as they are, and it's just people who should change? It does happen.



To take an example from my own sphere of development - with git, one of the biggest hurdles used to be how different it was from what people were used to, and people who wanted just another CVS or SVN felt it was really hard to get your head around it. It used to be a constant issue that required explanation on the git mailing list.



Now, the git people were obviously convinced that the whole distributed issue was so technically superior that you really needed to understand it, and that there was no way to make git centralized to match the expectations of people. So for git, it really had to be about trying to teach people, even if to some degree it's much harder to change peoples' expectations to match the software than it usually is to change the software to suit people.



Did it work? It seems to have. The whole thing about distributed SCMs and how it quite fundamentally changes how you have to think about some issues does seem to be calming down. People are getting used to git, and we're seeing less noise about how it's such a difficult learning model with a steep learning curve. But it literally took time. Lots of time. And it's still ongoing.



And that example is from something pretty technical, where there really were some pretty damn strong arguments for it. When it comes to people getting used to a much fuzzier "whole desktop experience" with all that implies, it takes even longer.





DW: How much do various distributions influence the direction of the kernel?



LT: I really can't give any quantifiable numbers, but distros tend to influence things pretty directly by simply having developers attached. You'll find quite a few big-name kernel developers working for Red Hat and Novell.



The other thing that distros do is to interface with the debugging: one often overlooked aspect of a distribution is the way it handles problem reports from users, and how it feeds those upstream. Not just to the kernel, by the way. A distribution that is actively involved in bug resolution and in user issues is very obviously going to influence the upstream project quite a bit.



Again, distributions can obviously do that well or badly. One of the reasons I like using Fedora is that I know that they are particularly active in both having developers and in trying to also track the latest kernel fairly closely and be actively involved with bug reporting.





DW: You have been quoted as saying that releasing Linux under the GPL was the best thing you ever did. What shape do you think Linux might have taken were it not for GNU userland tools or the GPL?



LT: It's hard to imagine, really. I did have a license before the GPL, which was a very strict "give all changes back under the same license, and no money can change hands", and the first part of that license really was the same as GPLv2 in spirit, if not in legal verbiage. So it's not like the GPL is "unique" in that sense.



The same goes for much of the GNU userland - there were tons of BSD userland, and back when I started Linux, the BSD versions were arguably the stronger ones. The exception there was really the compiler: GCC (along with the Binutils suite) was pretty unique, and I very much recognized that rather early on. One of my big reasons to choose the GPL was the recognition of how important GCC had been for Linux.



But the whole speculation of "what if" is really pretty hard. Impossible, I'd say. A lot of the issues with license choice is about the network effects it implies - the same way I chose to switch to the GPL partly due to GCC, other projects choose their license due to what they see around them, and so you see this huge accumulation of projects around a few licenses. And that's not necessarily because the licenses themselves are so special, but because of the network effects.



What would have happened without the GPL? Who knows? Another license like it might have sprung up, and gathered that kind of following. Or not. We'll never know.





DW: Can you remember the very first patch you received for Linux? Were you expecting it and how did it make you feel?



LT: I don't remember the exact first patch, and in fact I do remember how, for the first few months, I tended not to really "apply" patches directly as much as just rewrite them. It took me a while before I was really comfy just applying other peoples' changes to what was my rather personal project. Of course, it depended on the patch (and still does, to a small degree - it still happens that I get a patch and decide that I want to do what it does, but that it needs to be done in a different way).



But the timeline must have been that I started getting patches around November 1991 or so. It didn't happen immediately after I released the first version. It takes some time for people to look a project over and actually send changes.





DW: What are the most exciting things coming up in the Linux kernel?



LT: The things I personally care about tend to not even be on the radar of most people. The changes to the very lowest levels of the suspend and resume model are an example of something I look at closely and think are interesting. Most other people don't think that kind of thing matters - at least as long as we don't break their laptops suspending ;) Of the actual stuff that has any visible impact to users, I guess the interesting area is that we're getting all these next-generation file systems and they're going to battle it out. "ext4 vs Btrfs in the thunderdome."





DW: And lastly, what do you do for fun?



LT: Mostly reading.



DW: Thank you again for your time and for all your work, Linus. We wish you all the very best for the future!







Linus Torvalds talking with Chris Smart at LCA 2009

(full image size: 1,900kB, screen resolution 1,920x1,440 pixels)