The Innovators: How a Group of Inventors, Hackers, Geniuses, and Geeks Created the Digital Revolutio - Isaacson Walter. Страница 99

For a variety of reasons, he found it difficult to complete a kernel for GNU. Then, in 1991, one became available not from Stallman or his Free Software Foundation, but from a most unexpected source: a twenty-one-year-old toothy and boyish Swedish-speaking Finn at the University of Helsinki named Linus Torvalds.

Linus Torvalds’s father was a Communist Party member and TV journalist, his mother a student radical and then print journalist, but as a child in Helsinki he became more interested in technology than in politics.127 He described himself as “good at math, good at physics, and with no social graces whatsoever, and this was before being a nerd was considered a good thing.”128 Especially in Finland.

When Torvalds was eleven, his grandfather, a professor of statistics, gave him a used Commodore Vic 20, one of the first personal computers. Using BASIC, Torvalds began writing his own programs, including one that amused his younger sister by writing “Sara is the best” over and over. “One of the biggest joys,” he said, “was learning that computers are like mathematics: You get to make up your own world with its own rules.”

Tuning out his father’s urgings to learn to play basketball, Torvalds focused instead on learning to write programs in machine language, the numerical instructions executed directly by a computer’s central processing unit, exposing him to the joy of being “intimate with a machine.” He later felt lucky to have learned assembly language and machine code on a very basic device: “Computers were actually better for kids when they were less sophisticated, when dweebie youngsters like me could tinker under the hood.”129 Like car engines, computers eventually became harder to take apart and put back together.

After enrolling in the University of Helsinki in 1988 and serving his year in the Finnish Army, Torvalds bought an IBM clone with an Intel 386 processor. Unimpressed with its MS-DOS, which Gates and company had produced, he decided that he wanted to install UNIX, which he had learned to like on the university’s mainframes. But UNIX cost $5,000 per copy and wasn’t configured to run on a home computer. Torvalds set out to remedy that.

He read a book on operating systems by a computer science professor in Amsterdam, Andrew Tanenbaum, who had developed MINIX, a small clone of UNIX for teaching purposes. Deciding that he would replace the MS-DOS with MINIX on his new PC, Torvalds paid the $169 license fee (“I thought it was outrageous”), installed the sixteen floppy disks, and then started to supplement and modify MINIX to suit his tastes.

Torvalds’s first addition was a terminal emulation program so that he could dial into the university’s mainframe. He wrote the program from scratch in assembly language, “at the bare hardware level,” so he didn’t need to depend on MINIX. During the late spring of 1991, he hunkered down to code just as the sun reappeared from its winter hibernation. Everyone was emerging into the outdoors, except him. “I was spending most of my time in a bathrobe, huddled over my unattractive new computer, with thick black window shades shielding me from the sunlight.”

Once he got a rudimentary terminal emulator working, he wanted to be able to download and upload files, so he built a disk driver and file system driver. “By the time I did this it was clear the project was on its way to becoming an operating system,” he recalled. In other words, he was embarking on building a software package that could serve as a kernel for a UNIX-like operating system. “One moment I’m in my threadbare robe hacking away on a terminal emulator with extra functions. The next moment I realize it’s accumulating so many functions that it has metamorphosed into a new operating system in the works.” He figured out the hundreds of “system calls” that UNIX could do to get the computer to perform basic operations such as Open and Close, Read and Write, and then wrote programs to implement them in his own way. He was still living in his mother’s apartment, often fighting with his sister Sara, who had a normal social life, because his modem hogged their phone line. “Nobody could call us,” she complained.130

Torvalds initially planned to name his new software “Freax,” to evoke “free” and “freaks” and “UNIX.” But the person who ran the FTP site he was using didn’t like the name, so Torvalds resorted to calling it “Linux,” which he pronounced, similarly to the way he pronounced his first name, “LEE-nucks.”131 “I never wanted to use that name because I felt, OK, that’s a little too egotistical,” he said. But he later conceded that there was a part of his ego that enjoyed getting acclaim after so many years of living in the body of a reclusive nerd, and he was glad he went along with the name.132

In the early fall of 1991, when the Helsinki sun started disappearing again, Torvalds emerged with the shell of his system, which contained ten thousand lines of code.V Instead of trying to market what he had produced, he decided simply to offer it publicly. He had recently gone with a friend to hear a lecture by Stallman, who had become an itinerant global preacher for the doctrine of free software. Torvalds didn’t actually get religion or embrace the dogma: “It probably didn’t make a huge impact on my life at that point. I was interested in the technology, not the politics—I had enough politics at home.”133 But he did see the practical advantages of the open approach. Almost by instinct rather than as a philosophical choice, he felt Linux should be freely shared with the hope that anyone who used it might help improve it.

On October 5, 1991, he posted a cheeky message on the MINIX discussion newsgroup. “Do you pine for the nice days of minix-1.1, when men were men and wrote their own device drivers?” he began. “I’m working on a free version of a minix-lookalike for AT-386 computers. It has finally reached the stage where it’s even usable (though may not be depending on what you want), and I am willing to put out the sources for wider distribution.”134

“It wasn’t much of a decision to post it,” he recalled. “It was how I was accustomed to exchanging programs.” In the computer world, there was (and still is) a strong culture of shareware, in which people voluntarily sent in a few dollars to someone whose program they downloaded. “I was getting emails from people asking me if I would like them to send me thirty bucks or so,” Torvalds said. He had racked up $5,000 in student loans and was still paying $50 a month for the installment loan on his computer. But instead of seeking donations he asked for postcards, and they started flooding in from people all over the world who were using Linux. “Sara typically picked up the mail, and she was suddenly impressed that her combative older brother was somehow hearing from new friends so far away,” Torvalds recalled. “It was her first tip-off that I was doing anything potentially useful during those many hours when I had the phone line engaged.”

Torvalds’s decision to eschew payments came from a mix of reasons, as he later explained, including a desire to live up to his family heritage:

I felt I was following in the footsteps of centuries of scientists and other academics who built their work on the foundations of others. . . . I also wanted feedback (okay, and praise). It didn’t make sense to charge people who could potentially help improve my work. I suppose I would have approached it differently if I had not been raised in Finland, where anyone exhibiting the slightest sign of greediness is viewed with suspicion, if not envy. And yes, I undoubtedly would have approached the whole no-money thing a lot differently if I had not been brought up under the influence of a diehard academic grandfather and a diehard communist father.