FEATURES & COMMENTARY
San Diego, CA — Linus Torvalds would make a lousy dictator, and it’s hard to imagine him as a corporate chief executive. Dan Gillmor reports that he laughingly calls himself lazy. He avoids making decisions about the growing, worldwide movement he leads – a movement that has turned him, in the eyes of many, into an icon of the Information Age.
“The best result,” he says, “is still what happens naturally.” Torvalds is the man who wrote a pivotal piece of software almost a decade ago – the code that became the core of the GNU/Linux operating system, better known as just plain Linux.
I was curious about what it took to guide a movement that started off as anything but a crusade. Torvalds’ answers were illuminating. The Linux movement is an army of volunteers, mostly unpaid
Leadership in the Linux universe is “getting people to trust you enough that they take your advice,” said Torvalds, who remains as strikingly soft-spoken and, yes, humble as he was when I first met him in Finland almost 4 years ago. (I should add that he’s developed quite the performer’s flair for certain tasks, such as giving keynote speeches at conferences.)
“Good leadership is always a matter of making people want to do things because of their own reasons rather than due to any external pressure,” he says. “And, probably, realizing when you’re wrong and deciding that it’s not worth it.”
Keep the word “trust” in your mind. It imbues everything about the Linux process as it has developed over the past decade. And in an era where technology is having such a massive impact on everything, it speaks to the way leadership itself must evolve.
Torvalds was a college student in Helsinki, Finland, back in 1991 when his role in the project first took shape. Building on work begun in the 1980s by the Free Software Foundation, which wanted to develop a free version of the Unix operating system, he wrote a “kernel,” the central component of any operating system and the core of what became Linux.
Leaders make decisions. What Torvalds did next was the linchpin of Linux’s future: He posted the kernel on the Internet and invited people to make suggestions and contributions. Today Linux is the poster child for what has become widely known as the “open source” software genre, in which the source code, or programming instructions, is openly available to others who then modify it and give their improvements back to the larger community.
Posting the kernel publicly “was obviously the best decision” in the entire process, he says. “But it was such a small one at the time. It only turned out to be a big one much, much later.”
From a tiny group of people at the start, Linux development ultimately drew in a global community of programmers. How, I ask, did all this come together? What was the process?
“It just happened by a kind of natural selection,” Torvalds says. “I’d been doing Linux as my own personal project, and I put it out (publicly) just because I wanted comments and because I thought that somebody else was interested, and, obviously, partly because I thought it was a really interesting project and it’s a way of just showing off.”
People tried it out. “Somebody said, ‘I need this feature,”‘ he says. ” And I took it not as a challenge, but more as (realizing), ‘Oh, that’s an extension I should have done anyway, or that’s one I’d maybe never use myself but I see why people would like that…’ ”
“So there were a lot of things that people asked for and also implemented themselves. They started out just asking for small things and then asking for larger things or doing them themselves, and none of this was very planned for. The leadership part came by default, because nobody wants to make decisions, right? Things just happened, and it wasn’t really planned. And I was the obvious person for it.”
The Linux development team would never fit into a corporate organizational chart. “It started out very flat – no organization, no hierarchy, because there weren’t that many people involved,” Torvalds said. “It was mainly an issue of my having told people, ‘Hey, I’m working on this project…’ I did it all by e-mail and, more than that, I did it all by personal e-mail…It was all one-to-one.”
It didn’t stay that way, of course. As the complexity grew, personal e-mails evolved into mail lists, where everything anyone posted to a single, central address automatically got delivered to everyone on the list. Then came public Internet discussions on Usenet newsgroups. Today, Linux developers communicate in a variety of online forums and even hold huge offline conventions.
Linux, like all operating systems, is a kernel plus a conglomerate of sub-systems. Think of the ongoing project, in a sense, as a house that’s constantly being expanded and renovated. Torvalds maintains control over the kernel – the foundation and basic floor plan – for the pre-release versions of Linux, the versions that aren’t considered stable enough for general distribution. Other people are in charge of fit and finish details, and in fact there are competing versions of those parts. But it’s essential for the kernel and central parts of the architecture to be consistent.
“I’ve actually tried to divest myself of the things that I wasn’t all that interested in,” Torvalds says. “So first it was getting rid of the user level” – external parts of the system that end users deal with directly, as opposed to the deep-down, internal code. And the moment somebody stepped up and said, ‘Hey, I think you should handle this that way,’ I said, ‘Go ahead! Do it!”‘
As Linux evolves, someone always “steps up and becomes the leader for a particular sub-system,” becoming what is sometimes called a ” maintainer” of a piece of the project. “Sometimes it’s one person having multiple sub-systems, sometimes it’s just one person for one sub-system. And it’s very much an organic process…It’s not as if there has been any voting (on who should be a maintainer). People just know who’s been active there and who they trust, and it just happens.”
The natural world is far from serene, as Darwin noted in his observations on evolution. Competition is a vital part of the Linux process, too. “Without rivalry – at least the potential for rivalry – you don’t get anything done,” Torvalds says. “So we’ve often had cases where there’s been two people maintaining very similar kinds of things, and what ends up happening is that I often accept both of them …and see which one ends up getting used. Sometimes what happens is that the two end up being two completely different things–they just evolve into different directions, and suddenly they aren’t very similar any more and they have very distinct uses.”
This kind of thing happens frequently with software drivers, which communicate with computer hardware such as disk drives, video cards, network connectors and the like. Hardware evolves, too, and a driver that worked well on several similar network cards, for example, may need revision.
If rivalries are common, bitter disputes are not, says Torvalds, who becomes the arbiter in those cases. Sometimes someone will post a ” patch”–code that changes some part of the system–that conflicts with someone else’s code.
“The only time I remember it getting nasty – (where) people started sending patches that fought the other person’s patches – I just told them ‘OK, I’m not accepting patches from either of you, and this driver’s dead as far as I’m concerned.’ A few months later, one of the maintainers had just lost interest.”
That contributor may have left the team with bad memories, “but the problem went away on its own, basically. So I made one decision. It happens, but it really is very rare.”
A leader who rarely makes decisions? What a concept. “I’m lazy, anyway,” Torvalds laughs. “Part of what I do is more of a ‘what I don’t do’ – trying to avoid making too many decisions, because eventually the best result is still what happens naturally.”
One of the things Torvalds puts in the “what I don’t do” category has been vital to the movement: “not being political with any of the (Linux) vendors.” That’s going to be difficult to maintain, I suggest, as Linux companies such as Red Hat and VA Linux Systems get bigger and more powerful.
“It hasn’t actually been that hard,” he says. “To some degree, the hardest part has been saying no to money (from vendors that want special treatment). There is so much money involved that sometimes…that’s the hardest choice to make, to say, ‘No, I am not going to do that.”‘ (While Torvalds hasn’t gone to work for or endorsed any Linux vendors, he has accepted stock options from several unnamed companies that wanted to reward him for his years of effort.)
The advantages of the Linux development method are plain enough. The expanding army of volunteers fills in holes and constantly refines the software. The project “scales well,” as Torvalds says in the jargon of the technology industry.
The major disadvantage, he observes, is that “some changes actually take a longer time. Linux is very well known for having evolved very quickly, but what really happens is that this kind of less organized, more networked way is really good at just tackling a lot of different problems.”
Because of its nature, Linux doesn’t have anyone, not even Torvalds, with the power to turn the project on a dime and say, “This is how it will be done,” and get them to do it. “And that’s when you get great things done sometimes – the Pyramids, the Great Wall of China, things that are still considered to be hard to do several thousand years later. So to some degree, dictatorship is wonderful. But it falls flat on its face because, while it has an upside, it also an immense downside, which is that when the dictator makes a mistake, there’s no safety net.”
The “do it my way or you’re fired” kind of leadership of the past has limitations in the Internet era, where creativity is a growing part of the average job description and a strong economy gives workers many job options. Coercion not only is less effective, but less efficient, in many ca ses. And with the Linux volunteer developers, it’s less than useless–it’s downright counterproductive.
People are motivated, Torvalds says, by survival, social order and entertainment. “You always start out being motivated by survival,” he says. “Once your survival is secured, you move up to social order–love, marriage, relationships.” When you feel secure with social order, you crave entertainment.
More than TV, I hope?
“Oh, yes. This is chess, this is going to the moon just because nobody’s been there before. This is Einstein kind of entertainment, too, where the entertainment is trying to figure out how the world works. But it’s also Linux kind of entertainment.”
“I refuse to provide people with the actual survival part, but these days Linux obviously does that, too,” with the explosion of commercial interest in the software and strong demand for Linux programmers. “But what Linux always has done – you get both the social part of having real social interactions with other people, even though it’s through e-mail, and you get the entertainment part. And you get it for free.”
============================================================