January/February 1999
     
     Go to this link
     for original page.
     
     Programs to the People
     
     Could an insurgent band of programmers, motivated not by profit but
     by the ideal of “free software,” undermine Microsofts
     control of the computer desktop?
     
     By Charles C. Mann
     
     photo Miguel de Icaza spends his days as a computer-network
     administrator at the Institute of Nuclear Sciences at the National
     Autonomous University of Mexico, in Mexico City. Watching over the
     network, he says, “gives me a lot of spare time”time he
     spends answering e-mail and working on “fun little
     projects.” His current spare-time computer activity, he
     thinks, is “really great.” De Icaza is coordinating the
     GNOME project, a volunteer effort to develop a computer desktopa
     mouse-and-windows interfacethat will outdo the various incarnations
     of Windows that form the foundation of the Microsoft empire.
     
     The GNOME desktop, its programmers say, will be faster, more
     powerful and less likely to crash than anything from Redmond, Wash.
     “Its a radical step forward in computer design,” says
     Larry McVoy, a former Sun Microsystems programmer who now runs a
     networking startup in San Francisco called BitMover, “the
     coolest, whizziest thing out there.” And GNOME will be free:
     downloadable from the Internet without charge.
     
     The notion of a small band of unpaid part-timers challenging one of
     the worlds most dominant corporations may seem absurd, but the
     GNOME project intends to do exactly that. “They have decided
     to take the desktop back from Microsoft,” says Eric S.
     Raymond, a free-software evangelist who is editor of The New
     Hackers Dictionary. In his view, there is a good chance that the
     project could succeed. “Its not at all impossible,”
     Raymond says, “that GNOME could push the software world into a
     dramatically differentand betterplace.”
     
     Why would GNOME succeed where bigger, richer outfitsApple, most
     prominentlyfailed? Two reasons, according to its backers. First,
     GNOME is not starting alone. It is designed to work with an
     operating system called Linux (“LINN-uks”). Renowned for
     its speed, reliability and efficiency, Linux runs on as many as 10
     million computer systems around the world, ranging from small,
     geek-oriented networks at Internet-service providers and university
     computer labs to huge outfits like Wells Fargo and the U.S. Postal
     Service. With a user base growing at an estimated rate of 40
     percent per year, Linux is the sole non-Microsoft operating system
     that is expanding its market share (see sidebar “Looking For
     Linux?”).
     
     Although more than 20 small companies now sell computers preloaded
     with Linux, the system is rarely found in homes because its
     reputation for technical excellence is matched by its reputation
     for user-unfriendliness. Indeed, one standard installation guide
     begins by admitting that Linux is “one of the most complex and
     utterly intimidating systems ever written,” because users must
     type runic commands like “awk,” “grep” and
     “mount -t iso9660/dev/cdrom/mnt.” By providing a simple,
     intuitive point-and-click interface, “GNOME will make it
     possible for my wife, my mother and my grandfather to use
     Linux,” says Michael Fulbright, a project member at Red Hat
     Advanced Development Laboratories, a corporate-sponsored Linux
     think tank in Research Triangle Park, N.C. “Finally, nongeeks
     will get to use something that geeks take for granted: software
     that works right.” And once people see what its like to use
     good software, Linux partisans argue, they will never go back to
     Windows.
     
     The second, larger reason that GNOME could succeed is that, like
     Linux, it is a product of what is known as the
     “free-software” or “open-source” movement. Not
     only can GNOME be obtained free of charge, but its source codethe
     underlying instructions that most software firms regard as their
     crown jewelswill be available for anyone to copy and modify. By
     liberating the source code from the control of a single company,
     projects like GNOME can harness the contributions of thousands of
     programmers. Because not even giant Microsoft can surpass the
     united talent of the whole world, free-software partisans argue,
     open-source software will always outstrip the competition.
     “Produce something better and people will eventually
     notice,” says Bruce Perens, a free-software programmer who
     works at Pixar Animation Studios in Richmond, Calif. “GNOME
     will be one ticket to the future.”
     
     In Mexico City, de Icaza describes the project in less grandiose
     terms. “GNOME will be fun,” he says. “A really good
     hack.”
     
     Liberated Code
     
     If GNOME, Linux and the free-software movement had a single
     beginning, it was the day in 1979 when Xerox donated one of the
     first laser printers to the Artificial Intelligence Laboratory at
     MIT. The machine crashed a lot, inducing AI Lab programmer Richard
     Stallman to ask Xerox for the code that controlled the printer.
     Stallman planned to modify the program to respond to breakdowns by
     flashing a warning on the screen of everyone who was waiting for a
     printoutthat is, everyone who had an incentive to fix the printer
     right away. In this way, the printer would always be quickly set
     right.
     
     To make this modification, though, Stallman needed Xerox to give
     him the source code for the printer program. For him, this was an
     unexceptional request. In the freewheeling academic atmosphere of
     the AI Lab, programmers worked communally, constantly borrowing and
     tinkering with one anothers code. Moreover, Xerox had given
     Stallman the source code for an earlier, equally trouble-prone
     printer. This time, however, Xerox refusedthe company had
     copyrighted the source code. Stallman was irate: Copyright was
     preventing him from improving a program. “Xerox was hoarding
     software,” he says. “They were violating the Golden
     Rule.”
     
     Xerox was not alone. As software became big business, Silicon
     Valley lured away many of the AI Labs best and brightest. When
     these programmers worked for software companies, Stallman
     discovered, their code was proprietaryit couldnt be shared and
     built upon. Copyright, the idealistic Stallman slowly concluded,
     was destroying the programming community.
     
     In 1984, Stallman founded the Free Software Foundation. Its chief
     goal was to develop an improved operating system that looked like,
     but did not use the source code of, Unixthe most common operating
     system on big computer networks. Invented in 1969 by two
     researchers at Bell Labs, Unix is now available in a dozen
     different versions from companies like IBM, Compaq and Sun
     Microsystems. Stallman called his version GNU, a recursive acronym
     for “GNUs Not Unix.” To avoid “horrible
     confusion,” he pronounced it “guh-new.” In a tip of
     the hat to Stallman, GNOME, which stands for GNU Network Object
     Model Environment, is pronounced “guh-nome.”
     
     The challenge of GNU was enormous. An operating system defines what
     services programs can ask of a computer (adding two numbers, moving
     information onto a hard disk, and so on) and directs requests for
     those services to the hardware (keyboard, monitor, microprocessors
     and so on). But the system is useless without hundreds of
     subsidiary programs to perform specific tasks such as managing
     windows and communicating with printers and other peripherals. To
     produce a functional system, the GNU project had to create all
     these programs. “Its like building a jet plane from scratch in
     your garage,” says Perens. “People thought it was
     impossible. And it probably would have been, if anyone less
     extraordinarily talented than Richard was in charge.”
     
     Based at MIT, the GNU Project was Geek Heavendim lights, bright
     monitors, late hours, Chinese takeout. At the center was the
     bearded, long-haired Stallman, pounding code late into the night
     and sleeping during the day on a cot in the offices. Every line he
     wrote was “copylefted”users could freely change the
     software, as long as they didnt prohibit others from doing the same
     to their modifications. “Copyleft,” Stallman says,
     “uses the tools of the software hoarders against them.”
     
     By the early 1990s, though, the GNU project was foundering. It had
     created scores of programs that were used all over the worldbut had
     not produced the heart, or “kernel,” of the GNU operating
     system. Part of the reason was that Stallman had chosen not to
     duplicate the tried and true Unix kernel but to base the GNU system
     on an advanced, experimental kernel developed at Carnegie Mellon
     University. The only programmer ever to receive a MacArthur
     “genius” fellowship, Stallman was one of the few people
     in the world up to the task of developing a radically new kerneland
     possibly the only one who could think of doing it almost
     single-handedly.
     
     But then his hands, weary from typing so much code, gave out. For
     years pain prevented him from serious work at a keyboard, and his
     work on the kernel stopped. Stallman tried to continue by employing
     MIT students as transcribers. Recalls Perens: “He would treat
     them literally as typewriters, saying carriage return and space and
     tab, while he dictated what he saw in his head.” Invariably
     these human typewriters quit after a short time, worn down by hours
     of robotically transmitting computer code.
     
     Nobody stepped in to replace the sidelined Stallman. One reason,
     says Perens, was political. “Richard is the last of the
     pinkos. And people just didnt want to be associated with somebody
     whose ideas are fundamentally antagonistic to business.”
     
     The Little Operating System That Could
     
     photo Enter Linus Torvalds. A 21-year-old undergraduate at the
     University of Helsinki in 1991, Torvalds was far from an expert
     programmer“I didnt even know what I didnt know,” he says.
     But he knew Unix well enough to regard Microsofts MS-DOS operating
     system as a messthe 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 machinea 386 with 4 megabytes of memorywas 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 habitsa 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 tidya married man
     with a regular job. But the pair share one important attitude:
     antipathy to software copyright. Torvalds covered Linux with
     Stallmans “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 wasnt American or that he hadnt 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 ratesometimes 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, lets 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
     cant 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 dont 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 Digitala far cry from the
     thousands who put each Linux version through the wringer.
     
     Moreover, as Torvalds has argued, open-source programmers dont have
     to worry that “fixing one bug might just break a hundred
     programs that depend on that bug.” If Microsoft changes
     Windows 98, it cant 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,
     tooand 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 itits use
     would be confined to geeks. Which, to some Linux partisans, was not
     enough.
     
     World Domination?
     
     The obvious way to popularize Linux is to give it a point-and-click
     desktop akin to that of the Macintosh and Windows. Such a move,
     however, was of little interest to the type of person who developed
     Linux. Most programmers like typing on a command line because it
     lets them control the machine more precisely than they can by
     clicking on a mouse.
     
     Torvalds himself says he doesnt care much about “nice
     graphical interfaces.” Indeed, at first he wasnt sure that
     Linux would function well with one. But Torvalds ultimately
     welcomed Miguel de Icazas announcement in August 1997 of the GNOME
     project: an attempt to put together a graphical user interface.
     “I joke a lot about Linux taking over the world and how
     Microsoft should be afraid,” says Torvalds, who has recently
     conducted “World Domination 101” seminars at Linux
     conventions. “But with something that makes it easy for the
     home usermaybe it just might happen.”
     
     Proponents of GNOME faced several obstacles. First, a Linux desktop
     project already existed. Based in Germany and called the K Desktop
     Environment (KDE), it was under heavy attack within the open-source
     community. In a perfect example of the arcane squabbling endemic to
     passionately idealistic enterprises, the open-source community
     battled over whether the KDE desktop was fatally tainted because it
     included code from a Norwegian company, Troll Technology, that was
     not completely nonproprietary. The short answer is: probably. Which
     was one reason de Icaza, and then much of the Linux community,
     shifted attention to GNOME.
     
     Within a year of the projects inception, more than 150 people were
     developing GNOME, about 20 of them full-time. Red Hat hired seven
     full-time programmers to work on it. This crew is, of course,
     infinitesimal compared to the battalions of programmers laboring to
     produce each new version of Windows. On the other hand, “we
     dont have to go through the contortions they do,” says Todd
     Graham Lewis, keeper of the frequently-asked-question file for
     GNOME. “One hour of work on Windows 98 means 15 minutes of
     working on functionality, and 45 minutes of checking on DOS
     compatibility, Windows 3.1 compatibility, and Windows 95
     compatibility. One hour of work on GNOME is one hour of
     functionality.” Partly for this reason, the project has moved
     quickly; version 1.0 may be available at www.gnome.org as early as
     the beginning of 1999.
     
     Describing the result isnt easy, because the project is creating a
     desktop that users can configure themselvesin other words, one with
     no standard appearance. “Windows has a set of colors and fonts
     you can change,” says Carsten Haitzler, a GNOME programmer at
     Red Hat. “But thats all you can do. We want you to be able to
     customize everything from the ground up.”
     
     Users who dont want to tinker with the desktop can choose among
     scores of pre-fab “themes”although most of the current
     themes, which have been produced by young male programmers,
     resemble the covers of science-fiction novels. “People say my
     desktop looks like something out of Babylon 5,” Haitzler says
     proudly.
     
     The GNOME project aims to emulate what is best about existing
     interfaces. “Microsoft did some things very well, and were
     trying to learn from them,” de Icaza says. At the same time,
     the project seeks to avoid some of Windows annoying design
     peculiarities. GNOME users, de Icaza promises flatly, will not turn
     off their computers by clicking a button labeled “Start.”
     Nor will they have to struggle with the Windows taskbar. To bring a
     program up on the screen, Windows users click once on a taskbar
     button but, confusingly, must usually click twice on a tray icon.
     
     GNOME, de Icaza says, will deliver a more logical interface.
     Instead of scattering icons around the desktop, where they are
     covered up by windows, users can drag documents onto the
     “panel”the GNOME version of the task bar. Multiple panels
     can be kept open in different places on the screen. Because the
     panels can change appearanceone Doom-influenced theme has a panel
     made from a line of skulls with icons in their yawning mouthsGNOME,
     McVoy says, is “serious eye candy.”
     
     Eye candy wont be enough to attract the novices if they cant do
     anything, though. One of Linuxs most serious weaknesses is the
     relative paucity of business and home software available to run
     with the operating system. Few office-suite and game companies
     offer products that run under Linux. Two exceptions are id
     Software, which has Linux versions of the popular games Quake and
     Doom, and Corel, which has come out with WordPerfect for Linux and
     has promised to create Linux versions of the rest of its office
     suite. To make up the gap, both GNOME and KDE have launched
     free-software projects to create word processors and spreadsheets;
     early test versions are expected in the spring.
     
     Microsoft, watching closely, is already proposing measures to
     counter Linux (see sidebar “Goliath Gets Nervous”). But
     Lewis points out that open-source software has one undeniable
     competitive edge. “Microsoft kills its rivals by starving them
     of revenue,” he says. “But they cant kill us that way,
     becuse we dont have any revenue. The free software movement is like
     Night of the Living Deadwell keep coming at them.”
     
     Adds Raymond: “Theres a Gandhi quote Linux hackers love: First
     they ignore you. Then they laugh at you. Then they fight you. Then
     you win.”
1