Just for Fun : The Story of an Accidental Revolutionary (16 page)

Read Just for Fun : The Story of an Accidental Revolutionary Online

Authors: Linus Benedict Torvalds

Tags: #Autobiography and memoir

BOOK: Just for Fun : The Story of an Accidental Revolutionary
11.62Mb size Format: txt, pdf, ePub
Boy, was I premature. Not to mention clueless.
Networking is nasty business, and it ended up taking almost exactly two years to get it right, to a form where it could be released. When you add networking you suddenly introduce a host of new issues. There are security issues. You don’t know who’s out there and what they want to do. You have to be really careful that people don’t crash your machine by sending it bad junk packets. You’re not in control of who’s trying to contact your machine anymore. Also, a lot of people have very different setups. With TCP/IP the networking standard, it’s difficult to get all the time-outs right. It felt as if the process would drag on forever. By the end of 1993 we had an almost usable networking capability, although some people had serious problems getting it to work. We couldn’t handle networks that didn’t have 8-bit boundaries.
Because I had been overly optimistic in the naming of version 0.95, I was caught in a bind. Over the course of the two years it took to get version 1.0 out the door, we were forced to do some crazy things with numbers. There aren’t many numbers between 95 and 100, but we continually released new versions based on bug fixes or added functions. By the time we got to version 0.99, we had to start adding numbers to indicate patch levels, and then we relied on the alphabet. At one point we had version 0.99, patch level 15A. Then version 0.99, patch level 15B, and so on. We made it all the way to patch level 15Z. Patch level 16 became version 1.0, the point where it was usable. This was released in March 1994 with great fanfare at the University of Helsinki Computer Sciences Department auditorium.
The period leading up to it had been kind of chaotic, but nothing could put a dent in Linux’s popularity. We had our own Internet newsgroup, comp.os.linux, which grew out of the ashes of my flamefest with Andrew Tanenbaum. And it was attracting hordes. Back then the Internet Cabal, the folks who more or less ran the Internet, kept unofficial monthly statistics on how many readers each newsgroup attracted. They weren’t reliable statistics, but they were the best information available on the popularity of your site—in this case, how many people were interested in Linux. Of all the newsgroups, alt.sex was the perennial favorite. (Not my particular favorite. Although I did check it out once or twice to see what the fuss was about, I was pretty much your typical under-sexed nerd, more eager to play with my floating point processor than to keep abreast of the latest reports from the sexuality front—newly discovered lovemaking positions or reports from heavy petters or whatever else it was that so many people were talking about on alt.sex.)
With the Cabal’s monthly statistics, I could easily track the popularity of comp.os.linux. And trust me, I kept track. (While I might be somebody’s idea of a folk hero, I’ve never been the selfless, ego-free, techno-lovechild the hallucinating press insists I am.) By the fall of 1992, the estimates for our newsgroup were on the order of tens of thousands of people. That many people followed the newsgroup to see what was going on, but they weren’t all using Linux. Every month, when the statistics came out, there was a summary report of the forty most popular newsgroups. If your newsgroup didn’t make it to the top forty, you could fetch the full report on other newsgroups’ popularity from a special maintenance newsgroup. Usually I had to go find the full report.
The Linux newsgroup kept creeping up the chart. At one point it made the top forty and I was happy. That was pretty cool. I seem to remember having written a fairly gloating article to comp.os.linux in which I basically listed the various os (operating system) newsgroups, including Minix, and said, “Hey look at this, we’re more popular than Windows.” Remember that, back then, people who liked Windows were not on the Internet. We made it to the top five sometime in 1993. I went to bed that night brimming with self-satisfaction, excited by the fact that Linux had become almost as popular as sex.
There certainly was no such matchup in my own little corner of the world. I truly did not have a life. By this time, as I mentioned earlier, Peter Anvin had organized an online collection that generated $3,000 in donations to help me pay off my computer, which I did at the end of 1993. And for Christmas, I upgraded to a 486 DX266, which I used for many years. But this was my life: I ate. I slept. Maybe I went to university. I coded. I read a lot of email. I was kind of aware of friends getting laid more, but that was okay.
Quite frankly, most of my friends were losers, too.
XII
The speech in Ede almost convinced me that I could survive anything, even something as terrifying as standing up before a group of total strangers and being the focus of their attention. My confidence was slowly building in other areas, too. I was being forced to make quick decisions regarding Linux fixes and upgrades, and with each decision I felt increasingly comfortable in my role as leader of a growing community. The technical decisions had never been a problem; the problem was figuring out how to tell one person that I preferred another’s suggested changes—and being diplomatic about it. Sometimes it was as simple as saying, “So-and-so’s fixes are working fine. Why don’t we just go with those?”
I never saw the point of accepting anything other than what I thought was the best technical solution being presented. It was a way of keeping from taking sides when two or more programmers offered competing patches. Also, although I didn’t think of it this way at the time, it was a way of getting people to trust me. And the trust compounds. When people trust you, they take your advice.
Of course you have to establish a foundation for all the trust. I guess that started not so much when I wrote the Linux kernel as when I posted it to the Internet, opening it up to anyone who wanted to join in and add the functions and details they liked, with me making ultimate decisions regarding the guts of the operating system.
Just as I never planned for Linux to have a life outside my own computer, I also never planned to be the leader. It just happened by default. At some point a core group of five developers started generating most of the activity in the key areas of development. It made sense for them to serve as the filters and hold the responsibility for maintaining those areas.
I did learn fairly early that the best and most effective way to lead is by letting people do things because they
want
to do them, not because you want them to. The best leaders also know when they are wrong, and are capable of pulling themselves out. And the best leaders enable others to make decisions for them.
Let me rephrase that. Much of Linux’s success can be attributed to my own personality flaws: 1) I’m lazy; and 2) I like to get credit for the work of others. Otherwise the Linux development model, if that’s what people are calling it, would still be limited to daily email messages among a half-dozen geeks, as opposed to an intricate web of hundreds of thousands of participants relying on mailing lists and developers’ conventions and corporate sponsorship in maybe 4,000 projects that are taking place at any one time. At the top, arbitrating disputes over the operating system’s kernel, is a leader whose instinct is, and has always been, not to lead.
And things work out for the best. I divested myself of things that didn’t hold much interest for me. The first of these was the user level, the external parts of the system that end users deal with directly, as opposed to the deep-down, internal code. First somebody volunteers to maintain it. Then the process for maintaining all the subsystems becomes organic. People know who has been active and who they can trust, and it just happens. No voting. No orders. No recounts.
If two people are maintaining similar kinds of software drivers, for example, I’ll sometimes accept the work from both of them and see which one ends up getting used. Users tend to lean on one versus the other. Or, if you let both maintainers work it out, they may end up evolving in different directions and their contributions end up having very distinct uses.
What astonishes so many people is that the open source model actually works.
I guess it helps to understand the mentality of hackers in the free software universe. (By the way, I usually try to avoid the term “hacker.” In personal conversations with technical people, I would probably call myself a hacker. But lately the term has come to mean something else: underage kids who have nothing better to do than sit around electronically breaking into corporate data centers, when they should be out volunteering at their local libraries or, at the very least, getting themselves laid.)
The hackers—programmers—working on Linux and other open source projects forego sleep, Stairmaster workouts, their kids’ Little League games, and yes, occasionally, sex, because they love programming. And they love being part of a global collaborative effort—Linux is the world’s largest collaborative project—–dedicated to building the best and most beautiful technology that is available to anyone who wants it. It’s that simple. And it’s fun.
Okay, I’m starting to sound like a press release with all this shameless self-promotion. Open source hackers aren’t the high-tech counterparts of Mother Teresa. They do get their names associated with their contributions in the form of the “credit list” or “history file” that is attached to each project. The most prolific contributors attract the attention of employers who troll the code, hoping to spot, and hire, top programmers. Hackers are also motivated, in large part, by the esteem they can gain in the eyes of their peers by making solid contributions. It’s a significant motivating factor. Everybody wants to impress their peers, improve their reputation, elevate their social status. Open source development gives programmers the chance.
Needless to say, I was spending most of the year 1993 like I had spent most of 1992, 1991, et cetera: hunched over a computer. That was about to change.
Following in the academic footsteps of my grandfather, I was a teaching assistant at the University of Helsinki, assigned to the fall semester of the Swedish-language “Introduction to Computer Sciences” course. That’s how I met Tove. She had more of an impact on my life than even Andrew Tanenbaum’s book,
Operating Systems: Design and Implementation.
But I won’t bore you with too many details.
Tove was one of fifteen students in my course. She had already received a degree in preschool education. She wanted to study computers, too, but wasn’t progressing as quickly as the rest of the class. She eventually caught up.
The course was so basic—this was the fall of 1993, before the popularity of the Internet—my homework assignment for the class one day was to send me email. It sounds absurd today, but I said: “For homework, send me email.”
Other students’ emails contained simple test messages, or unmemorable notes about the class.
Tove asked me out for a date.
I married the first woman to approach me electronically.
Our first date never ended. Tove was a preschool teacher and six-time Finnish karate champion who had emerged from a functional family, although that’s how I’d describe any family that was not as quirky as mine. She had a lot of friends. She felt like the right woman for me from the very first moment we got together. (I’ll spare you the elaboration.) Within a few months Randi the cat and I had moved into her minuscule apartment.
For the first two weeks, I didn’t even bother bringing over my computer. Not counting my army service, those two weeks were the longest span of time that I had been away from a computer since I had been eleven years old and sitting on my grandfather’s lap. Not to dwell on this, but it still holds the record for being my biggest stretch—as a civilian—without a CPU. Somehow. I managed (again, the details aren’t interesting). My mother, the few times I saw her then, would mutter something about “a triumph of Mother Nature.” I think my sister and father were just stunned.
Soon, Tove went out and got a cat to keep Randi company. Then we settled into a nice pattern of spending evenings alone or with friends, waking up at 5 A.M. so she could get to her job and I could go to the university early, before anyone would be there to disturb me, and read my Linux email.
King of the
BALL
I
The birth of version 1.0 meant something new for Linux: the need for public relations. I would have been just as happy to introduce the new version to the world pretty much the way I had introduced previous versions. I would write something on the newsgroup like “Version 1.0 is out. Deal with it.” (Okay, not in those exact words.)
A lot of other people thought it was much more of a big deal. They wanted version 1.0 for marketing purposes. There were all these budding commercial companies that had started to sell Linux. To them, version 1.0 was important for psychological, not technical, reasons. I couldn’t disagree. The fact is, it looks bad when you try and sell version 0.96 of an operating system.
I wanted it out because it was a milestone for me, and because it meant I could stop fixing bugs for a while and go back to development. The companies and the Linux community wanted to foist it onto the public in a major way.
We needed a public relations strategy. I wasn’t going to personally champion the effort. I wasn’t interested in putting out press releases or making statements. Others thought it should be done that way, so others volunteered to pick up the torch. This was pretty much how Linux itself was done—and somehow, it all actually worked.
Lars was one of the driving forces behind making that first official release a real event. He and a few others thought the university would be the most appropriate place to make the announcement. It made sense. My bedroom was too small. And it would have set a wrong precedent to host the announcement at a commercial site. So Lars volunteered to coordinate the event with the university. The computer sciences department at the University of Helsinki was small enough that he could just talk to the head of the department.
The University of Helsinki was more than happy to offer up the main auditorium of the computer sciences department for the introduction of Linux Version 1.0. And why not? How often does a university have anything worthy of television news?

Other books

SODIUM:4 Gravity by Arseneault, Stephen
Clapton by Eric Clapton
Dodging Trains by Sunniva Dee
An Unacceptable Arrangement by Victoria Winters
The Lives of Things by Jose Saramago
Tattler's Branch by Jan Watson
The Ghost Bride by Yangsze Choo
The Cliff House Strangler by Shirley Tallman