The Little Operating System That Could
Enter Linus Torvalds. A 21-year-old undergraduate at the University of Helsinki in 1991, Torvalds was far from an expert programmer-“I didn’t even know what I didn’t know,” he says. But he knew Unix well enough to regard Microsoft’s MS-DOS operating system as a mess-the digital equivalent of being forced to write with a leaky pen. Still, Torvalds wanted to program, and he got so sick of the long lines at the campus computer center that he bought a PC. The machine-a 386 with 4 megabytes of memory-was too small to run Unix. But he still refused to subject himself to bad software. Ignoring DOS, Torvalds mashed together chunks of code from his instructors’ and his own work.
Somewhat unexpectedly, Torvalds ended up with something like a Unix kernel. Because the GNU project had created the necessary subsidiary programs, he tweaked the kernel to fit them. Lo and behold, he had backed himself into creating a complete operating system. For the first time, the flexibility, stability and power of Unix were available on a small computer. Torvalds called his operating system “Freax.” His friends thought the name was dumb and changed it to Linux.
On a personal level, Stallman and Torvalds are opposites. Stallman is a provocateur with cheerfully irregular habits-a nocturnal bachelor who bites off the split ends in his long hair as he proposes the idea of a national campaign to mock Bill Gates. Torvalds is polite, softspoken and personally tidy-a married man with a regular job. But the pair share one important attitude: antipathy to software copyright. Torvalds covered Linux with Stallman’s “copyleft” and posted it online for anyone to download; when people added improvements, he put them, too, on the Net. Begun in 1991 as an Intel-only operating system with a single user (Torvalds), Linux had been modified by 1995 to run on machines from Digital and Hewlett-Packard and had half a million users, many in developing nations.
“Everything came together at the right time,” says John Hall, a Linux maven who is a technical marketing manager for Compaq. “The price of PCs dropped and their power went up, so people in poor countries could maybe afford 486s and 386s that were halfway serious computers.” This new wave of geeks wanted to try their hands at cutting-edge computer science. With few outlets in the developing world for their talents, they seized on the opportunity to participate in the development of Linux through the Internet. “Suddenly,” Hall says, “there was the possibility that not all of computer science would come out of Redmond, Washington.”
The story of GNOME project leader Miguel de Icaza illustrates the point. Discovering the GNU project at the age of 18 in 1991 as an undergraduate at the National Autonomous University of Mexico, de Icaza quickly began working on its file manager program. “I wanted to give them something back because the software was so good,” he says. Soon came Linux, which he coupled with GNU software and adapted to the Sun SPARC workstation. “Once I started contributing,” de Icaza recalls, “people started sending me improvements and bug fixes and new features.” No one cared that de Icaza wasn’t American or that he hadn’t finished college. (No one, that is, except the U.S. government, which refused him a working visa when Cobalt Networks, a Mountain View, Calif., computer company, tried to hire him.)
Hundreds of programmers like de Icaza worked on Linux, adding utilities, fixing bugs, writing manuals, adding capabilities and porting it to different computer systems. New versions poured out at an astonishing rate-sometimes more than one a week. Each would be downloaded and worked on by people around the globe. Overwhelmed by the runaway project, Torvalds restricted himself to supervising the kernel. People interested in working on other pieces organized themselves, Andy-Hardy style: Hey, kids, let’s make it page to disk! In the end, Torvalds says, “less than five percent” of the code is his. (He now works for Transmeta, an ultrasecretive Silicon Valley chip-design company. What is Transmeta? “We do stuff,” Torvalds says, deadpan. “That is the official company line.”)
To free-software advocate Raymond, the novel development of Linux presaged a sea change in software. In a widely read essay, “The Cathedral and the Bazaar,” he argued that software before Linux always had been produced in a “cathedral,” by an isolated team of programmers, who worked on the code until releasing a final, finished version. Linux, on the other hand, was assembled in a “bazaar,” by a cacophonous scatter of independent programmers. And Linux was never finished. Ordinary users work with particularly successful “snapshots” of the operating system, but programmers keep fiddling with it as long as they see something to add or fix. (Raymond has put the essay on the Web.)
Writing software in a bazaar is easier, more efficient and more likely to be successful, Raymond believes. Because the source code is open to all, he says, “we very seldom have to solve the same problem twice.” Commercial software developers, by contrast, are often forced to reinvent the wheel-“an almost criminal waste of resources.” When one company invents a way to e-mail data from a program directly, for example, competitors can’t build on the work and improve it. Instead they must start from scratch and figure out a completely different way to do the same thing. The result, open-source devotees argue, is not healthy competition that produces incremental improvements, but a set of incompatible products that don’t work very well.
In addition, open-source software can be tested more thoroughly. Even big companies typically field-test their operating systems only with a few dozen users, according to Compaq marketing manager Hall, who worked on operating systems for Digital-a far cry from the thousands who put each Linux version through the wringer.
Moreover, as Torvalds has argued, open-source programmers don’t have to worry that “fixing one bug might just break a hundred programs that depend on that bug.” If Microsoft changes Windows 98, it can’t easily peek into the source code of Quicken or WordPerfect to see what will happen; nor can independent hackers readily post a correction. By contrast, bugs in free programs can be avoided or fixed quickly, because the source code is available to all. In a test of software reliability published last May, seven computer scientists at the University of Wisconsin concluded, to their surprise, that GNU and Linux programs were “noticeably better” than their proprietary equivalents.
Open-source boosters say that Linux/GNU has advantages for users, too-and especially businesses. Instead of being forced to accept the features that big vendors like Microsoft choose to make available, corporate information-systems departments can create software that exactly fits their companies’ needs. Partly because of its easy customizability, free software is spreading into the business world (although some companies remain leery enough of the idea that systems administrators conceal it from management). Sega uses Linux to develop video games; Digital Domain, the James Cameron company, used it to produce digital special effects for Titanic. The U.S. Postal Service routes letters with RAF Mail character-recognition software, a commercial program that runs on Linux. Netscape and Intel announced in September that they were investing in Red Hat, the largest commercial Linux distributor.
But Linux has been almost shut out of one large arena: the consumer market. As long as it remains triumphantly nonintuitive-“a program for hackers by a hacker,” as Torvalds puts it-its use would be confined to geeks. Which, to some Linux partisans, was not enough.