The accidental leader
Linux creator Linus Torvalds runs a global empire from his basement, rarely sees his colleagues and works mostly in his bathrobe. And it’s still more organization than he likes.
By Christina Williams
In 1991, Linus Torvalds, a Finnish hacker, started developing an operating system with the intent to make it available for free to the world. Since then, Linux has evolved from a counter-culture technology to a stock market phenomenon to a cost-effective choice for running corporate computer systems. These days, this open-source operating system has gone mainstream, and economic development types in Oregon hope to capitalize on its popularity by branding the state as the center for open-source activity.
Two and a half years ago, Torvalds, a rock star in tech circles, moved his family to Oregon and took a job with Beaverton’s Open Source Development Lab. He’s still doing what he started at 21. Working in a virtual world with a small army of volunteer programmers who fix every bug and craft each improvement, Torvalds maintains the core, or kernel, of Linux. Oregon Business’ Christina Williams sat down with Torvalds recently to see what he’s up to, virtually and otherwise.
Oregon Business: How are you adjusting to life in Oregon?
Linus Torvalds: My family is part of the reason we left California. We were a bit outside the Bay Area because we wanted to have a big house for three kids but we had neighbors that we just did not know because everyone was working, working, working. The kids went to private school and we shuttled them 20 minutes each way. Everything was just far away enough that it wasn’t much fun. And now we live much more centrally and downtown is literally 10 to 15 minutes away. We don’t go that often, because with small kids, it’s not like you actually go. But the kids run between the houses and we know our neighbors and I have poker nights and the kids have sleepovers. People here are so relaxed.
Did that surprise you?
No, it was part of the plan. To get out of the crazy Bay Area. We knew the weather wasn’t going to be great.
Do you consider yourself part of the Oregon business community?
I’ve never considered myself part of the business community. I mean, the Oregon community is fine. But business, that’s not me. I go to conferences occasionally. Like recently I was at a conference in Rome, talking to VPs of big companies, but that’s actually not who I work with. What I do is I sit in my ratty bathrobe downstairs and I talk to other engineers. So I’m not a part of any business community whatsoever. I actually don’t go to that many conferences.
I’m sure you could wear yourself out going to all the conferences that you get invited to.
I did. There was one year where I was traveling half the year — out of 365 days, I was away 180. And I didn’t even like public speaking. So I decided it was time to stop going to so many conferences. I didn’t stop cold turkey, but I stopped.
Early on, did you feel like it was your duty to represent Linux?
That was part of it. I couldn’t foist it off to anyone else initially. And now — I’m not that great at public speaking, there are people who are better at it. So I go to two technical conferences a year and one or two of the high-level things.
For people who only have a vague idea of what Linux is and how it’s developed, how do you describe it?
An operating system is hard to describe because it doesn’t do anything on its own. It’s not supposed to. It’s just supposed to be a common layer between the machine and the programs which actually really do something. What I do is I lay the infrastructure for someone getting real work done. The cheesy, nontechnical comparison is the roadway. It’s the roadway, it’s the sewers, it’s all the crap you need to get your work done every day that you never think about, unless it’s messed up. That’s part of why I think open source works really well. It’s something that everybody needs and not a lot of people really should care anything about. I care because it’s interesting from a technical angle, but not a lot of users should care.
I’ve heard you describe what you do as playing the “benevolent dictator” of Linux, telling theprogrammers who work on the code what to do. Are you still comfortable with that label?
I don’t know. I don’t even so much tell people what to do. I really don’t. Because most of the time people know what I want to do. And, in fact, if they didn’t, I wouldn’t often know what to tell them. What I end up doing is more communication and keeping it all together. So I’m a manager without the human resources part. I don’t support people in the sense of the logistics. But I manage the technical side and I manage their output. I’m the place where people come to make everything all fit together. And on the other hand, the benevolent dictatorship part is somewhat true because at some point you just have to say what goes in and what doesn’t. Somebody has to do that and you can do it different ways.
On some projects — both in open-source and in commercial companies — you have this process that you go through for vetting stuff where sometimes it’s more like voting. In order for changes to happen, you have to have five people agree about it. I’m not a big fan of the voting thing. I’m more of the opinion that he who actually does the work gets to decide. It’s not a popularity contest.
How many active Linux developers are there?
I’ve actually done the statistics, but they’re half a year old. At that time, there were basically 1,000 people who had submitted code just to the kernel [the core of the Linux operating system], which is probably one of the biggest projects.
And what are these 1,000 programmers doing?
I think there are about 50 people who do about 80% of the work. It’s very skewed. So it depends on how you count. If you count the people who are the main developers, it’s 50 people. If you count who develops at all, it’s 1,000. Then if you look at who does a lot of testing, those wouldn’t show up in my statistics. The Linux companies, or companies that are somehow involved in Linux, do a lot of the testing and then they send in reports [to the developers] about problems or performance issues they find with the operating system. It’s not a very glamorous part of the system. It’s actually the really boring crap that I would never want to do. But it makes things work, so it’s important.
It’s such an amazing example of collaboration. But it’s got to be messy. Does it work seamlessly?
It actually does. If you come from the traditional corporate setup and you know that works and you compare that to the Linux world, the Linux world looks completely disorganized. Because it is. I have never put anything on paper. There are a few guidelines, some of them tongue in cheek, about how you’re supposed to act as a maintainer and what works and what doesn’t. Humor works when you talk to people. But there’s never been any real organization.
The reason I think it works so well is that it’s all self-organized. For people who are doing sociology studies, self-organizing is actually a huge turn-on. Linux doesn’t work the way a traditional organization works, but it does work the way human social interaction works. For example, I don’t actually talk to 1,000 people because that’s not how humans work. So I have five to 10 people who I work with very closely, the way people tend to have a couple of best friends. And they have five to 10 people they work with. Then there are people I meet and I take a patch [a change to the code] from but it’s not like we’re buddies. And I think it works because that’s very basically how human beings are wired up to work. The whole hierarchy model — the fact that works is the strange part because that’s not how people are mentally wired, to take orders like that. I mean we’re pack animals, but we’re not that kind of pack animal.
So the people you do work closely with, how often to you see them face to face?
Almost never. At the two technical conferences maybe. There’s a couple in the Portland area so I’ve had breakfast with some of them, and I’ve had one dinner with them in the last two years and I’ve been to one of the beer fests they’ve had. Occasionally at conferences you talk things over, but you usually talk about it over a beer.
So no formal meetings.
No, that doesn’t work. Even if you start working face-to-face it might seem efficient, but from a technical standpoint it’s horrible because speaking is not actually a good way to talk about details. It’s much easier to e-mail someone an example of what you’re really working on. Also, if you do face-to-face, you automatically put a wall between the group you’re meeting with and everybody else. And that’s just stupid because everyone else is actually a much bigger community.
Has this collective development model evolved over time?
The kind of overview I’m talking about now, that’s always been there. But there are a lot of other details. We have completely changed all the development tools several times. We’ve made it easier to track things together. We’ve changed a lot of details basically. It’s very different when you have just 10 people working on it than when you have 100 people and people come and go; you can’t use the same detail model. But the freewheeling part has always been there.
Do you consider yourself a mentor to the younger developers?
(Laughing) I hope not! You know, I’m not a big believer in this whole leadership thing. I’m supposed to be this leader and this important person and I just know myself and I’m not that. What I am is I’m lazy. And I’m good at communicating and that means that, yes, I do mentoring, but I don’t do mentoring because I want to improve somebody else. I do mentoring in that I try to explain what I see as the problem and I try to explain what I see as the solution so that somebody else can actually do the work. You could see it as being a mentor and maybe basically it’s the same thing, but the approach is different. I really don’t think leadership works. But what I’ve done, some of it consciously and some of it just because things happen, is to create this environment where people just enjoy working together. And that’s more important than just telling people what to do or how to do it — laying the groundwork to make people want to do it on their own.
But some people would say that’s leadership.
Right. I’m more against the word leadership because the word leadership implies telling people what to do.
So could this whole thing run without you?
Yeah. It often does. And I take all the credit anyway. The biggest part is having gotten the ball rolling. And I end up doing a lot of the integration, but I couldn’t do it all, which goes back to that lazy thing. All good programmers are lazy because the whole point is to get the computer to do something for you so that you don’t have to. I used to describe how we work as a hierarchy, where I was at the top and I had a few people under me and they had a few lieutenants under them. But that’s not actually how it works. It’s more of a network and some people have much stronger ties than others and by having stronger ties, they’re better at doing things together. To some degree I have the most ties, but if I’m not there, things don’t really change.
Has your philosophy on your work changed over time?
Sure. When I started, I didn’t think about any of this. I did what I did because I was interested in the technology and I made it available so that others could play with it because I thought it was fun. It was an interesting project. People started sending me patches and it just started working. For the first few years, nobody thought about it really. And these days people take open source for granted — they know that it works. The question I get now about open source is: Can you tell me how it works? That wasn’t true 10 years ago. Then, I was getting questions like: How can it possibly work and how can you be so naïve that you think people being nice to each other could work? A lot of what I think about open source is really about rationalizing why it works. Which is how I think most people think anyway. Man is not a rational animal, man is a rationalizing animal. Almost anything you think about, you’re trying to explain after the fact. Another word that I hate that is way too common in the tech world is visionary. Visionary people are usually really annoying and they have this notion of what the world should look like and they try to explain why it should look like that. I’m not a huge fan of that.
But I’m sure you’ve been accused of being a visionary.
Yes, and every time someone says, “That’s visionary,” I say no, anti-visionary. Just do it, like the old Nike slogan. Some things work and some things don’t. The ones that work, you usually can’t figure it out beforehand anyway. If you could figure it out beforehand, it would be so trivial that someone else would have done it already. And that’s very true of technology in general. If you claim to know what’s going to happen, you’re just full of shit.
Has the adoption of Linux and open source, where we are today, surprised you?
It’s all been fairly gradual, gradual but fast. So if the question is, “Did you ever expect this to happen?” The answer is no. But that doesn’t imply that it’s surprising just because I’ve been doing this for 15 years and that’s a lot longer than most people do one single thing. That’s more like rearing a child than holding a job. It hasn’t been overnight.
What’s your role at OSDL? Do you spend much time there?
I go to quarterly lunches. I’m not good at meetings, either. I hate meetings. So I go into the office occasionally, but all the work I do is by e-mail. The engineer I work closest with, Andrew Morton, is also employed by OSDL and he lives in Palo Alto. We work under the same umbrella, but that doesn’t mean that we see each other ever.
You mentioned you’ve been doing this for 15 years, and you’re young, just 36. Do you think you’ll move on from this eventually and do something else?
I thought I’d do something else 10 years ago. Fifteen years is a long time but 50 years is much longer. So, yes, probably I will do something else but I don’t know what it is right now. I don’t have any plans. I’ve never had any plans. When it gets to the point where people either don’t trust me because I’m just too old-fashioned or I just don’t feel it’s very interesting, things will change.
Join the discussion about leadership. Send feedback to leadership(at)oregonbusiness.com?subject=Linus%20Torvalds%20article%20in%20June%202006%20issue"> leadership(at)oregonbusiness.com.