· 9 years ago · Jan 23, 2017, 02:56 AM
1=================================================================
2
3This somewhat dated essay by Neal Stephenson, the author of such
4novels as 'Snow Crash', 'The Diamond Age' and 'Zodiac', discusses the
5history of computer operating systems. It was originally published
6online in 1999.
7
8Stephenson graduated from BU in 1981 with a BA in geography and a
9minor in physics. His first novel, "The Big U" (1984), is set in a
10bizarro vision of BU... It is a satirical take on life at "American
11Megaversity", a vast, bland and alienating research university beset
12by chaotic riots.
13
14=================================================================
15
16
17In the Beginning was the Command Line
18
19by Neal Stephenson
20
21
22About twenty years ago Jobs and Wozniak, the founders of Apple, came
23up with the very strange idea of selling information processing
24machines for use in the home. The business took off, and its founders
25made a lot of money and received the credit they deserved for being
26daring visionaries. But around the same time, Bill Gates and Paul
27Allen came up with an idea even stranger and more fantastical: selling
28computer operating systems. This was much weirder than the idea of
29Jobs and Wozniak. A computer at least had some sort of physical
30reality to it. It came in a box, you could open it up and plug it in
31and watch lights blink. An operating system had no tangible
32incarnation at all. It arrived on a disk, of course, but the disk was,
33in effect, nothing more than the box that the OS came in. The product
34itself was a very long string of ones and zeroes that, when properly
35installed and coddled, gave you the ability to manipulate other very
36long strings of ones and zeroes. Even those few who actually
37understood what a computer operating system was were apt to think of
38it as a fantastically arcane engineering prodigy, like a breeder
39reactor or a U-2 spy plane, and not something that could ever be (in
40the parlance of high-tech) "productized."
41
42Yet now the company that Gates and Allen founded is selling operating
43systems like Gillette sells razor blades. New releases of operating
44systems are launched as if they were Hollywood blockbusters, with
45celebrity endorsements, talk show appearances, and world tours. The
46market for them is vast enough that people worry about whether it has
47been monopolized by one company. Even the least technically-minded
48people in our society now have at least a hazy idea of what operating
49systems do; what is more, they have strong opinions about their
50relative merits. It is commonly understood, even by technically
51unsophisticated computer users, that if you have a piece of software
52that works on your Macintosh, and you move it over onto a Windows
53machine, it will not run. That this would, in fact, be a laughable and
54idiotic mistake, like nailing horseshoes to the tires of a Buick.
55
56A person who went into a coma before Microsoft was founded, and woke
57up now, could pick up this morning's New York Times and understand
58everything in it--almost:
59
60Item: the richest man in the world made his fortune from-what?
61Railways? Shipping? Oil? No, operating systems. Item: the Department
62of Justice is tackling Microsoft's supposed OS monopoly with legal
63tools that were invented to restrain the power of Nineteenth-Century
64robber barons. Item: a woman friend of mine recently told me that
65she'd broken off a (hitherto) stimulating exchange of e-mail with a
66young man. At first he had seemed like such an intelligent and
67interesting guy, she said, but then "he started going all
68PC-versus-Mac on me."
69
70What the hell is going on here? And does the operating system business
71have a future, or only a past? Here is my view, which is entirely
72subjective; but since I have spent a fair amount of time not only
73using, but programming, Macintoshes, Windows machines, Linux boxes and
74the BeOS, perhaps it is not so ill-informed as to be completely
75worthless. This is a subjective essay, more review than research
76paper, and so it might seem unfair or biased compared to the technical
77reviews you can find in PC magazines. But ever since the Mac came out,
78our operating systems have been based on metaphors, and anything with
79metaphors in it is fair game as far as I'm concerned.
80
81
82MGBs, TANKS, AND BATMOBILES
83
84Around the time that Jobs, Wozniak, Gates, and Allen were dreaming up
85these unlikely schemes, I was a teenager living in Ames, Iowa. One of
86my friends' dads had an old MGB sports car rusting away in his
87garage. Sometimes he would actually manage to get it running and then
88he would take us for a spin around the block, with a memorable look of
89wild youthful exhiliration on his face; to his worried passengers, he
90was a madman, stalling and backfiring around Ames, Iowa and eating the
91dust of rusty Gremlins and Pintos, but in his own mind he was Dustin
92Hoffman tooling across the Bay Bridge with the wind in his hair.
93
94In retrospect, this was telling me two things about people's
95relationship to technology. One was that romance and image go a long
96way towards shaping their opinions. If you doubt it (and if you have a
97lot of spare time on your hands) just ask anyone who owns a Macintosh
98and who, on those grounds, imagines him- or herself to be a member of
99an oppressed minority group.
100
101The other, somewhat subtler point, was that interface is very
102important. Sure, the MGB was a lousy car in almost every way that
103counted: balky, unreliable, underpowered. But it was fun to drive. It
104was responsive. Every pebble on the road was felt in the bones, every
105nuance in the pavement transmitted instantly to the driver's hands. He
106could listen to the engine and tell what was wrong with it. The
107steering responded immediately to commands from his hands. To us
108passengers it was a pointless exercise in going nowhere--about as
109interesting as peering over someone's shoulder while he punches
110numbers into a spreadsheet. But to the driver it was an
111experience. For a short time he was extending his body and his senses
112into a larger realm, and doing things that he couldn't do unassisted.
113
114The analogy between cars and operating systems is not half bad, and so
115let me run with it for a moment, as a way of giving an executive
116summary of our situation today.
117
118Imagine a crossroads where four competing auto dealerships are
119situated. One of them (Microsoft) is much, much bigger than the
120others. It started out years ago selling three-speed bicycles
121(MS-DOS); these were not perfect, but they worked, and when they broke
122you could easily fix them.
123
124There was a competing bicycle dealership next door (Apple) that one
125day began selling motorized vehicles--expensive but attractively
126styled cars with their innards hermetically sealed, so that how they
127worked was something of a mystery.
128
129The big dealership responded by rushing a moped upgrade kit (the
130original Windows) onto the market. This was a Rube Goldberg
131contraption that, when bolted onto a three-speed bicycle, enabled it
132to keep up, just barely, with Apple-cars. The users had to wear
133goggles and were always picking bugs out of their teeth while Apple
134owners sped along in hermetically sealed comfort, sneering out the
135windows. But the Micro-mopeds were cheap, and easy to fix compared
136with the Apple-cars, and their market share waxed.
137
138Eventually the big dealership came out with a full-fledged car: a
139colossal station wagon (Windows 95). It had all the aesthetic appeal
140of a Soviet worker housing block, it leaked oil and blew gaskets, and
141it was an enormous success. A little later, they also came out with a
142hulking off-road vehicle intended for industrial users (Windows NT)
143which was no more beautiful than the station wagon, and only a little
144more reliable.
145
146Since then there has been a lot of noise and shouting, but little has
147changed. The smaller dealership continues to sell sleek Euro-styled
148sedans and to spend a lot of money on advertising campaigns. They have
149had GOING OUT OF BUSINESS! signs taped up in their windows for so long
150that they have gotten all yellow and curly. The big one keeps making
151bigger and bigger station wagons and ORVs.
152
153On the other side of the road are two competitors that have come along
154more recently.
155
156One of them (Be, Inc.) is selling fully operational Batmobiles (the
157BeOS). They are more beautiful and stylish even than the Euro-sedans,
158better designed, more technologically advanced, and at least as
159reliable as anything else on the market--and yet cheaper than the
160others.
161
162With one exception, that is: Linux, which is right next door, and
163which is not a business at all. It's a bunch of RVs, yurts, tepees,
164and geodesic domes set up in a field and organized by consensus. The
165people who live there are making tanks. These are not old-fashioned,
166cast-iron Soviet tanks; these are more like the M1 tanks of the
167U.S. Army, made of space-age materials and jammed with sophisticated
168technology from one end to the other. But they are better than Army
169tanks. They've been modified in such a way that they never, ever break
170down, are light and maneuverable enough to use on ordinary streets,
171and use no more fuel than a subcompact car. These tanks are being
172cranked out, on the spot, at a terrific pace, and a vast number of
173them are lined up along the edge of the road with keys in the
174ignition. Anyone who wants can simply climb into one and drive it away
175for free.
176
177Customers come to this crossroads in throngs, day and night. Ninety
178percent of them go straight to the biggest dealership and buy station
179wagons or off-road vehicles. They do not even look at the other
180dealerships.
181
182Of the remaining ten percent, most go and buy a sleek Euro-sedan,
183pausing only to turn up their noses at the philistines going to buy
184the station wagons and ORVs. If they even notice the people on the
185opposite side of the road, selling the cheaper, technically superior
186vehicles, these customers deride them cranks and half-wits.
187
188The Batmobile outlet sells a few vehicles to the occasional car nut
189who wants a second vehicle to go with his station wagon, but seems to
190accept, at least for now, that it's a fringe player.
191
192The group giving away the free tanks only stays alive because it is
193staffed by volunteers, who are lined up at the edge of the street with
194bullhorns, trying to draw customers' attention to this incredible
195situation. A typical conversation goes something like this:
196
197Hacker with bullhorn: "Save your money! Accept one of our free tanks!
198It is invulnerable, and can drive across rocks and swamps at ninety
199miles an hour while getting a hundred miles to the gallon!"
200
201Prospective station wagon buyer: "I know what you say is
202true...but...er...I don't know how to maintain a tank!"
203
204Bullhorn: "You don't know how to maintain a station wagon either!"
205
206Buyer: "But this dealership has mechanics on staff. If something goes
207wrong with my station wagon, I can take a day off work, bring it here,
208and pay them to work on it while I sit in the waiting room for hours,
209listening to elevator music."
210
211Bullhorn: "But if you accept one of our free tanks we will send
212volunteers to your house to fix it for free while you sleep!"
213
214Buyer: "Stay away from my house, you freak!"
215
216Bullhorn: "But..."
217
218Buyer: "Can't you see that everyone is buying station wagons?"
219
220
221BIT-FLINGER
222
223
224The connection between cars, and ways of interacting with computers,
225wouldn't have occurred to me at the time I was being taken for rides
226in that MGB. I had signed up to take a computer programming class at
227Ames High School. After a few introductory lectures, we students were
228granted admission into a tiny room containing a teletype, a telephone,
229and an old-fashioned modem consisting of a metal box with a pair of
230rubber cups on the top (note: many readers, making their way through
231that last sentence, probably felt an initial pang of dread that this
232essay was about to turn into a tedious, codgerly reminiscence about
233how tough we had it back in the old days; rest assured that I am
234actually positioning my pieces on the chessboard, as it were, in
235preparation to make a point about truly hip and up-to-the minute
236topics like Open Source Software). The teletype was exactly the same
237sort of machine that had been used, for decades, to send and receive
238telegrams. It was basically a loud typewriter that could only produce
239UPPERCASE LETTERS. Mounted to one side of it was a smaller machine
240with a long reel of paper tape on it, and a clear plastic hopper
241underneath.
242
243In order to connect this device (which was not a computer at all) to
244the Iowa State University mainframe across town, you would pick up the
245phone, dial the computer's number, listen for strange noises, and then
246slam the handset down into the rubber cups. If your aim was true, one
247would wrap its neoprene lips around the earpiece and the other around
248the mouthpiece, consummating a kind of informational soixante-neuf.
249The teletype would shudder as it was possessed by the spirit of the
250distant mainframe, and begin to hammer out cryptic messages.
251
252Since computer time was a scarce resource, we used a sort of batch
253processing technique. Before dialing the phone, we would turn on the
254tape puncher (a subsidiary machine bolted to the side of the teletype)
255and type in our programs. Each time we depressed a key, the teletype
256would bash out a letter on the paper in front of us, so we could read
257what we'd typed; but at the same time it would convert the letter into
258a set of eight binary digits, or bits, and punch a corresponding
259pattern of holes across the width of a paper tape. The tiny disks of
260paper knocked out of the tape would flutter down into the clear
261plastic hopper, which would slowly fill up what can only be described
262as actual bits. On the last day of the school year, the smartest kid
263in the class (not me) jumped out from behind his desk and flung
264several quarts of these bits over the head of our teacher, like
265confetti, as a sort of semi-affectionate practical joke. The image of
266this man sitting there, gripped in the opening stages of an atavistic
267fight-or-flight reaction, with millions of bits (megabytes) sifting
268down out of his hair and into his nostrils and mouth, his face
269gradually turning purple as he built up to an explosion, is the single
270most memorable scene from my formal education.
271
272Anyway, it will have been obvious that my interaction with the
273computer was of an extremely formal nature, being sharply divided up
274into different phases, viz.: (1) sitting at home with paper and
275pencil, miles and miles from any computer, I would think very, very
276hard about what I wanted the computer to do, and translate my
277intentions into a computer language--a series of alphanumeric symbols
278on a page. (2) I would carry this across a sort of informational
279cordon sanitaire (three miles of snowdrifts) to school and type those
280letters into a machine--not a computer--which would convert the
281symbols into binary numbers and record them visibly on a tape. (3)
282Then, through the rubber-cup modem, I would cause those numbers to be
283sent to the university mainframe, which would (4) do arithmetic on
284them and send different numbers back to the teletype. (5) The teletype
285would convert these numbers back into letters and hammer them out on a
286page and (6) I, watching, would construe the letters as meaningful
287symbols.
288
289The division of responsibilities implied by all of this is admirably
290clean: computers do arithmetic on bits of information. Humans construe
291the bits as meaningful symbols. But this distinction is now being
292blurred, or at least complicated, by the advent of modern operating
293systems that use, and frequently abuse, the power of metaphor to make
294computers accessible to a larger audience. Along the way--possibly
295because of those metaphors, which make an operating system a sort of
296work of art--people start to get emotional, and grow attached to
297pieces of software in the way that my friend's dad did to his MGB.
298
299People who have only interacted with computers through graphical user
300interfaces like the MacOS or Windows--which is to say, almost everyone
301who has ever used a computer--may have been startled, or at least
302bemused, to hear about the telegraph machine that I used to
303communicate with a computer in 1973. But there was, and is, a good
304reason for using this particular kind of technology. Human beings have
305various ways of communicating to each other, such as music, art,
306dance, and facial expressions, but some of these are more amenable
307than others to being expressed as strings of symbols. Written language
308is the easiest of all, because, of course, it consists of strings of
309symbols to begin with. If the symbols happen to belong to a phonetic
310alphabet (as opposed to, say, ideograms), converting them into bits is
311a trivial procedure, and one that was nailed, technologically, in the
312early nineteenth century, with the introduction of Morse code and
313other forms of telegraphy.
314
315We had a human/computer interface a hundred years before we had
316computers. When computers came into being around the time of the
317Second World War, humans, quite naturally, communicated with them by
318simply grafting them on to the already-existing technologies for
319translating letters into bits and vice versa: teletypes and punch card
320machines.
321
322These embodied two fundamentally different approaches to
323computing. When you were using cards, you'd punch a whole stack of
324them and run them through the reader all at once, which was called
325batch processing. You could also do batch processing with a teletype,
326as I have already described, by using the paper tape reader, and we
327were certainly encouraged to use this approach when I was in high
328school. But--though efforts were made to keep us unaware of this--the
329teletype could do something that the card reader could not. On the
330teletype, once the modem link was established, you could just type in
331a line and hit the return key. The teletype would send that line to
332the computer, which might or might not respond with some lines of its
333own, which the teletype would hammer out--producing, over time, a
334transcript of your exchange with the machine. This way of doing it did
335not even have a name at the time, but when, much later, an alternative
336became available, it was retroactively dubbed the Command Line
337Interface.
338
339When I moved on to college, I did my computing in large, stifling
340rooms where scores of students would sit in front of slightly updated
341versions of the same machines and write computer programs: these used
342dot-matrix printing mechanisms, but were (from the computer's point of
343view) identical to the old teletypes. By that point, computers were
344better at time-sharing--that is, mainframes were still mainframes, but
345they were better at communicating with a large number of terminals at
346once. Consequently, it was no longer necessary to use batch
347processing. Card readers were shoved out into hallways and boiler
348rooms, and batch processing became a nerds-only kind of thing, and
349consequently took on a certain eldritch flavor among those of us who
350even knew it existed. We were all off the Batch, and on the Command
351Line, interface now--my very first shift in operating system
352paradigms, if only I'd known it.
353
354A huge stack of accordion-fold paper sat on the floor underneath each
355one of these glorified teletypes, and miles of paper shuddered through
356their platens. Almost all of this paper was thrown away or recycled
357without ever having been touched by ink--an ecological atrocity so
358glaring that those machines soon replaced by video
359terminals--so-called "glass teletypes"--which were quieter and didn't
360waste paper. Again, though, from the computer's point of view these
361were indistinguishable from World War II-era teletype machines. In
362effect we still used Victorian technology to communicate with
363computers until about 1984, when the Macintosh was introduced with its
364Graphical User Interface. Even after that, the Command Line continued
365to exist as an underlying stratum--a sort of brainstem reflex--of many
366modern computer systems all through the heyday of Graphical User
367Interfaces, or GUIs as I will call them from now on.
368
369
370GUIs
371
372
373Now the first job that any coder needs to do when writing a new piece
374of software is to figure out how to take the information that is being
375worked with (in a graphics program, an image; in a spreadsheet, a grid
376of numbers) and turn it into a linear string of bytes. These strings
377of bytes are commonly called files or (somewhat more hiply)
378streams. They are to telegrams what modern humans are to Cro-Magnon
379man, which is to say the same thing under a different name. All that
380you see on your computer screen--your Tomb Raider, your digitized
381voice mail messages, faxes, and word processing documents written in
382thirty-seven different typefaces--is still, from the computer's point
383of view, just like telegrams, except much longer, and demanding of
384more arithmetic.
385
386The quickest way to get a taste of this is to fire up your web
387browser, visit a site, and then select the View/Document Source menu
388item. You will get a bunch of computer code that looks something like
389this:
390
391<HTML> <HEAD> <TITLE> C R Y P T O N O M I C O N</TITLE>
392
393</HEAD> <BODY BGCOLOR="#000000" LINK="#996600" ALINK="#FFFFFF"
394VLINK="#663300">
395
396<MAP NAME="navtext"> <AREA SHAPE=RECT HREF="praise.html"
397 COORDS="0,37,84,55"> <AREA SHAPE=RECT HREF="author.html"
398 COORDS="0,59,137,75"> <AREA SHAPE=RECT HREF="text.html"
399 COORDS="0,81,101,96"> <AREA SHAPE=RECT HREF="tour.html"
400 COORDS="0,100,121,117"> <AREA SHAPE=RECT HREF="order.html"
401 COORDS="0,122,143,138"> <AREA SHAPE=RECT HREF="beginning.html"
402 COORDS="0,140,213,157"> </MAP>
403
404
405<CENTER>
406<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="520">
407<TR>
408
409 <TD VALIGN=TOP ROWSPAN="5">
410 <IMG SRC="images/spacer.gif" WIDTH="30" HEIGHT="1" BORDER="0">
411 </TD>
412
413 <TD VALIGN=TOP COLSPAN="2">
414 <IMG SRC="images/main_banner.gif" ALT="Cryptonomincon by Neal
415Stephenson" WIDTH="479" HEIGHT="122" BORDER="0">
416 </TD>
417
418</TR>
419
420This crud is called HTML (HyperText Markup Language) and it is
421basically a very simple programming language instructing your web
422browser how to draw a page on a screen. Anyone can learn HTML and many
423people do. The important thing is that no matter what splendid
424multimedia web pages they might represent, HTML files are just
425telegrams.
426
427When Ronald Reagan was a radio announcer, he used to call baseball
428games by reading the terse descriptions that trickled in over the
429telegraph wire and were printed out on a paper tape. He would sit
430there, all by himself in a padded room with a microphone, and the
431paper tape would eke out of the machine and crawl over the palm of his
432hand printed with cryptic abbreviations. If the count went to three
433and two, Reagan would describe the scene as he saw it in his mind's
434eye: "The brawny left-hander steps out of the batter's box to wipe the
435sweat from his brow. The umpire steps forward to sweep the dirt from
436home plate." and so on. When the cryptogram on the paper tape
437announced a base hit, he would whack the edge of the table with a
438pencil, creating a little sound effect, and describe the arc of the
439ball as if he could actually see it. His listeners, many of whom
440presumably thought that Reagan was actually at the ballpark watching
441the game, would reconstruct the scene in their minds according to his
442descriptions.
443
444This is exactly how the World Wide Web works: the HTML files are the
445pithy description on the paper tape, and your Web browser is Ronald
446Reagan. The same is true of Graphical User Interfaces in general.
447
448So an OS is a stack of metaphors and abstractions that stands between
449you and the telegrams, and embodying various tricks the programmer
450used to convert the information you're working with--be it images,
451e-mail messages, movies, or word processing documents--into the
452necklaces of bytes that are the only things computers know how to work
453with. When we used actual telegraph equipment (teletypes) or their
454higher-tech substitutes ("glass teletypes," or the MS-DOS command
455line) to work with our computers, we were very close to the bottom of
456that stack. When we use most modern operating systems, though, our
457interaction with the machine is heavily mediated. Everything we do is
458interpreted and translated time and again as it works its way down
459through all of the metaphors and abstractions.
460
461The Macintosh OS was a revolution in both the good and bad senses of
462that word. Obviously it was true that command line interfaces were not
463for everyone, and that it would be a good thing to make computers more
464accessible to a less technical audience--if not for altruistic
465reasons, then because those sorts of people constituted an
466incomparably vaster market. It was clear the the Mac's engineers saw a
467whole new country stretching out before them; you could almost hear
468them muttering, "Wow! We don't have to be bound by files as linear
469streams of bytes anymore, vive la revolution, let's see how far we can
470take this!" No command line interface was available on the Macintosh;
471you talked to it with the mouse, or not at all. This was a statement
472of sorts, a credential of revolutionary purity. It seemed that the
473designers of the Mac intended to sweep Command Line Interfaces into
474the dustbin of history.
475
476My own personal love affair with the Macintosh began in the spring of
4771984 in a computer store in Cedar Rapids, Iowa, when a friend of
478mine--coincidentally, the son of the MGB owner--showed me a Macintosh
479running MacPaint, the revolutionary drawing program. It ended in July
480of 1995 when I tried to save a big important file on my Macintosh
481Powerbook and instead of doing so, it annihilated the data so
482thoroughly that two different disk crash utility programs were unable
483to find any trace that it had ever existed. During the intervening ten
484years, I had a passion for the MacOS that seemed righteous and
485reasonable at the time but in retrospect strikes me as being exactly
486the same sort of goofy infatuation that my friend's dad had with his
487car.
488
489The introduction of the Mac triggered a sort of holy war in the
490computer world. Were GUIs a brilliant design innovation that made
491computers more human-centered and therefore accessible to the masses,
492leading us toward an unprecedented revolution in human society, or an
493insulting bit of audiovisual gimcrackery dreamed up by flaky Bay Area
494hacker types that stripped computers of their power and flexibility
495and turned the noble and serious work of computing into a childish
496video game?
497
498This debate actually seems more interesting to me today than it did in
499the mid-1980s. But people more or less stopped debating it when
500Microsoft endorsed the idea of GUIs by coming out with the first
501Windows. At this point, command-line partisans were relegated to the
502status of silly old grouches, and a new conflict was touched off,
503between users of MacOS and users of Windows.
504
505There was plenty to argue about. The first Macintoshes looked
506different from other PCs even when they were turned off: they
507consisted of one box containing both CPU (the part of the computer
508that does arithmetic on bits) and monitor screen. This was billed, at
509the time, as a philosophical statement of sorts: Apple wanted to make
510the personal computer into an appliance, like a toaster. But it also
511reflected the purely technical demands of running a graphical user
512interface. In a GUI machine, the chips that draw things on the screen
513have to be integrated with the computer's central processing unit, or
514CPU, to a far greater extent than is the case with command-line
515interfaces, which until recently didn't even know that they weren't
516just talking to teletypes.
517
518This distinction was of a technical and abstract nature, but it became
519clearer when the machine crashed (it is commonly the case with
520technologies that you can get the best insight about how they work by
521watching them fail). When everything went to hell and the CPU began
522spewing out random bits, the result, on a CLI machine, was lines and
523lines of perfectly formed but random characters on the screen--known
524to cognoscenti as "going Cyrillic." But to the MacOS, the screen was
525not a teletype, but a place to put graphics; the image on the screen
526was a bitmap, a literal rendering of the contents of a particular
527portion of the computer's memory. When the computer crashed and wrote
528gibberish into the bitmap, the result was something that looked
529vaguely like static on a broken television set--a "snow crash."
530
531And even after the introduction of Windows, the underlying differences
532endured; when a Windows machine got into trouble, the old command-line
533interface would fall down over the GUI like an asbestos fire curtain
534sealing off the proscenium of a burning opera. When a Macintosh got
535into trouble it presented you with a cartoon of a bomb, which was
536funny the first time you saw it.
537
538And these were by no means superficial differences. The reversion of
539Windows to a CLI when it was in distress proved to Mac partisans that
540Windows was nothing more than a cheap facade, like a garish afghan
541flung over a rotted-out sofa. They were disturbed and annoyed by the
542sense that lurking underneath Windows' ostensibly user-friendly
543interface was--literally--a subtext.
544
545For their part, Windows fans might have made the sour observation that
546all computers, even Macintoshes, were built on that same subtext, and
547that the refusal of Mac owners to admit that fact to themselves seemed
548to signal a willingness, almost an eagerness, to be duped.
549
550Anyway, a Macintosh had to switch individual bits in the memory chips
551on the video card, and it had to do it very fast, and in arbitrarily
552complicated patterns. Nowadays this is cheap and easy, but in the
553technological regime that prevailed in the early 1980s, the only
554realistic way to do it was to build the motherboard (which contained
555the CPU) and the video system (which contained the memory that was
556mapped onto the screen) as a tightly integrated whole--hence the
557single, hermetically sealed case that made the Macintosh so
558distinctive.
559
560When Windows came out, it was conspicuous for its ugliness, and its
561current successors, Windows 95 and Windows NT, are not things that
562people would pay money to look at either. Microsoft's complete
563disregard for aesthetics gave all of us Mac-lovers plenty of
564opportunities to look down our noses at them. That Windows looked an
565awful lot like a direct ripoff of MacOS gave us a burning sense of
566moral outrage to go with it. Among people who really knew and
567appreciated computers (hackers, in Steven Levy's non-pejorative sense
568of that word) and in a few other niches such as professional
569musicians, graphic artists and schoolteachers, the Macintosh, for a
570while, was simply the computer. It was seen as not only a superb piece
571of engineering, but an embodiment of certain ideals about the use of
572technology to benefit mankind, while Windows was seen as a
573pathetically clumsy imitation and a sinister world domination plot
574rolled into one. So very early, a pattern had been established that
575endures to this day: people dislike Microsoft, which is okay; but they
576dislike it for reasons that are poorly considered, and in the end,
577self-defeating.
578
579
580CLASS STRUGGLE ON THE DESKTOP
581
582Now that the Third Rail has been firmly grasped, it is worth reviewing
583some basic facts here: like any other publicly traded, for-profit
584corporation, Microsoft has, in effect, borrowed a bunch of money from
585some people (its stockholders) in order to be in the bit business. As
586an officer of that corporation, Bill Gates has one responsibility
587only, which is to maximize return on investment. He has done this
588incredibly well. Any actions taken in the world by Microsoft-any
589software released by them, for example--are basically epiphenomena,
590which can't be interpreted or understood except insofar as they
591reflect Bill Gates's execution of his one and only responsibility.
592
593It follows that if Microsoft sells goods that are aesthetically
594unappealing, or that don't work very well, it does not mean that they
595are (respectively) philistines or half-wits. It is because Microsoft's
596excellent management has figured out that they can make more money for
597their stockholders by releasing stuff with obvious, known
598imperfections than they can by making it beautiful or bug-free. This
599is annoying, but (in the end) not half so annoying as watching Apple
600inscrutably and relentlessly destroy itself.
601
602Hostility towards Microsoft is not difficult to find on the Net, and
603it blends two strains: resentful people who feel Microsoft is too
604powerful, and disdainful people who think it's tacky. This is all
605strongly reminiscent of the heyday of Communism and Socialism, when
606the bourgeoisie were hated from both ends: by the proles, because they
607had all the money, and by the intelligentsia, because of their
608tendency to spend it on lawn ornaments. Microsoft is the very
609embodiment of modern high-tech prosperity--it is, in a word,
610bourgeois--and so it attracts all of the same gripes.
611
612The opening "splash screen" for Microsoft Word 6.0 summed it up pretty
613neatly: when you started up the program you were treated to a picture
614of an expensive enamel pen lying across a couple of sheets of
615fancy-looking handmade writing paper. It was obviously a bid to make
616the software look classy, and it might have worked for some, but it
617failed for me, because the pen was a ballpoint, and I'm a fountain pen
618man. If Apple had done it, they would've used a Mont Blanc fountain
619pen, or maybe a Chinese calligraphy brush. And I doubt that this was
620an accident. Recently I spent a while re-installing Windows NT on one
621of my home computers, and many times had to double-click on the
622"Control Panel" icon. For reasons that are difficult to fathom, this
623icon consists of a picture of a clawhammer and a chisel or screwdriver
624resting on top of a file folder.
625
626These aesthetic gaffes give one an almost uncontrollable urge to make
627fun of Microsoft, but again, it is all beside the point--if Microsoft
628had done focus group testing of possible alternative graphics, they
629probably would have found that the average mid-level office worker
630associated fountain pens with effete upper management toffs and was
631more comfortable with ballpoints. Likewise, the regular guys, the
632balding dads of the world who probably bear the brunt of setting up
633and maintaining home computers, can probably relate better to a
634picture of a clawhammer--while perhaps harboring fantasies of taking a
635real one to their balky computers.
636
637This is the only way I can explain certain peculiar facts about the
638current market for operating systems, such as that ninety percent of
639all customers continue to buy station wagons off the Microsoft lot
640while free tanks are there for the taking, right across the street.
641
642A string of ones and zeroes was not a difficult thing for Bill Gates
643to distribute, one he'd thought of the idea. The hard part was selling
644it--reassuring customers that they were actually getting something in
645return for their money.
646
647Anyone who has ever bought a piece of software in a store has had the
648curiously deflating experience of taking the bright shrink-wrapped box
649home, tearing it open, finding that it's 95 percent air, throwing away
650all the little cards, party favors, and bits of trash, and loading the
651disk into the computer. The end result (after you've lost the disk) is
652nothing except some images on a computer screen, and some capabilities
653that weren't there before. Sometimes you don't even have that--you
654have a string of error messages instead. But your money is definitely
655gone. Now we are almost accustomed to this, but twenty years ago it
656was a very dicey business proposition. Bill Gates made it work
657anyway. He didn't make it work by selling the best software or
658offering the cheapest price. Instead he somehow got people to believe
659that they were receiving something in exchange for their money.
660
661The streets of every city in the world are filled with those hulking,
662rattling station wagons. Anyone who doesn't own one feels a little
663weird, and wonders, in spite of himself, whether it might not be time
664to cease resistance and buy one; anyone who does, feels confident that
665he has acquired some meaningful possession, even on those days when
666the vehicle is up on a lift in an auto repair shop.
667
668All of this is perfectly congruent with membership in the bourgeoisie,
669which is as much a mental, as a material state. And it explains why
670Microsoft is regularly attacked, on the Net, from both sides. People
671who are inclined to feel poor and oppressed construe everything
672Microsoft does as some sinister Orwellian plot. People who like to
673think of themselves as intelligent and informed technology users are
674driven crazy by the clunkiness of Windows.
675
676Nothing is more annoying to sophisticated people to see someone who is
677rich enough to know better being tacky--unless it is to realize, a
678moment later, that they probably know they are tacky and they simply
679don't care and they are going to go on being tacky, and rich, and
680happy, forever. Microsoft therefore bears the same relationship to the
681Silicon Valley elite as the Beverly Hillbillies did to their fussy
682banker, Mr. Drysdale--who is irritated not so much by the fact that
683the Clampetts moved to his neighborhood as by the knowledge that, when
684Jethro is seventy years old, he's still going to be talking like a
685hillbilly and wearing bib overalls, and he's still going to be a lot
686richer than Mr. Drysdale.
687
688Even the hardware that Windows ran on, when compared to the machines
689put out by Apple, looked like white-trash stuff, and still mostly
690does. The reason was that Apple was and is a hardware company, while
691Microsoft was and is a software company. Apple therefore had a
692monopoly on hardware that could run MacOS, whereas Windows-compatible
693hardware came out of a free market. The free market seems to have
694decided that people will not pay for cool-looking computers; PC
695hardware makers who hire designers to make their stuff look
696distinctive get their clocks cleaned by Taiwanese clone makers
697punching out boxes that look as if they belong on cinderblocks in
698front of someone's trailer. But Apple could make their hardware as
699pretty as they wanted to and simply pass the higher prices on to their
700besotted consumers, like me. Only last week (I am writing this
701sentence in early Jan. 1999) the technology sections of all the
702newspapers were filled with adulatory press coverage of how Apple had
703released the iMac in several happenin' new colors like Blueberry and
704Tangerine.
705
706Apple has always insisted on having a hardware monopoly, except for a
707brief period in the mid-1990s when they allowed clone-makers to
708compete with them, before subsequently putting them out of
709business. Macintosh hardware was, consequently, expensive. You didn't
710open it up and fool around with it because doing so would void the
711warranty. In fact the first Mac was specifically designed to be
712difficult to open--you needed a kit of exotic tools, which you could
713buy through little ads that began to appear in the back pages of
714magazines a few months after the Mac came out on the market. These ads
715always had a certain disreputable air about them, like pitches for
716lock-picking tools in the backs of lurid detective magazines.
717
718This monopolistic policy can be explained in at least three different
719ways.
720
721THE CHARITABLE EXPLANATION is that the hardware monopoly policy
722reflected a drive on Apple's part to provide a seamless, unified
723blending of hardware, operating system, and software. There is
724something to this. It is hard enough to make an OS that works well on
725one specific piece of hardware, designed and tested by engineers who
726work down the hallway from you, in the same company. Making an OS to
727work on arbitrary pieces of hardware, cranked out by rabidly
728entrepeneurial clonemakers on the other side of the International Date
729Line, is very difficult, and accounts for much of the troubles people
730have using Windows.
731
732THE FINANCIAL EXPLANATION is that Apple, unlike Microsoft, is and
733always has been a hardware company. It simply depends on revenue from
734selling hardware, and cannot exist without it.
735
736THE NOT-SO-CHARITABLE EXPLANATION has to do with Apple's corporate
737culture, which is rooted in Bay Area Baby Boomdom.
738
739Now, since I'm going to talk for a moment about culture, full
740disclosure is probably in order, to protect myself against allegations
741of conflict of interest and ethical turpitude: (1) Geographically I am
742a Seattleite, of a Saturnine temperament, and inclined to take a sour
743view of the Dionysian Bay Area, just as they tend to be annoyed and
744appalled by us. (2) Chronologically I am a post-Baby Boomer. I feel
745that way, at least, because I never experienced the fun and exciting
746parts of the whole Boomer scene--just spent a lot of time dutifully
747chuckling at Boomers' maddeningly pointless anecdotes about just how
748stoned they got on various occasions, and politely fielding their
749assertions about how great their music was. But even from this remove
750it was possible to glean certain patterns, and one that recurred as
751regularly as an urban legend was the one about how someone would move
752into a commune populated by sandal-wearing, peace-sign flashing flower
753children, and eventually discover that, underneath this facade, the
754guys who ran it were actually control freaks; and that, as living in a
755commune, where much lip service was paid to ideals of peace, love and
756harmony, had deprived them of normal, socially approved outlets for
757their control-freakdom, it tended to come out in other, invariably
758more sinister, ways.
759
760Applying this to the case of Apple Computer will be left as an
761exercise for the reader, and not a very difficult exercise.
762
763It is a bit unsettling, at first, to think of Apple as a control
764freak, because it is completely at odds with their corporate
765image. Weren't these the guys who aired the famous Super Bowl ads
766showing suited, blindfolded executives marching like lemmings off a
767cliff? Isn't this the company that even now runs ads picturing the
768Dalai Lama (except in Hong Kong) and Einstein and other offbeat
769rebels?
770
771It is indeed the same company, and the fact that they have been able
772to plant this image of themselves as creative and rebellious
773free-thinkers in the minds of so many intelligent and media-hardened
774skeptics really gives one pause. It is testimony to the insidious
775power of expensive slick ad campaigns and, perhaps, to a certain
776amount of wishful thinking in the minds of people who fall for
777them. It also raises the question of why Microsoft is so bad at PR,
778when the history of Apple demonstrates that, by writing large checks
779to good ad agencies, you can plant a corporate image in the minds of
780intelligent people that is completely at odds with reality. (The
781answer, for people who don't like Damoclean questions, is that since
782Microsoft has won the hearts and minds of the silent majority--the
783bourgeoisie--they don't give a damn about having a slick image, any
784more then Dick Nixon did. "I want to believe,"--the mantra that Fox
785Mulder has pinned to his office wall in The X-Files--applies in
786different ways to these two companies; Mac partisans want to believe
787in the image of Apple purveyed in those ads, and in the notion that
788Macs are somehow fundamentally different from other computers, while
789Windows people want to believe that they are getting something for
790their money, engaging in a respectable business transaction).
791
792In any event, as of 1987, both MacOS and Windows were out on the
793market, running on hardware platforms that were radically different
794from each other--not only in the sense that MacOS used Motorola CPU
795chips while Windows used Intel, but in the sense--then overlooked, but
796in the long run, vastly more significant--that the Apple hardware
797business was a rigid monopoly and the Windows side was a churning
798free-for-all.
799
800But the full ramifications of this did not become clear until very
801recently--in fact, they are still unfolding, in remarkably strange
802ways, as I'll explain when we get to Linux. The upshot is that
803millions of people got accustomed to using GUIs in one form or
804another. By doing so, they made Apple/Microsoft a lot of money. The
805fortunes of many people have become bound up with the ability of these
806companies to continue selling products whose salability is very much
807open to question.
808
809
810HONEY-POT, TAR-PIT, WHATEVER
811
812
813When Gates and Allen invented the idea of selling software, they ran
814into criticism from both hackers and sober-sided
815businesspeople. Hackers understood that software was just information,
816and objected to the idea of selling it. These objections were partly
817moral. The hackers were coming out of the scientific and academic
818world where it is imperative to make the results of one's work freely
819available to the public. They were also partly practical; how can you
820sell something that can be easily copied? Businesspeople, who are
821polar opposites of hackers in so many ways, had objections of their
822own. Accustomed to selling toasters and insurance policies, they
823naturally had a difficult time understanding how a long collection of
824ones and zeroes could constitute a salable product.
825
826Obviously Microsoft prevailed over these objections, and so did
827Apple. But the objections still exist. The most hackerish of all the
828hackers, the Ur-hacker as it were, was and is Richard Stallman, who
829became so annoyed with the evil practice of selling software that, in
8301984 (the same year that the Macintosh went on sale) he went off and
831founded something called the Free Software Foundation, which commenced
832work on something called GNU. Gnu is an acronym for Gnu's Not Unix,
833but this is a joke in more ways than one, because GNU most certainly
834IS Unix,. Because of trademark concerns ("Unix" is trademarked by
835AT&T) they simply could not claim that it was Unix, and so, just to be
836extra safe, they claimed that it wasn't. Notwithstanding the
837incomparable talent and drive possessed by Mr. Stallman and other GNU
838adherents, their project to build a free Unix to compete against
839Microsoft and Apple's OSes was a little bit like trying to dig a
840subway system with a teaspoon. Until, that is, the advent of Linux,
841which I will get to later.
842
843But the basic idea of re-creating an operating system from scratch was
844perfectly sound and completely doable. It has been done many times. It
845is inherent in the very nature of operating systems.
846
847Operating systems are not strictly necessary. There is no reason why a
848sufficiently dedicated coder could not start from nothing with every
849project and write fresh code to handle such basic, low-level
850operations as controlling the read/write heads on the disk drives and
851lighting up pixels on the screen. The very first computers had to be
852programmed in this way. But since nearly every program needs to carry
853out those same basic operations, this approach would lead to vast
854duplication of effort.
855
856Nothing is more disagreeable to the hacker than duplication of
857effort. The first and most important mental habit that people develop
858when they learn how to write computer programs is to generalize,
859generalize, generalize. To make their code as modular and flexible as
860possible, breaking large problems down into small subroutines that can
861be used over and over again in different contexts. Consequently, the
862development of operating systems, despite being technically
863unnecessary, was inevitable. Because at its heart, an operating system
864is nothing more than a library containing the most commonly used code,
865written once (and hopefully written well) and then made available to
866every coder who needs it.
867
868So a proprietary, closed, secret operating system is a contradiction
869in terms. It goes against the whole point of having an operating
870system. And it is impossible to keep them secret anyway. The source
871code--the original lines of text written by the programmers--can be
872kept secret. But an OS as a whole is a collection of small subroutines
873that do very specific, very clearly defined jobs. Exactly what those
874subroutines do has to be made public, quite explicitly and exactly, or
875else the OS is completely useless to programmers; they can't make use
876of those subroutines if they don't have a complete and perfect
877understanding of what the subroutines do.
878
879The only thing that isn't made public is exactly how the subroutines
880do what they do. But once you know what a subroutine does, it's
881generally quite easy (if you are a hacker) to write one of your own
882that does exactly the same thing. It might take a while, and it is
883tedious and unrewarding, but in most cases it's not really hard.
884
885What's hard, in hacking as in fiction, is not writing; it's deciding
886what to write. And the vendors of commercial OSes have already
887decided, and published their decisions.
888
889This has been generally understood for a long time. MS-DOS was
890duplicated, functionally, by a rival product, written from scratch,
891called ProDOS, that did all of the same things in pretty much the same
892way. In other words, another company was able to write code that did
893all of the same things as MS-DOS and sell it at a profit. If you are
894using the Linux OS, you can get a free program called WINE which is a
895windows emulator; that is, you can open up a window on your desktop
896that runs windows programs. It means that a completely functional
897Windows OS has been recreated inside of Unix, like a ship in a
898bottle. And Unix itself, which is vastly more sophisticated than
899MS-DOS, has been built up from scratch many times over. Versions of it
900are sold by Sun, Hewlett-Packard, AT&T, Silicon Graphics, IBM, and
901others.
902
903People have, in other words, been re-writing basic OS code for so long
904that all of the technology that constituted an "operating system" in
905the traditional (pre-GUI) sense of that phrase is now so cheap and
906common that it's literally free. Not only could Gates and Allen not
907sell MS-DOS today, they could not even give it away, because much more
908powerful OSes are already being given away. Even the original Windows
909(which was the only windows until 1995) has become worthless, in that
910there is no point in owning something that can be emulated inside of
911Linux--which is, itself, free.
912
913In this way the OS business is very different from, say, the car
914business. Even an old rundown car has some value. You can use it for
915making runs to the dump, or strip it for parts. It is the fate of
916manufactured goods to slowly and gently depreciate as they get old and
917have to compete against more modern products.
918
919But it is the fate of operating systems to become free.
920
921Microsoft is a great software applications company. Applications--such
922as Microsoft Word--are an area where innovation brings real, direct,
923tangible benefits to users. The innovations might be new technology
924straight from the research department, or they might be in the
925category of bells and whistles, but in any event they are frequently
926useful and they seem to make users happy. And Microsoft is in the
927process of becoming a great research company. But Microsoft is not
928such a great operating systems company. And this is not necessarily
929because their operating systems are all that bad from a purely
930technological standpoint. Microsoft's OSes do have their problems,
931sure, but they are vastly better than they used to be, and they are
932adequate for most people.
933
934Why, then, do I say that Microsoft is not such a great operating
935systems company? Because the very nature of operating systems is such
936that it is senseless for them to be developed and owned by a specific
937company. It's a thankless job to begin with. Applications create
938possibilities for millions of credulous users, whereas OSes impose
939limitations on thousands of grumpy coders, and so OS-makers will
940forever be on the shit-list of anyone who counts for anything in the
941high-tech world. Applications get used by people whose big problem is
942understanding all of their features, whereas OSes get hacked by coders
943who are annoyed by their limitations. The OS business has been good to
944Microsoft only insofar as it has given them the money they needed to
945launch a really good applications software business and to hire a lot
946of smart researchers. Now it really ought to be jettisoned, like a
947spent booster stage from a rocket. The big question is whether
948Microsoft is capable of doing this. Or is it addicted to OS sales in
949the same way as Apple is to selling hardware?
950
951Keep in mind that Apple's ability to monopolize its own hardware
952supply was once cited, by learned observers, as a great advantage over
953Microsoft. At the time, it seemed to place them in a much stronger
954position. In the end, it nearly killed them, and may kill them
955yet. The problem, for Apple, was that most of the world's computer
956users ended up owning cheaper hardware. But cheap hardware couldn't
957run MacOS, and so these people switched to Windows.
958
959Replace "hardware" with "operating systems," and "Apple" with
960"Microsoft" and you can see the same thing about to happen all over
961again. Microsoft dominates the OS market, which makes them money and
962seems like a great idea for now. But cheaper and better OSes are
963available, and they are growingly popular in parts of the world that
964are not so saturated with computers as the US. Ten years from now,
965most of the world's computer users may end up owning these cheaper
966OSes. But these OSes do not, for the time being, run any Microsoft
967applications, and so these people will use something else.
968
969To put it more directly: every time someone decides to use a
970non-Microsoft OS, Microsoft's OS division, obviously, loses a
971customer. But, as things stand now, Microsoft's applications division
972loses a customer too. This is not such a big deal as long as almost
973everyone uses Microsoft OSes. But as soon as Windows' market share
974begins to slip, the math starts to look pretty dismal for the people
975in Redmond.
976
977This argument could be countered by saying that Microsoft could simply
978re-compile its applications to run under other OSes. But this strategy
979goes against most normal corporate instincts. Again the case of Apple
980is instructive. When things started to go south for Apple, they should
981have ported their OS to cheap PC hardware. But they didn't. Instead,
982they tried to make the most of their brilliant hardware, adding new
983features and expanding the product line. But this only had the effect
984of making their OS more dependent on these special hardware features,
985which made it worse for them in the end.
986
987Likewise, when Microsoft's position in the OS world is threatened,
988their corporate instincts will tell them to pile more new features
989into their operating systems, and then re-jigger their software
990applications to exploit those special features. But this will only
991have the effect of making their applications dependent on an OS with
992declining market share, and make it worse for them in the end.
993
994The operating system market is a death-trap, a tar-pit, a slough of
995despond. There are only two reasons to invest in Apple and
996Microsoft. (1) each of these companies is in what we would call a
997co-dependency relationship with their customers. The customers Want To
998Believe, and Apple and Microsoft know how to give them what they
999want. (2) each company works very hard to add new features to their
1000OSes, which works to secure customer loyalty, at least for a little
1001while.
1002
1003Accordingly, most of the remainder of this essay will be about those
1004two topics.
1005
1006THE TECHNOSPHERE
1007
1008Unix is the only OS remaining whose GUI (a vast suite of code called
1009the X Windows System) is separate from the OS in the old sense of the
1010phrase. This is to say that you can run Unix in pure command-line mode
1011if you want to, with no windows, icons, mouses, etc. whatsoever, and
1012it will still be Unix and capable of doing everything Unix is supposed
1013to do. But the other OSes: MacOS, the Windows family, and BeOS, have
1014their GUIs tangled up with the old-fashioned OS functions to the
1015extent that they have to run in GUI mode, or else they are not really
1016running. So it's no longer really possible to think of GUIs as being
1017distinct from the OS; they're now an inextricable part of the OSes
1018that they belong to--and they are by far the largest part, and by far
1019the most expensive and difficult part to create.
1020
1021There are only two ways to sell a product: price and features. When
1022OSes are free, OS companies cannot compete on price, and so they
1023compete on features. This means that they are always trying to outdo
1024each other writing code that, until recently, was not considered to be
1025part of an OS at all: stuff like GUIs. This explains a lot about how
1026these companies behave.
1027
1028It explains why Microsoft added a browser to their OS, for example. It
1029is easy to get free browsers, just as to get free OSes. If browsers
1030are free, and OSes are free, it would seem that there is no way to
1031make money from browsers or OSes. But if you can integrate a browser
1032into the OS and thereby imbue both of them with new features, you have
1033a salable product.
1034
1035Setting aside, for the moment, the fact that this makes government
1036anti-trust lawyers really mad, this strategy makes sense. At least, it
1037makes sense if you assume (as Microsoft's management appears to) that
1038the OS has to be protected at all costs. The real question is whether
1039every new technological trend that comes down the pike ought to be
1040used as a crutch to maintain the OS's dominant position. Confronted
1041with the Web phenomenon, Microsoft had to develop a really good web
1042browser, and they did. But then they had a choice: they could have
1043made that browser work on many different OSes, which would give
1044Microsoft a strong position in the Internet world no matter what
1045happened to their OS market share. Or they could make the browser one
1046with the OS, gambling that this would make the OS look so modern and
1047sexy that it would help to preserve their dominance in that
1048market. The problem is that when Microsoft's OS position begins to
1049erode (and since it is currently at something like ninety percent, it
1050can't go anywhere but down) it will drag everything else down with it.
1051
1052In your high school geology class you probably were taught that all
1053life on earth exists in a paper-thin shell called the biosphere, which
1054is trapped between thousands of miles of dead rock underfoot, and cold
1055dead radioactive empty space above. Companies that sell OSes exist in
1056a sort of technosphere. Underneath is technology that has already
1057become free. Above is technology that has yet to be developed, or that
1058is too crazy and speculative to be productized just yet. Like the
1059Earth's biosphere, the technosphere is very thin compared to what is
1060above and what is below.
1061
1062But it moves a lot faster. In various parts of our world, it is
1063possible to go and visit rich fossil beds where skeleton lies piled
1064upon skeleton, recent ones on top and more ancient ones below. In
1065theory they go all the way back to the first single-celled
1066organisms. And if you use your imagination a bit, you can understand
1067that, if you hang around long enough, you'll become fossilized there
1068too, and in time some more advanced organism will become fossilized on
1069top of you.
1070
1071The fossil record--the La Brea Tar Pit--of software technology is the
1072Internet. Anything that shows up there is free for the taking
1073(possibly illegal, but free). Executives at companies like Microsoft
1074must get used to the experience--unthinkable in other industries--of
1075throwing millions of dollars into the development of new technologies,
1076such as Web browsers, and then seeing the same or equivalent software
1077show up on the Internet two years, or a year, or even just a few
1078months, later.
1079
1080By continuing to develop new technologies and add features onto their
1081products they can keep one step ahead of the fossilization process,
1082but on certain days they must feel like mammoths caught at La Brea,
1083using all their energies to pull their feet, over and over again, out
1084of the sucking hot tar that wants to cover and envelop them.
1085
1086Survival in this biosphere demands sharp tusks and heavy, stomping
1087feet at one end of the organization, and Microsoft famously has
1088those. But trampling the other mammoths into the tar can only keep you
1089alive for so long. The danger is that in their obsession with staying
1090out of the fossil beds, these companies will forget about what lies
1091above the biosphere: the realm of new technology. In other words, they
1092must hang onto their primitive weapons and crude competitive
1093instincts, but also evolve powerful brains. This appears to be what
1094Microsoft is doing with its research division, which has been hiring
1095smart people right and left (Here I should mention that although I
1096know, and socialize with, several people in that company's research
1097division, we never talk about business issues and I have little to no
1098idea what the hell they are up to. I have learned much more about
1099Microsoft by using the Linux operating system than I ever would have
1100done by using Windows).
1101
1102Never mind how Microsoft used to make money; today, it is making its
1103money on a kind of temporal arbitrage. "Arbitrage," in the usual
1104sense, means to make money by taking advantage of differences in the
1105price of something between different markets. It is spatial, in other
1106words, and hinges on the arbitrageur knowing what is going on
1107simultaneously in different places. Microsoft is making money by
1108taking advantage of differences in the price of technology in
1109different times. Temporal arbitrage, if I may coin a phrase, hinges on
1110the arbitrageur knowing what technologies people will pay money for
1111next year, and how soon afterwards those same technologies will become
1112free. What spatial and temporal arbitrage have in common is that both
1113hinge on the arbitrageur's being extremely well-informed; one about
1114price gradients across space at a given time, and the other about
1115price gradients over time in a given place.
1116
1117So Apple/Microsoft shower new features upon their users almost daily,
1118in the hopes that a steady stream of genuine technical innovations,
1119combined with the "I want to believe" phenomenon, will prevent their
1120customers from looking across the road towards the cheaper and better
1121OSes that are available to them. The question is whether this makes
1122sense in the long run. If Microsoft is addicted to OSes as Apple is to
1123hardware, then they will bet the whole farm on their OSes, and tie all
1124of their new applications and technologies to them. Their continued
1125survival will then depend on these two things: adding more features to
1126their OSes so that customers will not switch to the cheaper
1127alternatives, and maintaining the image that, in some mysterious way,
1128gives those customers the feeling that they are getting something for
1129their money.
1130
1131The latter is a truly strange and interesting cultural phenomenon.
1132
1133THE INTERFACE CULTURE
1134
1135
1136A few years ago I walked into a grocery store somewhere and was
1137presented with the following tableau vivant: near the entrance a young
1138couple were standing in front of a large cosmetics display. The man
1139was stolidly holding a shopping basket between his hands while his
1140mate raked blister-packs of makeup off the display and piled them
1141in. Since then I've always thought of that man as the personification
1142of an interesting human tendency: not only are we not offended to be
1143dazzled by manufactured images, but we like it. We practically insist
1144on it. We are eager to be complicit in our own dazzlement: to pay
1145money for a theme park ride, vote for a guy who's obviously lying to
1146us, or stand there holding the basket as it's filled up with
1147cosmetics.
1148
1149I was in Disney World recently, specifically the part of it called the
1150Magic Kingdom, walking up Main Street USA. This is a perfect
1151gingerbready Victorian small town that culminates in a Disney
1152castle. It was very crowded; we shuffled rather than walked. Directly
1153in front of me was a man with a camcorder. It was one of the new breed
1154of camcorders where instead of peering through a viewfinder you gaze
1155at a flat-panel color screen about the size of a playing card, which
1156televises live coverage of whatever the camcorder is seeing. He was
1157holding the appliance close to his face, so that it obstructed his
1158view. Rather than go see a real small town for free, he had paid money
1159to see a pretend one, and rather than see it with the naked eye he was
1160watching it on television.
1161
1162And rather than stay home and read a book, I was watching him.
1163
1164Americans' preference for mediated experiences is obvious enough, and
1165I'm not going to keep pounding it into the ground. I'm not even going
1166to make snotty comments about it--after all, I was at Disney World as
1167a paying customer. But it clearly relates to the colossal success of
1168GUIs and so I have to talk about it some. Disney does mediated
1169experiences better than anyone. If they understood what OSes are, and
1170why people use them, they could crush Microsoft in a year or two.
1171
1172In the part of Disney World called the Animal Kingdom there is a new
1173attraction, slated to open in March 1999, called the Maharajah Jungle
1174Trek. It was open for sneak previews when I was there. This is a
1175complete stone-by-stone reproduction of a hypothetical ruin in the
1176jungles of India. According to its backstory, it was built by a local
1177rajah in the 16th Century as a game reserve. He would go there with
1178his princely guests to hunt Bengal tigers. As time went on it fell
1179into disrepair and the tigers and monkeys took it over; eventually,
1180around the time of India's independence, it became a government
1181wildlife reserve, now open to visitors.
1182
1183The place looks more like what I have just described than any actual
1184building you might find in India. All the stones in the broken walls
1185are weathered as if monsoon rains had been trickling down them for
1186centuries, the paint on the gorgeous murals is flaked and faded just
1187so, and Bengal tigers loll amid stumps of broken columns. Where modern
1188repairs have been made to the ancient structure, they've been done,
1189not as Disney's engineers would do them, but as thrifty Indian
1190janitors would--with hunks of bamboo and rust-spotted hunks of
1191rebar. The rust is painted on, or course, and protected from real rust
1192by a plastic clear-coat, but you can't tell unless you get down on
1193your knees.
1194
1195In one place you walk along a stone wall with a series of old pitted
1196friezes carved into it. One end of the wall has broken off and settled
1197into the earth, perhaps because of some long-forgotten earthquake, and
1198so a broad jagged crack runs across a panel or two, but the story is
1199still readable: first, primordial chaos leads to a flourishing of many
1200animal species. Next, we see the Tree of Life surrounded by diverse
1201animals. This is an obvious allusion (or, in showbiz lingo, a tie-in)
1202to the gigantic Tree of Life that dominates the center of Disney's
1203Animal Kingdom just as the Castle dominates the Magic Kingdom or the
1204Sphere does Epcot. But it's rendered in historically correct style and
1205could probably fool anyone who didn't have a Ph.D. in Indian art
1206history.
1207
1208The next panel shows a mustachioed H. sapiens chopping down the Tree
1209of Life with a scimitar, and the animals fleeing every which way. The
1210one after that shows the misguided human getting walloped by a tidal
1211wave, part of a latter-day Deluge presumably brought on by his
1212stupidity.
1213
1214The final panel, then, portrays the Sapling of Life beginning to grow
1215back, but now Man has ditched the edged weapon and joined the other
1216animals in standing around to adore and praise it.
1217
1218It is, in other words, a prophecy of the Bottleneck: the scenario,
1219commonly espoused among modern-day environmentalists, that the world
1220faces an upcoming period of grave ecological tribulations that will
1221last for a few decades or centuries and end when we find a new
1222harmonious modus vivendi with Nature.
1223
1224Taken as a whole the frieze is a pretty brilliant piece of
1225work. Obviously it's not an ancient Indian ruin, and some person or
1226people now living deserve credit for it. But there are no signatures
1227on the Maharajah's game reserve at Disney World. There are no
1228signatures on anything, because it would ruin the whole effect to have
1229long strings of production credits dangling from every custom-worn
1230brick, as they do from Hollywood movies.
1231
1232Among Hollywood writers, Disney has the reputation of being a real
1233wicked stepmother. It's not hard to see why. Disney is in the business
1234of putting out a product of seamless illusion--a magic mirror that
1235reflects the world back better than it really is. But a writer is
1236literally talking to his or her readers, not just creating an ambience
1237or presenting them with something to look at; and just as the
1238command-line interface opens a much more direct and explicit channel
1239from user to machine than the GUI, so it is with words, writer, and
1240reader.
1241
1242The word, in the end, is the only system of encoding thoughts--the
1243only medium--that is not fungible, that refuses to dissolve in the
1244devouring torrent of electronic media (the richer tourists at Disney
1245World wear t-shirts printed with the names of famous designers,
1246because designs themselves can be bootlegged easily and with
1247impunity. The only way to make clothing that cannot be legally
1248bootlegged is to print copyrighted and trademarked words on it; once
1249you have taken that step, the clothing itself doesn't really matter,
1250and so a t-shirt is as good as anything else. T-shirts with expensive
1251words on them are now the insignia of the upper class. T-shirts with
1252cheap words, or no words at all, are for the commoners).
1253
1254But this special quality of words and of written communication would
1255have the same effect on Disney's product as spray-painted graffiti on
1256a magic mirror. So Disney does most of its communication without
1257resorting to words, and for the most part, the words aren't
1258missed. Some of Disney's older properties, such as Peter Pan, Winnie
1259the Pooh, and Alice in Wonderland, came out of books. But the authors'
1260names are rarely if ever mentioned, and you can't buy the original
1261books at the Disney store. If you could, they would all seem old and
1262queer, like very bad knockoffs of the purer, more authentic Disney
1263versions. Compared to more recent productions like Beauty and the
1264Beast and Mulan, the Disney movies based on these books (particularly
1265Alice in Wonderland and Peter Pan) seem deeply bizarre, and not wholly
1266appropriate for children. That stands to reason, because Lewis Carroll
1267and J.M. Barrie were very strange men, and such is the nature of the
1268written word that their personal strangeness shines straight through
1269all the layers of Disneyfication like x-rays through a wall. Probably
1270for this very reason, Disney seems to have stopped buying books
1271altogether, and now finds its themes and characters in folk tales,
1272which have the lapidary, time-worn quality of the ancient bricks in
1273the Maharajah's ruins.
1274
1275If I can risk a broad generalization, most of the people who go to
1276Disney World have zero interest in absorbing new ideas from
1277books. Which sounds snide, but listen: they have no qualms about being
1278presented with ideas in other forms. Disney World is stuffed with
1279environmental messages now, and the guides at Animal Kingdom can talk
1280your ear off about biology.
1281
1282If you followed those tourists home, you might find art, but it would
1283be the sort of unsigned folk art that's for sale in Disney World's
1284African- and Asian-themed stores. In general they only seem
1285comfortable with media that have been ratified by great age, massive
1286popular acceptance, or both.
1287
1288In this world, artists are like the anonymous, illiterate stone
1289carvers who built the great cathedrals of Europe and then faded away
1290into unmarked graves in the churchyard. The cathedral as a whole is
1291awesome and stirring in spite, and possibly because, of the fact that
1292we have no idea who built it. When we walk through it we are communing
1293not with individual stone carvers but with an entire culture.
1294
1295Disney World works the same way. If you are an intellectual type, a
1296reader or writer of books, the nicest thing you can say about this is
1297that the execution is superb. But it's easy to find the whole
1298environment a little creepy, because something is missing: the
1299translation of all its content into clear explicit written words, the
1300attribution of the ideas to specific people. You can't argue with
1301it. It seems as if a hell of a lot might be being glossed over, as if
1302Disney World might be putting one over on us, and possibly getting
1303away with all kinds of buried assumptions and muddled thinking.
1304
1305But this is precisely the same as what is lost in the transition from
1306the command-line interface to the GUI.
1307
1308Disney and Apple/Microsoft are in the same business: short-circuiting
1309laborious, explicit verbal communication with expensively designed
1310interfaces. Disney is a sort of user interface unto itself--and more
1311than just graphical. Let's call it a Sensorial Interface. It can be
1312applied to anything in the world, real or imagined, albeit at
1313staggering expense.
1314
1315Why are we rejecting explicit word-based interfaces, and embracing
1316graphical or sensorial ones--a trend that accounts for the success of
1317both Microsoft and Disney?
1318
1319Part of it is simply that the world is very complicated now--much more
1320complicated than the hunter-gatherer world that our brains evolved to
1321cope with--and we simply can't handle all of the details. We have to
1322delegate. We have no choice but to trust some nameless artist at
1323Disney or programmer at Apple or Microsoft to make a few choices for
1324us, close off some options, and give us a conveniently packaged
1325executive summary.
1326
1327But more importantly, it comes out of the fact that, during this
1328century, intellectualism failed, and everyone knows it. In places like
1329Russia and Germany, the common people agreed to loosen their grip on
1330traditional folkways, mores, and religion, and let the intellectuals
1331run with the ball, and they screwed everything up and turned the
1332century into an abbatoir. Those wordy intellectuals used to be merely
1333tedious; now they seem kind of dangerous as well.
1334
1335We Americans are the only ones who didn't get creamed at some point
1336during all of this. We are free and prosperous because we have
1337inherited political and values systems fabricated by a particular set
1338of eighteenth-century intellectuals who happened to get it right. But
1339we have lost touch with those intellectuals, and with anything like
1340intellectualism, even to the point of not reading books any more,
1341though we are literate. We seem much more comfortable with propagating
1342those values to future generations nonverbally, through a process of
1343being steeped in media. Apparently this actually works to some degree,
1344for police in many lands are now complaining that local arrestees are
1345insisting on having their Miranda rights read to them, just like perps
1346in American TV cop shows. When it's explained to them that they are in
1347a different country, where those rights do not exist, they become
1348outraged. Starsky and Hutch reruns, dubbed into diverse languages, may
1349turn out, in the long run, to be a greater force for human rights than
1350the Declaration of Independence.
1351
1352A huge, rich, nuclear-tipped culture that propagates its core values
1353through media steepage seems like a bad idea. There is an obvious risk
1354of running astray here. Words are the only immutable medium we have,
1355which is why they are the vehicle of choice for extremely important
1356concepts like the Ten Commandments, the Koran, and the Bill of
1357Rights. Unless the messages conveyed by our media are somehow pegged
1358to a fixed, written set of precepts, they can wander all over the
1359place and possibly dump loads of crap into people's minds.
1360
1361Orlando used to have a military installation called McCoy Air Force
1362Base, with long runways from which B-52s could take off and reach
1363Cuba, or just about anywhere else, with loads of nukes. But now McCoy
1364has been scrapped and repurposed. It has been absorbed into Orlando's
1365civilian airport. The long runways are being used to land 747-loads of
1366tourists from Brazil, Italy, Russia and Japan, so that they can come
1367to Disney World and steep in our media for a while.
1368
1369To traditional cultures, especially word-based ones such as Islam,
1370this is infinitely more threatening than the B-52s ever were. It is
1371obvious, to everyone outside of the United States, that our
1372arch-buzzwords, multiculturalism and diversity, are false fronts that
1373are being used (in many cases unwittingly) to conceal a global trend
1374to eradicate cultural differences. The basic tenet of multiculturalism
1375(or "honoring diversity" or whatever you want to call it) is that
1376people need to stop judging each other-to stop asserting (and,
1377eventually, to stop believing) that this is right and that is wrong,
1378this true and that false, one thing ugly and another thing beautiful,
1379that God exists and has this or that set of qualities.
1380
1381The lesson most people are taking home from the Twentieth Century is
1382that, in order for a large number of different cultures to coexist
1383peacefully on the globe (or even in a neighborhood) it is necessary
1384for people to suspend judgment in this way. Hence (I would argue) our
1385suspicion of, and hostility towards, all authority figures in modern
1386culture. As David Foster Wallace has explained in his essay "E Unibus
1387Pluram," this is the fundamental message of television; it is the
1388message that people take home, anyway, after they have steeped in our
1389media long enough. It's not expressed in these highfalutin terms, of
1390course. It comes through as the presumption that all authority
1391figures--teachers, generals, cops, ministers, politicians--are
1392hypocritical buffoons, and that hip jaded coolness is the only way to
1393be.
1394
1395The problem is that once you have done away with the ability to make
1396judgments as to right and wrong, true and false, etc., there's no real
1397culture left. All that remains is clog dancing and macrame. The
1398ability to make judgments, to believe things, is the entire point
1399of having a culture. I think this is why guys with machine guns
1400sometimes pop up in places like Luxor, and begin pumping bullets into
1401Westerners. They perfectly understand the lesson of McCoy Air Force
1402Base. When their sons come home wearing Chicago Bulls caps with the
1403bills turned sideways, the dads go out of their minds.
1404
1405The global anti-culture that has been conveyed into every cranny of
1406the world by television is a culture unto itself, and by the standards
1407of great and ancient cultures like Islam and France, it seems grossly
1408inferior, at least at first. The only good thing you can say about it
1409is that it makes world wars and Holocausts less likely--and that is
1410actually a pretty good thing!
1411
1412The only real problem is that anyone who has no culture, other than
1413this global monoculture, is completely screwed. Anyone who grows up
1414watching TV, never sees any religion or philosophy, is raised in an
1415atmosphere of moral relativism, learns about civics from watching
1416bimbo eruptions on network TV news, and attends a university where
1417postmodernists vie to outdo each other in demolishing traditional
1418notions of truth and quality, is going to come out into the world as
1419one pretty feckless human being. And--again--perhaps the goal of all
1420this is to make us feckless so we won't nuke each other.
1421
1422On the other hand, if you are raised within some specific culture, you
1423end up with a basic set of tools that you can use to think about and
1424understand the world. You might use those tools to reject the culture
1425you were raised in, but at least you've got some tools.
1426
1427In this country, the people who run things--who populate major law
1428firms and corporate boards--understand all of this at some level. They
1429pay lip service to multiculturalism and diversity and
1430non-judgmentalness, but they don't raise their own children that
1431way. I have highly educated, technically sophisticated friends who
1432have moved to small towns in Iowa to live and raise their children,
1433and there are Hasidic Jewish enclaves in New York where large numbers
1434of kids are being brought up according to traditional beliefs. Any
1435suburban community might be thought of as a place where people who
1436hold certain (mostly implicit) beliefs go to live among others who
1437think the same way.
1438
1439And not only do these people feel some responsibility to their own
1440children, but to the country as a whole. Some of the upper class are
1441vile and cynical, of course, but many spend at least part of their
1442time fretting about what direction the country is going in, and what
1443responsibilities they have. And so issues that are important to
1444book-reading intellectuals, such as global environmental collapse,
1445eventually percolate through the porous buffer of mass culture and
1446show up as ancient Hindu ruins in Orlando.
1447
1448You may be asking: what the hell does all this have to do with
1449operating systems? As I've explained, there is no way to explain the
1450domination of the OS market by Apple/Microsoft without looking to
1451cultural explanations, and so I can't get anywhere, in this essay,
1452without first letting you know where I'm coming from vis-a-vis
1453contemporary culture.
1454
1455Contemporary culture is a two-tiered system, like the Morlocks and the
1456Eloi in H.G. Wells's The Time Machine, except that it's been turned
1457upside down. In The Time Machine the Eloi were an effete upper class,
1458supported by lots of subterranean Morlocks who kept the technological
1459wheels turning. But in our world it's the other way round. The
1460Morlocks are in the minority, and they are running the show, because
1461they understand how everything works. The much more numerous Eloi
1462learn everything they know from being steeped from birth in electronic
1463media directed and controlled by book-reading Morlocks. So many
1464ignorant people could be dangerous if they got pointed in the wrong
1465direction, and so we've evolved a popular culture that is (a) almost
1466unbelievably infectious and (b) neuters every person who gets infected
1467by it, by rendering them unwilling to make judgments and incapable of
1468taking stands.
1469
1470Morlocks, who have the energy and intelligence to comprehend details,
1471go out and master complex subjects and produce Disney-like Sensorial
1472Interfaces so that Eloi can get the gist without having to strain
1473their minds or endure boredom. Those Morlocks will go to India and
1474tediously explore a hundred ruins, then come home and build sanitary
1475bug-free versions: highlight films, as it were. This costs a lot,
1476because Morlocks insist on good coffee and first-class airline
1477tickets, but that's no problem because Eloi like to be dazzled and
1478will gladly pay for it all.
1479
1480Now I realize that most of this probably sounds snide and bitter to
1481the point of absurdity: your basic snotty intellectual throwing a
1482tantrum about those unlettered philistines. As if I were a self-styled
1483Moses, coming down from the mountain all alone, carrying the stone
1484tablets bearing the Ten Commandments carved in immutable stone--the
1485original command-line interface--and blowing his stack at the weak,
1486unenlightened Hebrews worshipping images. Not only that, but it sounds
1487like I'm pumping some sort of conspiracy theory.
1488
1489But that is not where I'm going with this. The situation I describe,
1490here, could be bad, but doesn't have to be bad and isn't necessarily
1491bad now.
1492
1493It simply is the case that we are way too busy, nowadays, to
1494comprehend everything in detail. And it's better to comprehend it
1495dimly, through an interface, than not at all. Better for ten million
1496Eloi to go on the Kilimanjaro Safari at Disney World than for a
1497thousand cardiovascular surgeons and mutual fund managers to go on
1498"real" ones in Kenya. The boundary between these two classes is more
1499porous than I've made it sound. I'm always running into regular
1500dudes--construction workers, auto mechanics, taxi drivers, galoots in
1501general--who were largely aliterate until something made it necessary
1502for them to become readers and start actually thinking about
1503things. Perhaps they had to come to grips with alcoholism, perhaps
1504they got sent to jail, or came down with a disease, or suffered a
1505crisis in religious faith, or simply got bored. Such people can get up
1506to speed on particular subjects quite rapidly. Sometimes their lack of
1507a broad education makes them over-apt to go off on intellectual wild
1508goose chases, but, hey, at least a wild goose chase gives you some
1509exercise. The spectre of a polity controlled by the fads and whims of
1510voters who actually believe that there are significant differences
1511between Bud Lite and Miller Lite, and who think that professional
1512wrestling is for real, is naturally alarming to people who don't. But
1513then countries controlled via the command-line interface, as it were,
1514by double-domed intellectuals, be they religious or secular, are
1515generally miserable places to live. Sophisticated people deride
1516Disneyesque entertainments as pat and saccharine, but, hey, if the
1517result of that is to instill basically warm and sympathetic reflexes,
1518at a preverbal level, into hundreds of millions of unlettered
1519media-steepers, then how bad can it be? We killed a lobster in our
1520kitchen last night and my daughter cried for an hour. The Japanese,
1521who used to be just about the fiercest people on earth, have become
1522infatuated with cuddly adorable cartoon characters. My own family--the
1523people I know best--is divided about evenly between people who will
1524probably read this essay and people who almost certainly won't, and I
1525can't say for sure that one group is necessarily warmer, happier, or
1526better-adjusted than the other.
1527
1528MORLOCKS AND ELOI AT THE KEYBOARD
1529
1530
1531Back in the days of the command-line interface, users were all
1532Morlocks who had to convert their thoughts into alphanumeric symbols
1533and type them in, a grindingly tedious process that stripped away all
1534ambiguity, laid bare all hidden assumptions, and cruelly punished
1535laziness and imprecision. Then the interface-makers went to work on
1536their GUIs, and introduced a new semiotic layer between people and
1537machines. People who use such systems have abdicated the
1538responsibility, and surrendered the power, of sending bits directly to
1539the chip that's doing the arithmetic, and handed that responsibility
1540and power over to the OS. This is tempting because giving clear
1541instructions, to anyone or anything, is difficult. We cannot do it
1542without thinking, and depending on the complexity of the situation, we
1543may have to think hard about abstract things, and consider any number
1544of ramifications, in order to do a good job of it. For most of us,
1545this is hard work. We want things to be easier. How badly we want it
1546can be measured by the size of Bill Gates's fortune.
1547
1548The OS has (therefore) become a sort of intellectual labor-saving
1549device that tries to translate humans' vaguely expressed intentions
1550into bits. In effect we are asking our computers to shoulder
1551responsibilities that have always been considered the province of
1552human beings--we want them to understand our desires, to anticipate
1553our needs, to foresee consequences, to make connections, to handle
1554routine chores without being asked, to remind us of what we ought to
1555be reminded of while filtering out noise.
1556
1557At the upper (which is to say, closer to the user) levels, this is
1558done through a set of conventions--menus, buttons, and so on. These
1559work in the sense that analogies work: they help Eloi understand
1560abstract or unfamiliar concepts by likening them to something
1561known. But the loftier word "metaphor" is used.
1562
1563The overarching concept of the MacOS was the "desktop metaphor" and it
1564subsumed any number of lesser (and frequently conflicting, or at least
1565mixed) metaphors. Under a GUI, a file (frequently called "document")
1566is metaphrased as a window on the screen (which is called a
1567"desktop"). The window is almost always too small to contain the
1568document and so you "move around," or, more pretentiously, "navigate"
1569in the document by "clicking and dragging" the "thumb" on the "scroll
1570bar." When you "type" (using a keyboard) or "draw" (using a "mouse")
1571into the "window" or use pull-down "menus" and "dialog boxes" to
1572manipulate its contents, the results of your labors get stored (at
1573least in theory) in a "file," and later you can pull the same
1574information back up into another "window." When you don't want it
1575anymore, you "drag" it into the "trash."
1576
1577There is massively promiscuous metaphor-mixing going on here, and I
1578could deconstruct it 'til the cows come home, but I won't. Consider
1579only one word: "document." When we document something in the real
1580world, we make fixed, permanent, immutable records of it. But computer
1581documents are volatile, ephemeral constellations of data. Sometimes
1582(as when you've just opened or saved them) the document as portrayed
1583in the window is identical to what is stored, under the same name, in
1584a file on the disk, but other times (as when you have made changes
1585without saving them) it is completely different. In any case, every
1586time you hit "Save" you annihilate the previous version of the
1587"document" and replace it with whatever happens to be in the window at
1588the moment. So even the word "save" is being used in a sense that is
1589grotesquely misleading---"destroy one version, save another" would be
1590more accurate.
1591
1592Anyone who uses a word processor for very long inevitably has the
1593experience of putting hours of work into a long document and then
1594losing it because the computer crashes or the power goes out. Until
1595the moment that it disappears from the screen, the document seems
1596every bit as solid and real as if it had been typed out in ink on
1597paper. But in the next moment, without warning, it is completely and
1598irretrievably gone, as if it had never existed. The user is left with
1599a feeling of disorientation (to say nothing of annoyance) stemming
1600from a kind of metaphor shear--you realize that you've been living and
1601thinking inside of a metaphor that is essentially bogus.
1602
1603So GUIs use metaphors to make computing easier, but they are bad
1604metaphors. Learning to use them is essentially a word game, a process
1605of learning new definitions of words like "window" and "document" and
1606"save" that are different from, and in many cases almost diametrically
1607opposed to, the old. Somewhat improbably, this has worked very well,
1608at least from a commercial standpoint, which is to say that
1609Apple/Microsoft have made a lot of money off of it. All of the other
1610modern operating systems have learned that in order to be accepted by
1611users they must conceal their underlying gutwork beneath the same sort
1612of spackle. This has some advantages: if you know how to use one GUI
1613operating system, you can probably work out how to use any other in a
1614few minutes. Everything works a little differently, like European
1615plumbing--but with some fiddling around, you can type a memo or surf
1616the web.
1617
1618Most people who shop for OSes (if they bother to shop at all) are
1619comparing not the underlying functions but the superficial look and
1620feel. The average buyer of an OS is not really paying for, and is not
1621especially interested in, the low-level code that allocates memory or
1622writes bytes onto the disk. What we're really buying is a system of
1623metaphors. And--much more important--what we're buying into is the
1624underlying assumption that metaphors are a good way to deal with the
1625world.
1626
1627Recently a lot of new hardware has become available that gives
1628computers numerous interesting ways of affecting the real world:
1629making paper spew out of printers, causing words to appear on screens
1630thousands of miles away, shooting beams of radiation through cancer
1631patients, creating realistic moving pictures of the Titanic. Windows
1632is now used as an OS for cash registers and bank tellers'
1633terminals. My satellite TV system uses a sort of GUI to change
1634channels and show program guides. Modern cellular telephones have a
1635crude GUI built into a tiny LCD screen. Even Legos now have a GUI: you
1636can buy a Lego set called Mindstorms that enables you to build little
1637Lego robots and program them through a GUI on your computer.
1638
1639So we are now asking the GUI to do a lot more than serve as a
1640glorified typewriter. Now we want to become a generalized tool for
1641dealing with reality. This has become a bonanza for companies that
1642make a living out of bringing new technology to the mass market.
1643
1644Obviously you cannot sell a complicated technological system to people
1645without some sort of interface that enables them to use it. The
1646internal combustion engine was a technological marvel in its day, but
1647useless as a consumer good until a clutch, transmission, steering
1648wheel and throttle were connected to it. That odd collection of
1649gizmos, which survives to this day in every car on the road, made up
1650what we would today call a user interface. But if cars had been
1651invented after Macintoshes, carmakers would not have bothered to gin
1652up all of these arcane devices. We would have a computer screen
1653instead of a dashboard, and a mouse (or at best a joystick) instead of
1654a steering wheel, and we'd shift gears by pulling down a menu:
1655
1656PARK --- REVERSE --- NEUTRAL ---- 3 2 1 --- Help...
1657
1658A few lines of computer code can thus be made to substitute for any
1659imaginable mechanical interface. The problem is that in many cases the
1660substitute is a poor one. Driving a car through a GUI would be a
1661miserable experience. Even if the GUI were perfectly bug-free, it
1662would be incredibly dangerous, because menus and buttons simply can't
1663be as responsive as direct mechanical controls. My friend's dad, the
1664gentleman who was restoring the MGB, never would have bothered with it
1665if it had been equipped with a GUI. It wouldn't have been any fun.
1666
1667The steering wheel and gearshift lever were invented during an era
1668when the most complicated technology in most homes was a butter
1669churn. Those early carmakers were simply lucky, in that they could
1670dream up whatever interface was best suited to the task of driving an
1671automobile, and people would learn it. Likewise with the dial
1672telephone and the AM radio. By the time of the Second World War, most
1673people knew several interfaces: they could not only churn butter but
1674also drive a car, dial a telephone, turn on a radio, summon flame from
1675a cigarette lighter, and change a light bulb.
1676
1677But now every little thing--wristwatches, VCRs, stoves--is jammed with
1678features, and every feature is useless without an interface. If you
1679are like me, and like most other consumers, you have never used ninety
1680percent of the available features on your microwave oven, VCR, or
1681cellphone. You don't even know that these features exist. The small
1682benefit they might bring you is outweighed by the sheer hassle of
1683having to learn about them. This has got to be a big problem for
1684makers of consumer goods, because they can't compete without offering
1685features.
1686
1687It's no longer acceptable for engineers to invent a wholly novel user
1688interface for every new product, as they did in the case of the
1689automobile, partly because it's too expensive and partly because
1690ordinary people can only learn so much. If the VCR had been invented a
1691hundred years ago, it would have come with a thumbwheel to adjust the
1692tracking and a gearshift to change between forward and reverse and a
1693big cast-iron handle to load or to eject the cassettes. It would have
1694had a big analog clock on the front of it, and you would have set the
1695time by moving the hands around on the dial. But because the VCR was
1696invented when it was--during a sort of awkward transitional period
1697between the era of mechanical interfaces and GUIs--it just had a bunch
1698of pushbuttons on the front, and in order to set the time you had to
1699push the buttons in just the right way. This must have seemed
1700reasonable enough to the engineers responsible for it, but to many
1701users it was simply impossible. Thus the famous blinking 12:00 that
1702appears on so many VCRs. Computer people call this "the blinking
1703twelve problem". When they talk about it, though, they usually aren't
1704talking about VCRs.
1705
1706Modern VCRs usually have some kind of on-screen programming, which
1707means that you can set the time and control other features through a
1708sort of primitive GUI. GUIs have virtual pushbuttons too, of course,
1709but they also have other types of virtual controls, like radio
1710buttons, checkboxes, text entry boxes, dials, and
1711scrollbars. Interfaces made out of these components seem to be a lot
1712easier, for many people, than pushing those little buttons on the
1713front of the machine, and so the blinking 12:00 itself is slowly
1714disappearing from America's living rooms. The blinking twelve problem
1715has moved on to plague other technologies.
1716
1717So the GUI has gone beyond being an interface to personal computers,
1718and become a sort of meta-interface that is pressed into service for
1719every new piece of consumer technology. It is rarely an ideal fit, but
1720having an ideal, or even a good interface is no longer the priority;
1721the important thing now is having some kind of interface that
1722customers will actually use, so that manufacturers can claim, with a
1723straight face, that they are offering new features.
1724
1725We want GUIs largely because they are convenient and because they are
1726easy-- or at least the GUI makes it seem that way Of course, nothing
1727is really easy and simple, and putting a nice interface on top of it
1728does not change that fact. A car controlled through a GUI would be
1729easier to drive than one controlled through pedals and steering wheel,
1730but it would be incredibly dangerous.
1731
1732By using GUIs all the time we have insensibly bought into a premise
1733that few people would have accepted if it were presented to them
1734bluntly: namely, that hard things can be made easy, and complicated
1735things simple, by putting the right interface on them. In order to
1736understand how bizarre this is, imagine that book reviews were written
1737according to the same values system that we apply to user interfaces:
1738"The writing in this book is marvelously simple-minded and glib; the
1739author glosses over complicated subjects and employs facile
1740generalizations in almost every sentence. Readers rarely have to
1741think, and are spared all of the difficulty and tedium typically
1742involved in reading old-fashioned books." As long as we stick to
1743simple operations like setting the clocks on our VCRs, this is not so
1744bad. But as we try to do more ambitious things with our technologies,
1745we inevitably run into the problem of:
1746
1747
1748METAPHOR SHEAR
1749
1750
1751I began using Microsoft Word as soon as the first version was released
1752around 1985. After some initial hassles I found it to be a better tool
1753than MacWrite, which was its only competition at the time. I wrote a
1754lot of stuff in early versions of Word, storing it all on floppies,
1755and transferred the contents of all my floppies to my first hard
1756drive, which I acquired around 1987. As new versions of Word came out
1757I faithfully upgraded, reasoning that as a writer it made sense for me
1758to spend a certain amount of money on tools.
1759
1760Sometime in the mid-1980's I attempted to open one of my old,
1761circa-1985 Word documents using the version of Word then current: 6.0
1762It didn't work. Word 6.0 did not recognize a document created by an
1763earlier version of itself. By opening it as a text file, I was able to
1764recover the sequences of letters that made up the text of the
1765document. My words were still there. But the formatting had been run
1766through a log chipper--the words I'd written were interrupted by
1767spates of empty rectangular boxes and gibberish.
1768
1769Now, in the context of a business (the chief market for Word) this
1770sort of thing is only an annoyance--one of the routine hassles that go
1771along with using computers. It's easy to buy little file converter
1772programs that will take care of this problem. But if you are a writer
1773whose career is words, whose professional identity is a corpus of
1774written documents, this kind of thing is extremely disquieting. There
1775are very few fixed assumptions in my line of work, but one of them is
1776that once you have written a word, it is written, and cannot be
1777unwritten. The ink stains the paper, the chisel cuts the stone, the
1778stylus marks the clay, and something has irrevocably happened (my
1779brother-in-law is a theologian who reads 3250-year-old cuneiform
1780tablets--he can recognize the handwriting of particular scribes, and
1781identify them by name). But word-processing software--particularly the
1782sort that employs special, complex file formats--has the eldritch
1783power to unwrite things. A small change in file formats, or a few
1784twiddled bits, and months' or years' literary output can cease to
1785exist.
1786
1787Now this was technically a fault in the application (Word 6.0 for the
1788Macintosh) not the operating system (MacOS 7 point something) and so
1789the initial target of my annoyance was the people who were responsible
1790for Word. But. On the other hand, I could have chosen the "save as
1791text" option in Word and saved all of my documents as simple
1792telegrams, and this problem would not have arisen. Instead I had
1793allowed myself to be seduced by all of those flashy formatting options
1794that hadn't even existed until GUIs had come along to make them
1795practicable. I had gotten into the habit of using them to make my
1796documents look pretty (perhaps prettier than they deserved to look;
1797all of the old documents on those floppies turned out to be more or
1798less crap). Now I was paying the price for that
1799self-indulgence. Technology had moved on and found ways to make my
1800documents look even prettier, and the consequence of it was that all
1801old ugly documents had ceased to exist.
1802
1803It was--if you'll pardon me for a moment's strange little fantasy--as
1804if I'd gone to stay at some resort, some exquisitely designed and
1805art-directed hotel, placing myself in the hands of past masters of the
1806Sensorial Interface, and had sat down in my room and written a story
1807in ballpoint pen on a yellow legal pad, and when I returned from
1808dinner, discovered that the maid had taken my work away and left
1809behind in its place a quill pen and a stack of fine
1810parchment--explaining that the room looked ever so much finer this
1811way, and it was all part of a routine upgrade. But written on these
1812sheets of paper, in flawless penmanship, were long sequences of words
1813chosen at random from the dictionary. Appalling, sure, but I couldn't
1814really lodge a complaint with the management, because by staying at
1815this resort I had given my consent to it. I had surrendered my Morlock
1816credentials and become an Eloi.
1817
1818
1819LINUX
1820
1821During the late 1980's and early 1990's I spent a lot of time
1822programming Macintoshes, and eventually decided for fork over several
1823hundred dollars for an Apple product called the Macintosh Programmer's
1824Workshop, or MPW. MPW had competitors, but it was unquestionably the
1825premier software development system for the Mac. It was what Apple's
1826own engineers used to write Macintosh code. Given that MacOS was far
1827more technologically advanced, at the time, than its competition, and
1828that Linux did not even exist yet, and given that this was the actual
1829program used by Apple's world-class team of creative engineers, I had
1830high expectations. It arrived on a stack of floppy disks about a foot
1831high, and so there was plenty of time for my excitement to build
1832during the endless installation process. The first time I launched
1833MPW, I was probably expecting some kind of touch-feely multimedia
1834showcase. Instead it was austere, almost to the point of being
1835intimidating. It was a scrolling window into which you could type
1836simple, unformatted text. The system would then interpret these lines
1837of text as commands, and try to execute them.
1838
1839It was, in other words, a glass teletype running a command line
1840interface. It came with all sorts of cryptic but powerful commands,
1841which could be invoked by typing their names, and which I learned to
1842use only gradually. It was not until a few years later, when I began
1843messing around with Unix, that I understood that the command line
1844interface embodied in MPW was a re-creation of Unix.
1845
1846In other words, the first thing that Apple's hackers had done when
1847they'd got the MacOS up and running--probably even before they'd
1848gotten it up and running--was to re-create the Unix interface, so that
1849they would be able to get some useful work done. At the time, I simply
1850couldn't get my mind around this, but: as far as Apple's hackers were
1851concerned, the Mac's vaunted Graphical User Interface was an
1852impediment, something to be circumvented before the little toaster
1853even came out onto the market.
1854
1855Even before my Powerbook crashed and obliterated my big file in July
18561995, there had been danger signs. An old college buddy of mine, who
1857starts and runs high-tech companies in Boston, had developed a
1858commercial product using Macintoshes as the front end. Basically the
1859Macs were high-performance graphics terminals, chosen for their sweet
1860user interface, giving users access to a large database of graphical
1861information stored on a network of much more powerful, but less
1862user-friendly, computers. This fellow was the second person who turned
1863me on to Macintoshes, by the way, and through the mid-1980's we had
1864shared the thrill of being high-tech cognoscenti, using superior Apple
1865technology in a world of DOS-using knuckleheads. Early versions of my
1866friend's system had worked well, he told me, but when several machines
1867joined the network, mysterious crashes began to occur; sometimes the
1868whole network would just freeze. It was one of those bugs that could
1869not be reproduced easily. Finally they figured out that these network
1870crashes were triggered whenever a user, scanning the menus for a
1871particular item, held down the mouse button for more than a couple of
1872seconds.
1873
1874Fundamentally, the MacOS could only do one thing at a time. Drawing a
1875menu on the screen is one thing. So when a menu was pulled down, the
1876Macintosh was not capable of doing anything else until that indecisive
1877user released the button.
1878
1879This is not such a bad thing in a single-user, single-process machine
1880(although it's a fairly bad thing), but it's no good in a machine that
1881is on a network, because being on a network implies some kind of
1882continual low-level interaction with other machines. By failing to
1883respond to the network, the Mac caused a network-wide crash.
1884
1885In order to work with other computers, and with networks, and with
1886various different types of hardware, an OS must be incomparably more
1887complicated and powerful than either MS-DOS or the original MacOS. The
1888only way of connecting to the Internet that's worth taking seriously
1889is PPP, the Point-to-Point Protocol, which (never mind the details)
1890makes your computer--temporarily--a full-fledged member of the Global
1891Internet, with its own unique address, and various privileges, powers,
1892and responsibilities appertaining thereunto. Technically it means your
1893machine is running the TCP/IP protocol, which, to make a long story
1894short, revolves around sending packets of data back and forth, in no
1895particular order, and at unpredictable times, according to a clever
1896and elegant set of rules. But sending a packet of data is one thing,
1897and so an OS that can only do one thing at a time cannot
1898simultaneously be part of the Internet and do anything else. When
1899TCP/IP was invented, running it was an honor reserved for Serious
1900Computers--mainframes and high-powered minicomputers used in technical
1901and commercial settings--and so the protocol is engineered around the
1902assumption that every computer using it is a serious machine, capable
1903of doing many things at once. Not to put too fine a point on it, a
1904Unix machine. Neither MacOS nor MS-DOS was originally built with that
1905in mind, and so when the Internet got hot, radical changes had to be
1906made.
1907
1908When my Powerbook broke my heart, and when Word stopped recognizing my
1909old files, I jumped to Unix. The obvious alternative to MacOS would
1910have been Windows. I didn't really have anything against Microsoft, or
1911Windows. But it was pretty obvious, now, that old PC operating systems
1912were overreaching, and showing the strain, and, perhaps, were best
1913avoided until they had learned to walk and chew gum at the same time.
1914
1915The changeover took place on a particular day in the summer of 1995. I
1916had been in San Francisco for a couple of weeks, using my PowerBook to
1917work on a document. The document was too big to fit onto a single
1918floppy, and so I hadn't made a backup since leaving home. The
1919PowerBook crashed and wiped out the entire file.
1920
1921It happened just as I was on my way out the door to visit a company
1922called Electric Communities, which in those days was in Los Altos. I
1923took my PowerBook with me. My friends at Electric Communities were Mac
1924users who had all sorts of utility software for unerasing files and
1925recovering from disk crashes, and I was certain I could get most of
1926the file back.
1927
1928As it turned out, two different Mac crash recovery utilities were
1929unable to find any trace that my file had ever existed. It was
1930completely and systematically wiped out. We went through that hard
1931disk block by block and found disjointed fragments of countless old,
1932discarded, forgotten files, but none of what I wanted. The metaphor
1933shear was especially brutal that day. It was sort of like watching the
1934girl you've been in love with for ten years get killed in a car wreck,
1935and then attending her autopsy, and learning that underneath the
1936clothes and makeup she was just flesh and blood.
1937
1938I must have been reeling around the offices of Electric Communities in
1939some kind of primal Jungian fugue, because at this moment three
1940weirdly synchronistic things happened.
1941
1942(1) Randy Farmer, a co-founder of the company, came in for a quick
1943visit along with his family--he was recovering from back surgery at
1944the time. He had some hot gossip: "Windows 95 mastered today." What
1945this meant was that Microsoft's new operating system had, on this day,
1946been placed on a special compact disk known as a golden master, which
1947would be used to stamp out a jintillion copies in preparation for its
1948thunderous release a few weeks later. This news was received peevishly
1949by the staff of Electric Communities, including one whose office door
1950was plastered with the usual assortment of cartoons and novelties,
1951e.g.
1952
1953(2) a copy of a Dilbert cartoon in which Dilbert, the long-suffering
1954corporate software engineer, encounters a portly, bearded, hairy man
1955of a certain age--a bit like Santa Claus, but darker, with a certain
1956edge about him. Dilbert recognizes this man, based upon his appearance
1957and affect, as a Unix hacker, and reacts with a certain mixture of
1958nervousness, awe, and hostility. Dilbert jabs weakly at the disturbing
1959interloper for a couple of frames; the Unix hacker listens with a kind
1960of infuriating, beatific calm, then, in the last frame, reaches into
1961his pocket. "Here's a nickel, kid," he says, "go buy yourself a real
1962computer."
1963
1964(3) the owner of the door, and the cartoon, was one Doug
1965Barnes. Barnes was known to harbor certain heretical opinions on the
1966subject of operating systems. Unlike most Bay Area techies who revered
1967the Macintosh, considering it to be a true hacker's machine, Barnes
1968was fond of pointing out that the Mac, with its hermetically sealed
1969architecture, was actually hostile to hackers, who are prone to
1970tinkering and dogmatic about openness. By contrast, the IBM-compatible
1971line of machines, which can easily be taken apart and plugged back
1972together, was much more hackable.
1973
1974So when I got home I began messing around with Linux, which is one of
1975many, many different concrete implementations of the abstract,
1976Platonic ideal called Unix. I was not looking forward to changing over
1977to a new OS, because my credit cards were still smoking from all the
1978money I'd spent on Mac hardware over the years. But Linux's great
1979virtue was, and is, that it would run on exactly the same sort of
1980hardware as the Microsoft OSes--which is to say, the cheapest hardware
1981in existence. As if to demonstrate why this was a great idea, I was,
1982within a week or two of returning home, able to get my hand on a
1983then-decent computer (a 33-MHz 486 box) for free, because I knew a guy
1984who worked in an office where they were simply being thrown away. Once
1985I got it home, I yanked the hood off, stuck my hands in, and began
1986switching cards around. If something didn't work, I went to a
1987used-computer outlet and pawed through a bin full of components and
1988bought a new card for a few bucks.
1989
1990The availability of all this cheap but effective hardware was an
1991unintended consequence of decisions that had been made more than a
1992decade earlier by IBM and Microsoft. When Windows came out, and
1993brought the GUI to a much larger market, the hardware regime changed:
1994the cost of color video cards and high-resolution monitors began to
1995drop, and is dropping still. This free-for-all approach to hardware
1996meant that Windows was unavoidably clunky compared to MacOS. But the
1997GUI brought computing to such a vast audience that volume went way up
1998and prices collapsed. Meanwhile Apple, which so badly wanted a clean,
1999integrated OS with video neatly integrated into processing hardware,
2000had fallen far behind in market share, at least partly because their
2001beautiful hardware cost so much.
2002
2003But the price that we Mac owners had to pay for superior aesthetics
2004and engineering was not merely a financial one. There was a cultural
2005price too, stemming from the fact that we couldn't open up the hood
2006and mess around with it. Doug Barnes was right. Apple, in spite of its
2007reputation as the machine of choice of scruffy, creative hacker types,
2008had actually created a machine that discouraged hacking, while
2009Microsoft, viewed as a technological laggard and copycat, had created
2010a vast, disorderly parts bazaar--a primordial soup that eventually
2011self-assembled into Linux.
2012
2013
2014THE HOLE HAWG OF OPERATING SYSTEMS
2015
2016
2017Unix has always lurked provocatively in the background of the
2018operating system wars, like the Russian Army. Most people know it only
2019by reputation, and its reputation, as the Dilbert cartoon suggests, is
2020mixed. But everyone seems to agree that if it could only get its act
2021together and stop surrendering vast tracts of rich agricultural land
2022and hundreds of thousands of prisoners of war to the onrushing
2023invaders, it could stomp them (and all other opposition) flat.
2024
2025It is difficult to explain how Unix has earned this respect without
2026going into mind-smashing technical detail. Perhaps the gist of it can
2027be explained by telling a story about drills.
2028
2029The Hole Hawg is a drill made by the Milwaukee Tool Company. If you
2030look in a typical hardware store you may find smaller Milwaukee drills
2031but not the Hole Hawg, which is too powerful and too expensive for
2032homeowners. The Hole Hawg does not have the pistol-like design of a
2033cheap homeowner's drill. It is a cube of solid metal with a handle
2034sticking out of one face and a chuck mounted in another. The cube
2035contains a disconcertingly potent electric motor. You can hold the
2036handle and operate the trigger with your index finger, but unless you
2037are exceptionally strong you cannot control the weight of the Hole
2038Hawg with one hand; it is a two-hander all the way. In order to fight
2039off the counter-torque of the Hole Hawg you use a separate handle
2040(provided), which you screw into one side of the iron cube or the
2041other depending on whether you are using your left or right hand to
2042operate the trigger. This handle is not a sleek, ergonomically
2043designed item as it would be in a homeowner's drill. It is simply a
2044foot-long chunk of regular galvanized pipe, threaded on one end, with
2045a black rubber handle on the other. If you lose it, you just go to the
2046local plumbing supply store and buy another chunk of pipe.
2047
2048During the Eighties I did some construction work. One day, another
2049worker leaned a ladder against the outside of the building that we
2050were putting up, climbed up to the second-story level, and used the
2051Hole Hawg to drill a hole through the exterior wall. At some point,
2052the drill bit caught in the wall. The Hole Hawg, following its one and
2053only imperative, kept going. It spun the worker's body around like a
2054rag doll, causing him to knock his own ladder down. Fortunately he
2055kept his grip on the Hole Hawg, which remained lodged in the wall, and
2056he simply dangled from it and shouted for help until someone came
2057along and reinstated the ladder.
2058
2059I myself used a Hole Hawg to drill many holes through studs, which it
2060did as a blender chops cabbage. I also used it to cut a few
2061six-inch-diameter holes through an old lath-and-plaster ceiling. I
2062chucked in a new hole saw, went up to the second story, reached down
2063between the newly installed floor joists, and began to cut through the
2064first-floor ceiling below. Where my homeowner's drill had labored and
2065whined to spin the huge bit around, and had stalled at the slightest
2066obstruction, the Hole Hawg rotated with the stupid consistency of a
2067spinning planet. When the hole saw seized up, the Hole Hawg spun
2068itself and me around, and crushed one of my hands between the steel
2069pipe handle and a joist, producing a few lacerations, each surrounded
2070by a wide corona of deeply bruised flesh. It also bent the hole saw
2071itself, though not so badly that I couldn't use it. After a few such
2072run-ins, when I got ready to use the Hole Hawg my heart actually began
2073to pound with atavistic terror.
2074
2075But I never blamed the Hole Hawg; I blamed myself. The Hole Hawg is
2076dangerous because it does exactly what you tell it to. It is not bound
2077by the physical limitations that are inherent in a cheap drill, and
2078neither is it limited by safety interlocks that might be built into a
2079homeowner's product by a liability-conscious manufacturer. The danger
2080lies not in the machine itself but in the user's failure to envision
2081the full consequences of the instructions he gives to it.
2082
2083A smaller tool is dangerous too, but for a completely different
2084reason: it tries to do what you tell it to, and fails in some way that
2085is unpredictable and almost always undesirable. But the Hole Hawg is
2086like the genie of the ancient fairy tales, who carries out his
2087master's instructions literally and precisely and with unlimited
2088power, often with disastrous, unforeseen consequences.
2089
2090Pre-Hole Hawg, I used to examine the drill selection in hardware
2091stores with what I thought was a judicious eye, scorning the smaller
2092low-end models and hefting the big expensive ones appreciatively,
2093wishing I could afford one of them babies. Now I view them all with
2094such contempt that I do not even consider them to be real
2095drills--merely scaled-up toys designed to exploit the self-delusional
2096tendencies of soft-handed homeowners who want to believe that they
2097have purchased an actual tool. Their plastic casings, carefully
2098designed and focus-group-tested to convey a feeling of solidity and
2099power, seem disgustingly flimsy and cheap to me, and I am ashamed that
2100I was ever bamboozled into buying such knicknacks.
2101
2102It is not hard to imagine what the world would look like to someone
2103who had been raised by contractors and who had never used any drill
2104other than a Hole Hawg. Such a person, presented with the best and
2105most expensive hardware-store drill, would not even recognize it as
2106such. He might instead misidentify it as a child's toy, or some kind
2107of motorized screwdriver. If a salesperson or a deluded homeowner
2108referred to it as a drill, he would laugh and tell them that they were
2109mistaken--they simply had their terminology wrong. His interlocutor
2110would go away irritated, and probably feeling rather defensive about
2111his basement full of cheap, dangerous, flashy, colorful tools.
2112
2113Unix is the Hole Hawg of operating systems, and Unix hackers, like
2114Doug Barnes and the guy in the Dilbert cartoon and many of the other
2115people who populate Silicon Valley, are like contractor's sons who
2116grew up using only Hole Hawgs. They might use Apple/Microsoft OSes to
2117write letters, play video games, or balance their checkbooks, but they
2118cannot really bring themselves to take these operating systems
2119seriously.
2120
2121
2122THE ORAL TRADITION
2123
2124
2125Unix is hard to learn. The process of learning it is one of multiple
2126small epiphanies. Typically you are just on the verge of inventing
2127some necessary tool or utility when you realize that someone else has
2128already invented it, and built it in, and this explains some odd file
2129or directory or command that you have noticed but never really
2130understood before.
2131
2132For example there is a command (a small program, part of the OS)
2133called whoami, which enables you to ask the computer who it thinks you
2134are. On a Unix machine, you are always logged in under some
2135name--possibly even your own! What files you may work with, and what
2136software you may use, depends on your identity. When I started out
2137using Linux, I was on a non-networked machine in my basement, with
2138only one user account, and so when I became aware of the whoami
2139command it struck me as ludicrous. But once you are logged in as one
2140person, you can temporarily switch over to a pseudonym in order to
2141access different files. If your machine is on the Internet, you can
2142log onto other computers, provided you have a user name and a
2143password. At that point the distant machine becomes no different in
2144practice from the one right in front of you. These changes in identity
2145and location can easily become nested inside each other, many layers
2146deep, even if you aren't doing anything nefarious. Once you have
2147forgotten who and where you are, the whoami command is
2148indispensible. I use it all the time.
2149
2150The file systems of Unix machines all have the same general
2151structure. On your flimsy operating systems, you can create
2152directories (folders) and give them names like Frodo or My Stuff and
2153put them pretty much anywhere you like. But under Unix the highest
2154level--the root--of the filesystem is always designated with the
2155single character "/" and it always contains the same set of top-level
2156directories:
2157
2158/usr /etc /var /bin /proc /boot /home /root /sbin /dev /lib /tmp
2159
2160
2161and each of these directories typically has its own distinct structure
2162of subdirectories. Note the obsessive use of abbreviations and
2163avoidance of capital letters; this is a system invented by people to
2164whom repetitive stress disorder is what black lung is to miners. Long
2165names get worn down to three-letter nubbins, like stones smoothed by a
2166river.
2167
2168This is not the place to try to explain why each of the above
2169directories exists, and what is contained in it. At first it all seems
2170obscure; worse, it seems deliberately obscure. When I started using
2171Linux I was accustomed to being able to create directories wherever I
2172wanted and to give them whatever names struck my fancy. Under Unix you
2173are free to do that, of course (you are free to do anything) but as
2174you gain experience with the system you come to understand that the
2175directories listed above were created for the best of reasons and that
2176your life will be much easier if you follow along (within /home, by
2177the way, you have pretty much unlimited freedom).
2178
2179After this kind of thing has happened several hundred or thousand
2180times, the hacker understands why Unix is the way it is, and agrees
2181that it wouldn't be the same any other way. It is this sort of
2182acculturation that gives Unix hackers their confidence in the system,
2183and the attitude of calm, unshakable, annoying superiority captured in
2184the Dilbert cartoon. Windows 95 and MacOS are products, contrived by
2185engineers in the service of specific companies. Unix, by contrast, is
2186not so much a product as it is a painstakingly compiled oral history
2187of the hacker subculture. It is our Gilgamesh epic.
2188
2189What made old epics like Gilgamesh so powerful and so long-lived was
2190that they were living bodies of narrative that many people knew by
2191heart, and told over and over again--making their own personal
2192embellishments whenever it struck their fancy. The bad embellishments
2193were shouted down, the good ones picked up by others, polished,
2194improved, and, over time, incorporated into the story. Likewise, Unix
2195is known, loved, and understood by so many hackers that it can be
2196re-created from scratch whenever someone needs it. This is very
2197difficult to understand for people who are accustomed to thinking of
2198OSes as things that absolutely have to be bought.
2199
2200Many hackers have launched more or less successful re-implementations
2201of the Unix ideal. Each one brings in new embellishments. Some of them
2202die out quickly, some are merged with similar, parallel innovations
2203created by different hackers attacking the same problem, others still
2204are embraced, and adopted into the epic. Thus Unix has slowly accreted
2205around a simple kernel and acquired a kind of complexity and asymmetry
2206about it that is organic, like the roots of a tree, or the branchings
2207of a coronary artery. Understanding it is more like anatomy than
2208physics.
2209
2210For at least a year, prior to my adoption of Linux, I had been hearing
2211about it. Credible, well-informed people kept telling me that a bunch
2212of hackers had got together an implentation of Unix that could be
2213downloaded, free of charge, from the Internet. For a long time I could
2214not bring myself to take the notion seriously. It was like hearing
2215rumors that a group of model rocket enthusiasts had created a
2216completely functional Saturn V by exchanging blueprints on the Net and
2217mailing valves and flanges to each other.
2218
2219But it's true. Credit for Linux generally goes to its human namesake,
2220one Linus Torvalds, a Finn who got the whole thing rolling in 1991
2221when he used some of the GNU tools to write the beginnings of a Unix
2222kernel that could run on PC-compatible hardware. And indeed Torvalds
2223deserves all the credit he has ever gotten, and a whole lot more. But
2224he could not have made it happen by himself, any more than Richard
2225Stallman could have. To write code at all, Torvalds had to have cheap
2226but powerful development tools, and these he got from Stallman's GNU
2227project.
2228
2229And he had to have cheap hardware on which to write that code. Cheap
2230hardware is a much harder thing to arrange than cheap software; a
2231single person (Stallman) can write software and put it up on the Net
2232for free, but in order to make hardware it's necessary to have a whole
2233industrial infrastructure, which is not cheap by any stretch of the
2234imagination. Really the only way to make hardware cheap is to punch
2235out an incredible number of copies of it, so that the unit cost
2236eventually drops. For reasons already explained, Apple had no desire
2237to see the cost of hardware drop. The only reason Torvalds had cheap
2238hardware was Microsoft.
2239
2240Microsoft refused to go into the hardware business, insisted on making
2241its software run on hardware that anyone could build, and thereby
2242created the market conditions that allowed hardware prices to
2243plummet. In trying to understand the Linux phenomenon, then, we have
2244to look not to a single innovator but to a sort of bizarre Trinity:
2245Linus Torvalds, Richard Stallman, and Bill Gates. Take away any of
2246these three and Linux would not exist.
2247
2248
2249OS SHOCK
2250
2251
2252Young Americans who leave their great big homogeneous country and
2253visit some other part of the world typically go through several stages
2254of culture shock: first, dumb wide-eyed astonishment. Then a tentative
2255engagement with the new country's manners, cuisine, public transit
2256systems and toilets, leading to a brief period of fatuous confidence
2257that they are instant experts on the new country. As the visit wears
2258on, homesickness begins to set in, and the traveler begins to
2259appreciate, for the first time, how much he or she took for granted at
2260home. At the same time it begins to seem obvious that many of one's
2261own cultures and traditions are essentially arbitrary, and could have
2262been different; driving on the right side of the road, for
2263example. When the traveler returns home and takes stock of the
2264experience, he or she may have learned a good deal more about America
2265than about the country they went to visit.
2266
2267For the same reasons, Linux is worth trying. It is a strange country
2268indeed, but you don't have to live there; a brief sojourn suffices to
2269give some flavor of the place and--more importantly--to lay bare
2270everything that is taken for granted, and all that could have been
2271done differently, under Windows or MacOS.
2272
2273You can't try it unless you install it. With any other OS, installing
2274it would be a straightforward transaction: in exchange for money, some
2275company would give you a CD-ROM, and you would be on your way. But a
2276lot is subsumed in that kind of transaction, and has to be gone
2277through and picked apart.
2278
2279We like plain dealings and straightforward transactions in America. If
2280you go to Egypt and, say, take a taxi somewhere, you become a part of
2281the taxi driver's life; he refuses to take your money because it would
2282demean your friendship, he follows you around town, and weeps hot
2283tears when you get in some other guy's taxi. You end up meeting his
2284kids at some point, and have to devote all sort of ingenuity to
2285finding some way to compensate him without insulting his honor. It is
2286exhausting. Sometimes you just want a simple Manhattan-style taxi
2287ride.
2288
2289But in order to have an American-style setup, where you can just go
2290out and hail a taxi and be on your way, there must exist a whole
2291hidden apparatus of medallions, inspectors, commissions, and so
2292forth--which is fine as long as taxis are cheap and you can always get
2293one. When the system fails to work in some way, it is mysterious and
2294infuriating and turns otherwise reasonable people into conspiracy
2295theorists. But when the Egyptian system breaks down, it breaks down
2296transparently. You can't get a taxi, but your driver's nephew will
2297show up, on foot, to explain the problem and apologize.
2298
2299Microsoft and Apple do things the Manhattan way, with vast complexity
2300hidden behind a wall of interface. Linux does things the Egypt way,
2301with vast complexity strewn about all over the landscape. If you've
2302just flown in from Manhattan, your first impulse will be to throw up
2303your hands and say "For crying out loud! Will you people get a grip on
2304yourselves!?" But this does not make friends in Linux-land any better
2305than it would in Egypt.
2306
2307You can suck Linux right out of the air, as it were, by downloading
2308the right files and putting them in the right places, but there
2309probably are not more than a few hundred people in the world who could
2310create a functioning Linux system in that way. What you really need is
2311a distribution of Linux, which means a prepackaged set of files. But
2312distributions are a separate thing from Linux per se.
2313
2314Linux per se is not a specific set of ones and zeroes, but a
2315self-organizing Net subculture. The end result of its collective
2316lucubrations is a vast body of source code, almost all written in C
2317(the dominant computer programming language). "Source code" just means
2318a computer program as typed in and edited by some hacker. If it's in
2319C, the file name will probably have .c or .cpp on the end of it,
2320depending on which dialect was used; if it's in some other language it
2321will have some other suffix. Frequently these sorts of files can be
2322found in a directory with the name /src which is the hacker's Hebraic
2323abbreviation of "source."
2324
2325Source files are useless to your computer, and of little interest to
2326most users, but they are of gigantic cultural and political
2327significance, because Microsoft and Apple keep them secret while Linux
2328makes them public. They are the family jewels. They are the sort of
2329thing that in Hollywood thrillers is used as a McGuffin: the plutonium
2330bomb core, the top-secret blueprints, the suitcase of bearer bonds,
2331the reel of microfilm. If the source files for Windows or MacOS were
2332made public on the Net, then those OSes would become free, like
2333Linux--only not as good, because no one would be around to fix bugs
2334and answer questions. Linux is "open source" software meaning, simply,
2335that anyone can get copies of its source code files.
2336
2337Your computer doesn't want source code any more than you do; it wants
2338object code. Object code files typically have the suffix .o and are
2339unreadable to all but a few, highly strange humans, because they
2340consist of ones and zeroes. Accordingly, this sort of file commonly
2341shows up in a directory with the name /bin, for "binary."
2342
2343Source files are simply ASCII text files. ASCII denotes a particular
2344way of encoding letters into bit patterns. In an ASCII file, each
2345character has eight bits all to itself. This creates a potential
2346"alphabet" of 256 distinct characters, in that eight binary digits can
2347form that many unique patterns. In practice, of course, we tend to
2348limit ourselves to the familiar letters and digits. The bit-patterns
2349used to represent those letters and digits are the same ones that were
2350physically punched into the paper tape by my high school teletype,
2351which in turn were the same one used by the telegraph industry for
2352decades previously. ASCII text files, in other words, are telegrams,
2353and as such they have no typographical frills. But for the same reason
2354they are eternal, because the code never changes, and universal,
2355because every text editing and word processing software ever written
2356knows about this code.
2357
2358Therefore just about any software can be used to create, edit, and
2359read source code files. Object code files, then, are created from
2360these source files by a piece of software called a compiler, and
2361forged into a working application by another piece of software called
2362a linker.
2363
2364The triad of editor, compiler, and linker, taken together, form the
2365core of a software development system. Now, it is possible to spend a
2366lot of money on shrink-wrapped development systems with lovely
2367graphical user interfaces and various ergonomic enhancements. In some
2368cases it might even be a good and reasonable way to spend money. But
2369on this side of the road, as it were, the very best software is
2370usually the free stuff. Editor, compiler and linker are to hackers
2371what ponies, stirrups, and archery sets were to the Mongols. Hackers
2372live in the saddle, and hack on their own tools even while they are
2373using them to create new applications. It is quite inconceivable that
2374superior hacking tools could have been created from a blank sheet of
2375paper by product engineers. Even if they are the brightest engineers
2376in the world they are simply outnumbered.
2377
2378In the GNU/Linux world there are two major text editing programs: the
2379minimalist vi (known in some implementations as elvis) and the
2380maximalist emacs. I use emacs, which might be thought of as a
2381thermonuclear word processor. It was created by Richard Stallman;
2382enough said. It is written in Lisp, which is the only computer
2383language that is beautiful. It is colossal, and yet it only edits
2384straight ASCII text files, which is to say, no fonts, no boldface, no
2385underlining. In other words, the engineer-hours that, in the case of
2386Microsoft Word, were devoted to features like mail merge, and the
2387ability to embed feature-length motion pictures in corporate
2388memoranda, were, in the case of emacs, focused with maniacal intensity
2389on the deceptively simple-seeming problem of editing text. If you are
2390a professional writer--i.e., if someone else is getting paid to worry
2391about how your words are formatted and printed--emacs outshines all
2392other editing software in approximately the same way that the noonday
2393sun does the stars. It is not just bigger and brighter; it simply
2394makes everything else vanish. For page layout and printing you can use
2395TeX: a vast corpus of typesetting lore written in C and also available
2396on the Net for free.
2397
2398I could say a lot about emacs and TeX, but right now I am trying to
2399tell a story about how to actually install Linux on your machine. The
2400hard-core survivalist approach would be to download an editor like
2401emacs, and the GNU Tools--the compiler and linker--which are polished
2402and excellent to the same degree as emacs. Equipped with these, one
2403would be able to start downloading ASCII source code files (/src) and
2404compiling them into binary object code files (/bin) that would run on
2405the machine. But in order to even arrive at this point--to get emacs
2406running, for example--you have to have Linux actually up and running
2407on your machine. And even a minimal Linux operating system requires
2408thousands of binary files all acting in concert, and arranged and
2409linked together just so.
2410
2411Several entities have therefore taken it upon themselves to create
2412"distributions" of Linux. If I may extend the Egypt analogy slightly,
2413these entities are a bit like tour guides who meet you at the airport,
2414who speak your language, and who help guide you through the initial
2415culture shock. If you are an Egyptian, of course, you see it the other
2416way; tour guides exist to keep brutish outlanders from traipsing
2417through your mosques and asking you the same questions over and over
2418and over again.
2419
2420Some of these tour guides are commercial organizations, such as Red
2421Hat Software, which makes a Linux distribution called Red Hat that has
2422a relatively commercial sheen to it. In most cases you put a Red Hat
2423CD-ROM into your PC and reboot and it handles the rest. Just as a tour
2424guide in Egypt will expect some sort of compensation for his services,
2425commercial distributions need to be paid for. In most cases they cost
2426almost nothing and are well worth it.
2427
2428I use a distribution called Debian (the word is a contraction of
2429"Deborah" and "Ian") which is non-commercial. It is organized (or
2430perhaps I should say "it has organized itself") along the same lines
2431as Linux in general, which is to say that it consists of volunteers
2432who collaborate over the Net, each responsible for looking after a
2433different chunk of the system. These people have broken Linux down
2434into a number of packages, which are compressed files that can be
2435downloaded to an already functioning Debian Linux system, then opened
2436up and unpacked using a free installer application. Of course, as
2437such, Debian has no commercial arm--no distribution mechanism. You can
2438download all Debian packages over the Net, but most people will want
2439to have them on a CD-ROM. Several different companies have taken it
2440upon themselves to decoct all of the current Debian packages onto
2441CD-ROMs and then sell them. I buy mine from Linux Systems Labs. The
2442cost for a three-disc set, containing Debian in its entirety, is less
2443than three dollars. But (and this is an important distinction) not a
2444single penny of that three dollars is going to any of the coders who
2445created Linux, nor to the Debian packagers. It goes to Linux Systems
2446Labs and it pays, not for the software, or the packages, but for the
2447cost of stamping out the CD-ROMs.
2448
2449Every Linux distribution embodies some more or less clever hack for
2450circumventing the normal boot process and causing your computer, when
2451it is turned on, to organize itself, not as a PC running Windows, but
2452as a "host" running Unix. This is slightly alarming the first time you
2453see it, but completely harmless. When a PC boots up, it goes through a
2454little self-test routine, taking an inventory of available disks and
2455memory, and then begins looking around for a disk to boot up from. In
2456any normal Windows computer that disk will be a hard drive. But if you
2457have your system configured right, it will look first for a floppy or
2458CD-ROM disk, and boot from that if one is available.
2459
2460Linux exploits this chink in the defenses. Your computer notices a
2461bootable disk in the floppy or CD-ROM drive, loads in some object code
2462from that disk, and blindly begins to execute it. But this is not
2463Microsoft or Apple code, this is Linux code, and so at this point your
2464computer begins to behave very differently from what you are
2465accustomed to. Cryptic messages began to scroll up the screen. If you
2466had booted a commercial OS, you would, at this point, be seeing a
2467"Welcome to MacOS" cartoon, or a screen filled with clouds in a blue
2468sky, and a Windows logo. But under Linux you get a long telegram
2469printed in stark white letters on a black screen. There is no
2470"welcome!" message. Most of the telegram has the semi-inscrutable
2471menace of graffiti tags.
2472
2473Dec 14 15:04:15 theRev syslogd 1.3-3#17: restart. Dec 14 15:04:15
2474theRev kernel: klogd 1.3-3, log source = /proc/kmsg started. Dec 14
247515:04:15 theRev kernel: Loaded 3535 symbols from /System.map. Dec 14
247615:04:15 theRev kernel: Symbols match kernel version 2.0.30. Dec 14
247715:04:15 theRev kernel: No module symbols loaded. Dec 14 15:04:15
2478theRev kernel: Intel MultiProcessor Specification v1.4 Dec 14 15:04:15
2479theRev kernel: Virtual Wire compatibility mode. Dec 14 15:04:15 theRev
2480kernel: OEM ID: INTEL Product ID: 440FX APIC at: 0xFEE00000 Dec 14
248115:04:15 theRev kernel: Processor #0 Pentium(tm) Pro APIC version 17
2482Dec 14 15:04:15 theRev kernel: Processor #1 Pentium(tm) Pro APIC
2483version 17 Dec 14 15:04:15 theRev kernel: I/O APIC #2 Version 17 at
24840xFEC00000. Dec 14 15:04:15 theRev kernel: Processors: 2 Dec 14
248515:04:15 theRev kernel: Console: 16 point font, 400 scans Dec 14
248615:04:15 theRev kernel: Console: colour VGA+ 80x25, 1 virtual console
2487(max 63) Dec 14 15:04:15 theRev kernel: pcibios_init : BIOS32 Service
2488Directory structure at 0x000fdb70 Dec 14 15:04:15 theRev kernel:
2489pcibios_init : BIOS32 Service Directory entry at 0xfdb80 Dec 14
249015:04:15 theRev kernel: pcibios_init : PCI BIOS revision 2.10 entry at
24910xfdba1 Dec 14 15:04:15 theRev kernel: Probing PCI hardware. Dec 14
249215:04:15 theRev kernel: Warning : Unknown PCI device
2493(10b7:9001). Please read include/linux/pci.h Dec 14 15:04:15 theRev
2494kernel: Calibrating delay loop.. ok - 179.40 BogoMIPS Dec 14 15:04:15
2495theRev kernel: Memory: 64268k/66556k available (700k kernel code, 384k
2496reserved, 1204k data) Dec 14 15:04:15 theRev kernel: Swansea
2497University Computer Society NET3.035 for Linux 2.0 Dec 14 15:04:15
2498theRev kernel: NET3: Unix domain sockets 0.13 for Linux NET3.035. Dec
249914 15:04:15 theRev kernel: Swansea University Computer Society TCP/IP
2500for NET3.034 Dec 14 15:04:15 theRev kernel: IP Protocols: ICMP, UDP,
2501TCP Dec 14 15:04:15 theRev kernel: Checking 386/387 coupling... Ok,
2502fpu using exception 16 error reporting. Dec 14 15:04:15 theRev kernel:
2503Checking 'hlt' instruction... Ok. Dec 14 15:04:15 theRev kernel: Linux
2504version 2.0.30 (root@theRev) (gcc version 2.7.2.1) #15 Fri Mar 27
250516:37:24 PST 1998 Dec 14 15:04:15 theRev kernel: Booting processor 1
2506stack 00002000: Calibrating delay loop.. ok - 179.40 BogoMIPS Dec 14
250715:04:15 theRev kernel: Total of 2 processors activated (358.81
2508BogoMIPS). Dec 14 15:04:15 theRev kernel: Serial driver version 4.13
2509with no serial options enabled Dec 14 15:04:15 theRev kernel: tty00 at
25100x03f8 (irq = 4) is a 16550A Dec 14 15:04:15 theRev kernel: tty01 at
25110x02f8 (irq = 3) is a 16550A Dec 14 15:04:15 theRev kernel: lp1 at
25120x0378, (polling) Dec 14 15:04:15 theRev kernel: PS/2 auxiliary
2513pointing device detected -- driver installed. Dec 14 15:04:15 theRev
2514kernel: Real Time Clock Driver v1.07 Dec 14 15:04:15 theRev kernel:
2515loop: registered device at major 7 Dec 14 15:04:15 theRev kernel: ide:
2516i82371 PIIX (Triton) on PCI bus 0 function 57 Dec 14 15:04:15 theRev
2517kernel: ide0: BM-DMA at 0xffa0-0xffa7 Dec 14 15:04:15 theRev kernel:
2518ide1: BM-DMA at 0xffa8-0xffaf Dec 14 15:04:15 theRev kernel: hda:
2519Conner Peripherals 1275MB - CFS1275A, 1219MB w/64kB Cache, LBA,
2520CHS=619/64/63 Dec 14 15:04:15 theRev kernel: hdb: Maxtor 84320A5,
25214119MB w/256kB Cache, LBA, CHS=8928/15/63, DMA Dec 14 15:04:15 theRev
2522kernel: hdc: , ATAPI CDROM drive Dec 15 11:58:06 theRev kernel: ide0
2523at 0x1f0-0x1f7,0x3f6 on irq 14 Dec 15 11:58:06 theRev kernel: ide1 at
25240x170-0x177,0x376 on irq 15 Dec 15 11:58:06 theRev kernel: Floppy
2525drive(s): fd0 is 1.44M Dec 15 11:58:06 theRev kernel: Started kswapd v
25261.4.2.2 Dec 15 11:58:06 theRev kernel: FDC 0 is a National
2527Semiconductor PC87306 Dec 15 11:58:06 theRev kernel: md driver 0.35
2528MAX_MD_DEV=4, MAX_REAL=8 Dec 15 11:58:06 theRev kernel: PPP: version
25292.2.0 (dynamic channel allocation) Dec 15 11:58:06 theRev kernel: TCP
2530compression code copyright 1989 Regents of the University of
2531California Dec 15 11:58:06 theRev kernel: PPP Dynamic channel
2532allocation code copyright 1995 Caldera, Inc. Dec 15 11:58:06 theRev
2533kernel: PPP line discipline registered. Dec 15 11:58:06 theRev kernel:
2534SLIP: version 0.8.4-NET3.019-NEWTTY (dynamic channels, max=256). Dec
253515 11:58:06 theRev kernel: eth0: 3Com 3c900 Boomerang 10Mbps/Combo at
25360xef00, 00:60:08:a4:3c:db, IRQ 10 Dec 15 11:58:06 theRev kernel: 8K
2537word-wide RAM 3:5 Rx:Tx split, 10base2 interface. Dec 15 11:58:06
2538theRev kernel: Enabling bus-master transmits and whole-frame
2539receives. Dec 15 11:58:06 theRev kernel: 3c59x.c:v0.49 1/2/98 Donald
2540Becker http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html Dec 15
254111:58:06 theRev kernel: Partition check: Dec 15 11:58:06 theRev
2542kernel: hda: hda1 hda2 hda3 Dec 15 11:58:06 theRev kernel: hdb: hdb1
2543hdb2 Dec 15 11:58:06 theRev kernel: VFS: Mounted root (ext2
2544filesystem) readonly. Dec 15 11:58:06 theRev kernel: Adding Swap:
254516124k swap-space (priority -1) Dec 15 11:58:06 theRev kernel: EXT2-fs
2546warning: maximal mount count reached, running e2fsck is recommended
2547Dec 15 11:58:06 theRev kernel: hdc: media changed Dec 15 11:58:06
2548theRev kernel: ISO9660 Extensions: RRIP_1991A Dec 15 11:58:07 theRev
2549syslogd 1.3-3#17: restart. Dec 15 11:58:09 theRev diald[87]: Unable to
2550open options file /etc/diald/diald.options: No such file or directory
2551Dec 15 11:58:09 theRev diald[87]: No device specified. You must have
2552at least one device! Dec 15 11:58:09 theRev diald[87]: You must define
2553a connector script (option 'connect'). Dec 15 11:58:09 theRev
2554diald[87]: You must define the remote ip address. Dec 15 11:58:09
2555theRev diald[87]: You must define the local ip address. Dec 15
255611:58:09 theRev diald[87]: Terminating due to damaged reconfigure.
2557
2558The only parts of this that are readable, for normal people, are the
2559error messages and warnings. And yet it's noteworthy that Linux
2560doesn't stop, or crash, when it encounters an error; it spits out a
2561pithy complaint, gives up on whatever processes were damaged, and
2562keeps on rolling. This was decidedly not true of the early versions of
2563Apple and Microsoft OSes, for the simple reason that an OS that is not
2564capable of walking and chewing gum at the same time cannot possibly
2565recover from errors. Looking for, and dealing with, errors requires a
2566separate process running in parallel with the one that has erred. A
2567kind of superego, if you will, that keeps an eye on all of the others,
2568and jumps in when one goes astray. Now that MacOS and Windows can do
2569more than one thing at a time they are much better at dealing with
2570errors than they used to be, but they are not even close to Linux or
2571other Unices in this respect; and their greater complexity has made
2572them vulnerable to new types of errors.
2573
2574FALLIBILITY, ATONEMENT, REDEMPTION, TRUST, AND OTHER ARCANE TECHNICAL
2575CONCEPTS
2576
2577Linux is not capable of having any centrally organized policies
2578dictating how to write error messages and documentation, and so each
2579programmer writes his own. Usually they are in English even though
2580tons of Linux programmers are Europeans. Frequently they are
2581funny. Always they are honest. If something bad has happened because
2582the software simply isn't finished yet, or because the user screwed
2583something up, this will be stated forthrightly. The command line
2584interface makes it easy for programs to dribble out little comments,
2585warnings, and messages here and there. Even if the application is
2586imploding like a damaged submarine, it can still usually eke out a
2587little S.O.S. message. Sometimes when you finish working with a
2588program and shut it down, you find that it has left behind a series of
2589mild warnings and low-grade error messages in the command-line
2590interface window from which you launched it. As if the software were
2591chatting to you about how it was doing the whole time you were working
2592with it.
2593
2594Documentation, under Linux, comes in the form of man (short for
2595manual) pages. You can access these either through a GUI (xman) or
2596from the command line (man). Here is a sample from the man page for a
2597program called rsh:
2598
2599"Stop signals stop the local rsh process only; this is arguably wrong,
2600but currently hard to fix for reasons too complicated to explain
2601here."
2602
2603The man pages contain a lot of such material, which reads like the
2604terse mutterings of pilots wrestling with the controls of damaged
2605airplanes. The general feel is of a thousand monumental but obscure
2606struggles seen in the stop-action light of a strobe. Each programmer
2607is dealing with his own obstacles and bugs; he is too busy fixing
2608them, and improving the software, to explain things at great length or
2609to maintain elaborate pretensions.
2610
2611In practice you hardly ever encounter a serious bug while running
2612Linux. When you do, it is almost always with commercial software
2613(several vendors sell software that runs under Linux). The operating
2614system and its fundamental utility programs are too important to
2615contain serious bugs. I have been running Linux every day since late
26161995 and have seen many application programs go down in flames, but I
2617have never seen the operating system crash. Never. Not once. There are
2618quite a few Linux systems that have been running continuously and
2619working hard for months or years without needing to be rebooted.
2620
2621Commercial OSes have to adopt the same official stance towards errors
2622as Communist countries had towards poverty. For doctrinal reasons it
2623was not possible to admit that poverty was a serious problem in
2624Communist countries, because the whole point of Communism was to
2625eradicate poverty. Likewise, commercial OS companies like Apple and
2626Microsoft can't go around admitting that their software has bugs and
2627that it crashes all the time, any more than Disney can issue press
2628releases stating that Mickey Mouse is an actor in a suit.
2629
2630This is a problem, because errors do exist and bugs do happen. Every
2631few months Bill Gates tries to demo a new Microsoft product in front
2632of a large audience only to have it blow up in his face. Commercial OS
2633vendors, as a direct consequence of being commercial, are forced to
2634adopt the grossly disingenuous position that bugs are rare
2635aberrations, usually someone else's fault, and therefore not really
2636worth talking about in any detail. This posture, which everyone knows
2637to be absurd, is not limited to press releases and ad campaigns. It
2638informs the whole way these companies do business and relate to their
2639customers. If the documentation were properly written, it would
2640mention bugs, errors, and crashes on every single page. If the on-line
2641help systems that come with these OSes reflected the experiences and
2642concerns of their users, they would largely be devoted to instructions
2643on how to cope with crashes and errors.
2644
2645But this does not happen. Joint stock corporations are wonderful
2646inventions that have given us many excellent goods and services. They
2647are good at many things. Admitting failure is not one of them. Hell,
2648they can't even admit minor shortcomings.
2649
2650Of course, this behavior is not as pathological in a corporation as it
2651would be in a human being. Most people, nowadays, understand that
2652corporate press releases are issued for the benefit of the
2653corporation's shareholders and not for the enlightenment of the
2654public. Sometimes the results of this institutional dishonesty can be
2655dreadful, as with tobacco and asbestos. In the case of commercial OS
2656vendors it is nothing of the kind, of course; it is merely annoying.
2657
2658Some might argue that consumer annoyance, over time, builds up into a
2659kind of hardened plaque that can conceal serious decay, and that
2660honesty might therefore be the best policy in the long run; the jury
2661is still out on this in the operating system market. The business is
2662expanding fast enough that it's still much better to have billions of
2663chronically annoyed customers than millions of happy ones.
2664
2665Most system administrators I know who work with Windows NT all the
2666time agree that when it hits a snag, it has to be re-booted, and when
2667it gets seriously messed up, the only way to fix it is to re-install
2668the operating system from scratch. Or at least this is the only way
2669that they know of to fix it, which amounts to the same thing. It is
2670quite possible that the engineers at Microsoft have all sorts of
2671insider knowledge on how to fix the system when it goes awry, but if
2672they do, they do not seem to be getting the message out to any of the
2673actual system administrators I know.
2674
2675Because Linux is not commercial--because it is, in fact, free, as well
2676as rather difficult to obtain, install, and operate--it does not have
2677to maintain any pretensions as to its reliability. Consequently, it is
2678much more reliable. When something goes wrong with Linux, the error is
2679noticed and loudly discussed right away. Anyone with the requisite
2680technical knowledge can go straight to the source code and point out
2681the source of the error, which is then rapidly fixed by whichever
2682hacker has carved out responsibility for that particular program.
2683
2684As far as I know, Debian is the only Linux distribution that has its
2685own constitution (http://www.debian.org/devel/constitution), but what
2686really sold me on it was its phenomenal bug database
2687(http://www.debian.org/Bugs), which is a sort of interactive Doomsday
2688Book of error, fallibility, and redemption. It is simplicity
2689itself. When had a problem with Debian in early January of 1997, I
2690sent in a message describing the problem to submit@bugs.debian.org. My
2691problem was promptly assigned a bug report number (#6518) and a
2692severity level (the available choices being critical, grave,
2693important, normal, fixed, and wishlist) and forwarded to mailing lists
2694where Debian people hang out. Within twenty-four hours I had received
2695five e-mails telling me how to fix the problem: two from North
2696America, two from Europe, and one from Australia. All of these e-mails
2697gave me the same suggestion, which worked, and made my problem go
2698away. But at the same time, a transcript of this exchange was posted
2699to Debian's bug database, so that if other users had the same problem
2700later, they would be able to search through and find the solution
2701without having to enter a new, redundant bug report.
2702
2703Contrast this with the experience that I had when I tried to install
2704Windows NT 4.0 on the very same machine about ten months later, in
2705late 1997. The installation program simply stopped in the middle with
2706no error messages. I went to the Microsoft Support website and tried
2707to perform a search for existing help documents that would address my
2708problem. The search engine was completely nonfunctional; it did
2709nothing at all. It did not even give me a message telling me that it
2710was not working.
2711
2712Eventually I decided that my motherboard must be at fault; it was of a
2713slightly unusual make and model, and NT did not support as many
2714different motherboards as Linux. I am always looking for excuses, no
2715matter how feeble, to buy new hardware, so I bought a new motherboard
2716that was Windows NT logo-compatible, meaning that the Windows NT logo
2717was printed right on the box. I installed this into my computer and
2718got Linux running right away, then attempted to install Windows NT
2719again. Again, the installation died without any error message or
2720explanation. By this time a couple of weeks had gone by and I thought
2721that perhaps the search engine on the Microsoft Support website might
2722be up and running. I gave that a try but it still didn't work.
2723
2724So I created a new Microsoft support account, then logged on to submit
2725the incident. I supplied my product ID number when asked, and then
2726began to follow the instructions on a series of help screens. In other
2727words, I was submitting a bug report just as with the Debian bug
2728tracking system. It's just that the interface was slicker--I was
2729typing my complaint into little text-editing boxes on Web forms, doing
2730it all through the GUI, whereas with Debian you send in an e-mail
2731telegram. I knew that when I was finished submitting the bug report,
2732it would become proprietary Microsoft information, and other users
2733wouldn't be able to see it. Many Linux users would refuse to
2734participate in such a scheme on ethical grounds, but I was willing to
2735give it a shot as an experiment. In the end, though I was never able
2736to submit my bug report, because the series of linked web pages that I
2737was filling out eventually led me to a completely blank page: a dead
2738end.
2739
2740So I went back and clicked on the buttons for "phone support" and
2741eventually was given a Microsoft telephone number. When I dialed this
2742number I got a series of piercing beeps and a recorded message from
2743the phone company saying "We're sorry, your call cannot be completed
2744as dialed."
2745
2746I tried the search page again--it was still completely
2747nonfunctional. Then I tried PPI (Pay Per Incident) again. This led me
2748through another series of Web pages until I dead-ended at one reading:
2749"Notice-there is no Web page matching your request."
2750
2751I tried it again, and eventually got to a Pay Per Incident screen
2752reading: "OUT OF INCIDENTS. There are no unused incidents left in your
2753account. If you would like to purchase a support incident, click
2754OK-you will then be able to prepay for an incident...." The cost per
2755incident was $95.
2756
2757The experiment was beginning to seem rather expensive, so I gave up on
2758the PPI approach and decided to have a go at the FAQs posted on
2759Microsoft's website. None of the available FAQs had anything to do
2760with my problem except for one entitled "I am having some problems
2761installing NT" which appeared to have been written by flacks, not
2762engineers.
2763
2764So I gave up and still, to this day, have never gotten Windows NT
2765installed on that particular machine. For me, the path of least
2766resistance was simply to use Debian Linux.
2767
2768In the world of open source software, bug reports are useful
2769information. Making them public is a service to other users, and
2770improves the OS. Making them public systematically is so important
2771that highly intelligent people voluntarily put time and money into
2772running bug databases. In the commercial OS world, however, reporting
2773a bug is a privilege that you have to pay lots of money for. But if
2774you pay for it, it follows that the bug report must be kept
2775confidential--otherwise anyone could get the benefit of your
2776ninety-five bucks! And yet nothing prevents NT users from setting up
2777their own public bug database.
2778
2779This is, in other words, another feature of the OS market that simply
2780makes no sense unless you view it in the context of culture. What
2781Microsoft is selling through Pay Per Incident isn't technical support
2782so much as the continued illusion that its customers are engaging in
2783some kind of rational business transaction. It is a sort of routine
2784maintenance fee for the upkeep of the fantasy. If people really wanted
2785a solid OS they would use Linux, and if they really wanted tech
2786support they would find a way to get it; Microsoft's customers want
2787something else.
2788
2789As of this writing (Jan. 1999), something like 32,000 bugs have been
2790reported to the Debian Linux bug database. Almost all of them have
2791been fixed a long time ago. There are twelve "critical" bugs still
2792outstanding, of which the oldest was posted 79 days ago. There are 20
2793outstanding "grave" bugs of which the oldest is 1166 days old. There
2794are 48 "important" bugs and hundreds of "normal" and less important
2795ones.
2796
2797Likewise, BeOS (which I'll get to in a minute) has its own bug
2798database (http://www.be.com/developers/bugs/index.html) with its own
2799classification system, including such categories as "Not a Bug,"
2800"Acknowledged Feature," and "Will Not Fix." Some of the "bugs" here
2801are nothing more than Be hackers blowing off steam, and are classified
2802as "Input Acknowledged." For example, I found one that was posted on
2803December 30th, 1998. It's in the middle of a long list of bugs, wedged
2804between one entitled "Mouse working in very strange fashion" and
2805another called "Change of BView frame does not affect, if BView not
2806attached to a BWindow."
2807
2808This one is entitled
2809
2810R4: BeOS missing megalomaniacal figurehead to harness and focus developer rage
2811
2812and it goes like this:
2813
2814----------------------------
2815
2816Be Status: Input Acknowledged BeOS Version: R3.2 Component: unknown
2817
2818Full Description:
2819
2820The BeOS needs a megalomaniacal egomaniac sitting on its throne to
2821give it a human character which everyone loves to hate. Without this,
2822the BeOS will languish in the impersonifiable realm of OSs that people
2823can never quite get a handle on. You can judge the success of an OS
2824not by the quality of its features, but by how infamous and disliked
2825the leaders behind them are.
2826
2827I believe this is a side-effect of developer comraderie under
2828miserable conditions. After all, misery loves company. I believe that
2829making the BeOS less conceptually accessible and far less reliable
2830will require developers to band together, thus developing the kind of
2831community where strangers talk to one- another, kind of like at a
2832grocery store before a huge snowstorm.
2833
2834Following this same program, it will likely be necessary to move the
2835BeOS headquarters to a far-less-comfortable climate. General
2836environmental discomfort will breed this attitude within and there
2837truly is no greater recipe for success. I would suggest Seattle, but I
2838think it's already taken. You might try Washington, DC, but definitely
2839not somewhere like San Diego or Tucson.
2840
2841----------------------------
2842
2843Unfortunately, the Be bug reporting system strips off the names of the
2844people who report the bugs (to protect them from retribution!?) and so
2845I don't know who wrote this.
2846
2847So it would appear that I'm in the middle of crowing about the
2848technical and moral superiority of Debian Linux. But as almost always
2849happens in the OS world, it's more complicated than that. I have
2850Windows NT running on another machine, and the other day (Jan. 1999),
2851when I had a problem with it, I decided to have another go at
2852Microsoft Support. This time the search engine actually worked (though
2853in order to reach it I had to identify myself as "advanced"). And
2854instead of coughing up some useless FAQ, it located about two hundred
2855documents (I was using very vague search criteria) that were obviously
2856bug reports--though they were called something else. Microsoft, in
2857other words, has got a system up and running that is functionally
2858equivalent to Debian's bug database. It looks and feels different, of
2859course, but it contains technical nitty-gritty and makes no bones
2860about the existence of errors.
2861
2862As I've explained, selling OSes for money is a basically untenable
2863position, and the only way Apple and Microsoft can get away with it is
2864by pursuing technological advancements as aggressively as they can,
2865and by getting people to believe in, and to pay for, a particular
2866image: in the case of Apple, that of the creative free thinker, and in
2867the case of Microsoft, that of the respectable techno-bourgeois. Just
2868like Disney, they're making money from selling an interface, a magic
2869mirror. It has to be polished and seamless or else the whole illusion
2870is ruined and the business plan vanishes like a mirage.
2871
2872Accordingly, it was the case until recently that the people who wrote
2873manuals and created customer support websites for commercial OSes
2874seemed to have been barred, by their employers' legal or PR
2875departments, from admitting, even obliquely, that the software might
2876contain bugs or that the interface might be suffering from the
2877blinking twelve problem. They couldn't address users' actual
2878difficulties. The manuals and websites were therefore useless, and
2879caused even technically self-assured users to wonder whether they were
2880going subtly insane.
2881
2882When Apple engages in this sort of corporate behavior, one wants to
2883believe that they are really trying their best. We all want to give
2884Apple the benefit of the doubt, because mean old Bill Gates kicked the
2885crap out of them, and because they have good PR. But when Microsoft
2886does it, one almost cannot help becoming a paranoid
2887conspiracist. Obviously they are hiding something from us! And yet
2888they are so powerful! They are trying to drive us crazy!
2889
2890This approach to dealing with one's customers was straight out of the
2891Central European totalitarianism of the mid-Twentieth Century. The
2892adjectives "Kafkaesque" and "Orwellian" come to mind. It couldn't
2893last, any more than the Berlin Wall could, and so now Microsoft has a
2894publicly available bug database. It's called something else, and it
2895takes a while to find it, but it's there.
2896
2897They have, in other words, adapted to the two-tiered Eloi/Morlock
2898structure of technological society. If you're an Eloi you install
2899Windows, follow the instructions, hope for the best, and dumbly suffer
2900when it breaks. If you're a Morlock you go to the website, tell it
2901that you are "advanced," find the bug database, and get the truth
2902straight from some anonymous Microsoft engineer.
2903
2904But once Microsoft has taken this step, it raises the question, once
2905again, of whether there is any point to being in the OS business at
2906all. Customers might be willing to pay $95 to report a problem to
2907Microsoft if, in return, they get some advice that no other user is
2908getting. This has the useful side effect of keeping the users
2909alienated from one another, which helps maintain the illusion that
2910bugs are rare aberrations. But once the results of those bug reports
2911become openly available on the Microsoft website, everything
2912changes. No one is going to cough up $95 to report a problem when
2913chances are good that some other sucker will do it first, and that
2914instructions on how to fix the bug will then show up, for free, on a
2915public website. And as the size of the bug database grows, it
2916eventually becomes an open admission, on Microsoft's part, that their
2917OSes have just as many bugs as their competitors'. There is no shame
2918in that; as I mentioned, Debian's bug database has logged 32,000
2919reports so far. But it puts Microsoft on an equal footing with the
2920others and makes it a lot harder for their customers--who want to
2921believe--to believe.
2922
2923
2924MEMENTO MORI
2925
2926
2927Once the Linux machine has finished spitting out its jargonic opening
2928telegram, it prompts me to log in with a user name and a password. At
2929this point the machine is still running the command line interface,
2930with white letters on a black screen. There are no windows, menus, or
2931buttons. It does not respond to the mouse; it doesn't even know that
2932the mouse is there. It is still possible to run a lot of software at
2933this point. Emacs, for example, exists in both a CLI and a GUI version
2934(actually there are two GUI versions, reflecting some sort of
2935doctrinal schism between Richard Stallman and some hackers who got fed
2936up with him). The same is true of many other Unix programs. Many don't
2937have a GUI at all, and many that do are capable of running from the
2938command line.
2939
2940Of course, since my computer only has one monitor screen, I can only
2941see one command line, and so you might think that I could only
2942interact with one program at a time. But if I hold down the Alt key
2943and then hit the F2 function button at the top of my keyboard, I am
2944presented with a fresh, blank, black screen with a login prompt at the
2945top of it. I can log in here and start some other program, then hit
2946Alt-F1 and go back to the first screen, which is still doing whatever
2947it was when I left it. Or I can do Alt-F3 and log in to a third
2948screen, or a fourth, or a fifth. On one of these screens I might be
2949logged in as myself, on another as root (the system administrator), on
2950yet another I might be logged on to some other computer over the
2951Internet.
2952
2953Each of these screens is called, in Unix-speak, a tty, which is an
2954abbreviation for teletype. So when I use my Linux system in this way I
2955am going right back to that small room at Ames High School where I
2956first wrote code twenty-five years ago, except that a tty is quieter
2957and faster than a teletype, and capable of running vastly superior
2958software, such as emacs or the GNU development tools.
2959
2960It is easy (easy by Unix, not Apple/Microsoft standards) to configure
2961a Linux machine so that it will go directly into a GUI when you boot
2962it up. This way, you never see a tty screen at all. I still have mine
2963boot into the white-on-black teletype screen however, as a
2964computational memento mori. It used to be fashionable for a writer to
2965keep a human skull on his desk as a reminder that he was mortal, that
2966all about him was vanity. The tty screen reminds me that the same
2967thing is true of slick user interfaces.
2968
2969The X Windows System, which is the GUI of Unix, has to be capable of
2970running on hundreds of different video cards with different chipsets,
2971amounts of onboard memory, and motherboard buses. Likewise, there are
2972hundreds of different types of monitors on the new and used market,
2973each with different specifications, and so there are probably upwards
2974of a million different possible combinations of card and monitor. The
2975only thing they all have in common is that they all work in VGA mode,
2976which is the old command-line screen that you see for a few seconds
2977when you launch Windows. So Linux always starts in VGA, with a
2978teletype interface, because at first it has no idea what sort of
2979hardware is attached to your computer. In order to get beyond the
2980glass teletype and into the GUI, you have to tell Linux exactly what
2981kinds of hardware you have. If you get it wrong, you'll get a blank
2982screen at best, and at worst you might actually destroy your monitor
2983by feeding it signals it can't handle.
2984
2985When I started using Linux this had to be done by hand. I once spent
2986the better part of a month trying to get an oddball monitor to work
2987for me, and filled the better part of a composition book with
2988increasingly desperate scrawled notes. Nowadays, most Linux
2989distributions ship with a program that automatically scans the video
2990card and self-configures the system, so getting X Windows up and
2991running is nearly as easy as installing an Apple/Microsoft GUI. The
2992crucial information goes into a file (an ASCII text file, naturally)
2993called XF86Config, which is worth looking at even if your distribution
2994creates it for you automatically. For most people it looks like
2995meaningless cryptic incantations, which is the whole point of looking
2996at it. An Apple/Microsoft system needs to have the same information in
2997order to launch its GUI, but it's apt to be deeply hidden somewhere,
2998and it's probably in a file that can't even be opened and read by a
2999text editor. All of the important files that make Linux systems work
3000are right out in the open. They are always ASCII text files, so you
3001don't need special tools to read them. You can look at them any time
3002you want, which is good, and you can mess them up and render your
3003system totally dysfunctional, which is not so good.
3004
3005At any rate, assuming that my XF86Config file is just so, I enter the
3006command "startx" to launch the X Windows System. The screen blanks out
3007for a minute, the monitor makes strange twitching noises, then
3008reconstitutes itself as a blank gray desktop with a mouse cursor in
3009the middle. At the same time it is launching a window manager. X
3010Windows is pretty low-level software; it provides the infrastructure
3011for a GUI, and it's a heavy industrial infrastructure. But it doesn't
3012do windows. That's handled by another category of application that
3013sits atop X Windows, called a window manager. Several of these are
3014available, all free of course. The classic is twm (Tom's Window
3015Manager) but there is a smaller and supposedly more efficient variant
3016of it called fvwm, which is what I use. I have my eye on a completely
3017different window manager called Enlightenment, which may be the
3018hippest single technology product I have ever seen, in that (a) it is
3019for Linux, (b) it is freeware, (c) it is being developed by a very
3020small number of obsessed hackers, and (d) it looks amazingly cool; it
3021is the sort of window manager that might show up in the backdrop of an
3022Aliens movie.
3023
3024Anyway, the window manager acts as an intermediary between X Windows
3025and whatever software you want to use. It draws the window frames,
3026menus, and so on, while the applications themselves draw the actual
3027content in the windows. The applications might be of any sort: text
3028editors, Web browsers, graphics packages, or utility programs, such as
3029a clock or calculator. In other words, from this point on, you feel as
3030if you have been shunted into a parallel universe that is quite
3031similar to the familiar Apple or Microsoft one, but slightly and
3032pervasively different. The premier graphics program under
3033Apple/Microsoft is Adobe Photoshop, but under Linux it's something
3034called The GIMP. Instead of the Microsoft Office Suite, you can buy
3035something called ApplixWare. Many commercial software packages, such
3036as Mathematica, Netscape Communicator, and Adobe Acrobat, are
3037available in Linux versions, and depending on how you set up your
3038window manager you can make them look and behave just as they would
3039under MacOS or Windows.
3040
3041But there is one type of window you'll see on Linux GUI that is rare
3042or nonexistent under other OSes. These windows are called "xterm" and
3043contain nothing but lines of text--this time, black text on a white
3044background, though you can make them be different colors if you
3045choose. Each xterm window is a separate command line interface--a tty
3046in a window. So even when you are in full GUI mode, you can still talk
3047to your Linux machine through a command-line interface.
3048
3049There are many good pieces of Unix software that do not have GUIs at
3050all. This might be because they were developed before X Windows was
3051available, or because the people who wrote them did not want to suffer
3052through all the hassle of creating a GUI, or because they simply do
3053not need one. In any event, those programs can be invoked by typing
3054their names into the command line of an xterm window. The whoami
3055command, mentioned earlier, is a good example. There is another called
3056wc ("word count") which simply returns the number of lines, words, and
3057characters in a text file.
3058
3059The ability to run these little utility programs on the command line
3060is a great virtue of Unix, and one that is unlikely to be duplicated
3061by pure GUI operating systems. The wc command, for example, is the
3062sort of thing that is easy to write with a command line interface. It
3063probably does not consist of more than a few lines of code, and a
3064clever programmer could probably write it in a single line. In
3065compiled form it takes up just a few bytes of disk space. But the code
3066required to give the same program a graphical user interface would
3067probably run into hundreds or even thousands of lines, depending on
3068how fancy the programmer wanted to make it. Compiled into a runnable
3069piece of software, it would have a large overhead of GUI code. It
3070would be slow to launch and it would use up a lot of memory. This
3071would simply not be worth the effort, and so "wc" would never be
3072written as an independent program at all. Instead users would have to
3073wait for a word count feature to appear in a commercial software
3074package.
3075
3076GUIs tend to impose a large overhead on every single piece of
3077software, even the smallest, and this overhead completely changes the
3078programming environment. Small utility programs are no longer worth
3079writing. Their functions, instead, tend to get swallowed up into
3080omnibus software packages. As GUIs get more complex, and impose more
3081and more overhead, this tendency becomes more pervasive, and the
3082software packages grow ever more colossal; after a point they begin to
3083merge with each other, as Microsoft Word and Excel and PowerPoint have
3084merged into Microsoft Office: a stupendous software Wal-Mart sitting
3085on the edge of a town filled with tiny shops that are all boarded up.
3086
3087It is an unfair analogy, because when a tiny shop gets boarded up it
3088means that some small shopkeeper has lost his business. Of course
3089nothing of the kind happens when "wc" becomes subsumed into one of
3090Microsoft Word's countless menu items. The only real drawback is a
3091loss of flexibility for the user, but it is a loss that most customers
3092obviously do not notice or care about. The most serious drawback to
3093the Wal-Mart approach is that most users only want or need a tiny
3094fraction of what is contained in these giant software packages. The
3095remainder is clutter, dead weight. And yet the user in the next
3096cubicle over will have completely different opinions as to what is
3097useful and what isn't.
3098
3099The other important thing to mention, here, is that Microsoft has
3100included a genuinely cool feature in the Office package: a Basic
3101programming package. Basic is the first computer language that I
3102learned, back when I was using the paper tape and the teletype. By
3103using the version of Basic that comes with Office you can write your
3104own little utility programs that know how to interact with all of the
3105little doohickeys, gewgaws, bells, and whistles in Office. Basic is
3106easier to use than the languages typically employed in Unix
3107command-line programming, and Office has reached many, many more
3108people than the GNU tools. And so it is quite possible that this
3109feature of Office will, in the end, spawn more hacking than GNU.
3110
3111But now I'm talking about application software, not operating
3112systems. And as I've said, Microsoft's application software tends to
3113be very good stuff. I don't use it very much, because I am nowhere
3114near their target market. If Microsoft ever makes a software package
3115that I use and like, then it really will be time to dump their stock,
3116because I am a market segment of one.
3117
3118GEEK FATIGUE
3119
3120Over the years that I've been working with Linux I have filled three
3121and a half notebooks logging my experiences. I only begin writing
3122things down when I'm doing something complicated, like setting up X
3123Windows or fooling around with my Internet connection, and so these
3124notebooks contain only the record of my struggles and
3125frustrations. When things are going well for me, I'll work along
3126happily for many months without jotting down a single note. So these
3127notebooks make for pretty bleak reading. Changing anything under Linux
3128is a matter of opening up various of those little ASCII text files and
3129changing a word here and a character there, in ways that are extremely
3130significant to how the system operates.
3131
3132Many of the files that control how Linux operates are nothing more
3133than command lines that became so long and complicated that not even
3134Linux hackers could type them correctly. When working with something
3135as powerful as Linux, you can easily devote a full half-hour to
3136engineering a single command line. For example, the "find" command,
3137which searches your file system for files that match certain criteria,
3138is fantastically powerful and general. Its "man" is eleven pages long,
3139and these are pithy pages; you could easily expand them into a whole
3140book. And if that is not complicated enough in and of itself, you can
3141always pipe the output of one Unix command to the input of another,
3142equally complicated one. The "pon" command, which is used to fire up a
3143PPP connection to the Internet, requires so much detailed information
3144that it is basically impossible to launch it entirely from the command
3145line. Instead you abstract big chunks of its input into three or four
3146different files. You need a dialing script, which is effectively a
3147little program telling it how to dial the phone and respond to various
3148events; an options file, which lists up to about sixty different
3149options on how the PPP connection is to be set up; and a secrets file,
3150giving information about your password.
3151
3152Presumably there are godlike Unix hackers somewhere in the world who
3153don't need to use these little scripts and options files as crutches,
3154and who can simply pound out fantastically complex command lines
3155without making typographical errors and without having to spend hours
3156flipping through documentation. But I'm not one of them. Like almost
3157all Linux users, I depend on having all of those details hidden away
3158in thousands of little ASCII text files, which are in turn wedged into
3159the recesses of the Unix filesystem. When I want to change something
3160about the way my system works, I edit those files. I know that if I
3161don't keep track of every little change I've made, I won't be able to
3162get your system back in working order after I've gotten it all messed
3163up. Keeping hand-written logs is tedious, not to mention kind of
3164anachronistic. But it's necessary.
3165
3166I probably could have saved myself a lot of headaches by doing
3167business with a company called Cygnus Support, which exists to provide
3168assistance to users of free software. But I didn't, because I wanted
3169to see if I could do it myself. The answer turned out to be yes, but
3170just barely. And there are many tweaks and optimizations that I could
3171probably make in my system that I have never gotten around to
3172attempting, partly because I get tired of being a Morlock some days,
3173and partly because I am afraid of fouling up a system that generally
3174works well.
3175
3176Though Linux works for me and many other users, its sheer power and
3177generality is its Achilles' heel. If you know what you are doing, you
3178can buy a cheap PC from any computer store, throw away the Windows
3179discs that come with it, turn it into a Linux system of mind-boggling
3180complexity and power. You can hook it up to twelve other Linux boxes
3181and make it into part of a parallel computer. You can configure it so
3182that a hundred different people can be logged onto it at once over the
3183Internet, via as many modem lines, Ethernet cards, TCP/IP sockets, and
3184packet radio links. You can hang half a dozen different monitors off
3185of it and play DOOM with someone in Australia while tracking
3186communications satellites in orbit and controlling your house's lights
3187and thermostats and streaming live video from your web-cam and surfing
3188the Net and designing circuit boards on the other screens. But the
3189sheer power and complexity of the system--the qualities that make it
3190so vastly technically superior to other OSes--sometimes make it seem
3191too formidable for routine day-to-day use.
3192
3193Sometimes, in other words, I just want to go to Disneyland.
3194
3195The ideal OS for me would be one that had a well-designed GUI that was
3196easy to set up and use, but that included terminal windows where I
3197could revert to the command line interface, and run GNU software, when
3198it made sense. A few years ago, Be Inc. invented exactly that OS. It
3199is called the BeOS.
3200
3201
3202ETRE
3203
3204
3205Many people in the computer business have had a difficult time
3206grappling with Be, Incorporated, for the simple reason that nothing
3207about it seems to make any sense whatsoever. It was launched in late
32081990, which makes it roughly contemporary with Linux. From the
3209beginning it has been devoted to creating a new operating system that
3210is, by design, incompatible with all the others (though, as we shall
3211see, it is compatible with Unix in some very important ways). If a
3212definition of "celebrity" is someone who is famous for being famous,
3213then Be is an anti-celebrity. It is famous for not being famous; it is
3214famous for being doomed. But it has been doomed for an awfully long
3215time.
3216
3217Be's mission might make more sense to hackers than to other people. In
3218order to explain why I need to explain the concept of cruft, which, to
3219people who write code, is nearly as abhorrent as unnecessary
3220repetition.
3221
3222If you've been to San Francisco you may have seen older buildings that
3223have undergone "seismic upgrades," which frequently means that
3224grotesque superstructures of modern steelwork are erected around
3225buildings made in, say, a Classical style. When new threats arrive--if
3226we have an Ice Age, for example--additional layers of even more
3227high-tech stuff may be constructed, in turn, around these, until the
3228original building is like a holy relic in a cathedral--a shard of
3229yellowed bone enshrined in half a ton of fancy protective junk.
3230
3231Analogous measures can be taken to keep creaky old operating systems
3232working. It happens all the time. Ditching a worn-out old OS ought to
3233be simplified by the fact that, unlike old buildings, OSes have no
3234aesthetic or cultural merit that makes them intrinsically worth
3235saving. But it doesn't work that way in practice. If you work with a
3236computer, you have probably customized your "desktop," the environment
3237in which you sit down to work every day, and spent a lot of money on
3238software that works in that environment, and devoted much time to
3239familiarizing yourself with how it all works. This takes a lot of
3240time, and time is money. As already mentioned, the desire to have
3241one's interactions with complex technologies simplified through the
3242interface, and to surround yourself with virtual tchotchkes and lawn
3243ornaments, is natural and pervasive--presumably a reaction against the
3244complexity and formidable abstraction of the computer world. Computers
3245give us more choices than we really want. We prefer to make those
3246choices once, or accept the defaults handed to us by software
3247companies, and let sleeping dogs lie. But when an OS gets changed, all
3248the dogs jump up and start barking.
3249
3250The average computer user is a technological antiquarian who doesn't
3251really like things to change. He or she is like an urban professional
3252who has just bought a charming fixer-upper and is now moving the
3253furniture and knicknacks around, and reorganizing the kitchen
3254cupboards, so that everything's just right. If it is necessary for a
3255bunch of engineers to scurry around in the basement shoring up the
3256foundation so that it can support the new cast-iron claw-foot bathtub,
3257and snaking new wires and pipes through the walls to supply modern
3258appliances, why, so be it--engineers are cheap, at least when millions
3259of OS users split the cost of their services.
3260
3261Likewise, computer users want to have the latest Pentium in their
3262machines, and to be able to surf the web, without messing up all the
3263stuff that makes them feel as if they know what the hell is going
3264on. Sometimes this is actually possible. Adding more RAM to your
3265system is a good example of an upgrade that is not likely to screw
3266anything up.
3267
3268Alas, very few upgrades are this clean and simple. Lawrence Lessig,
3269the whilom Special Master in the Justice Department's antitrust suit
3270against Microsoft, complained that he had installed Internet Explorer
3271on his computer, and in so doing, lost all of his bookmarks--his
3272personal list of signposts that he used to navigate through the maze
3273of the Internet. It was as if he'd bought a new set of tires for his
3274car, and then, when pulling away from the garage, discovered that,
3275owing to some inscrutable side-effect, every signpost and road map in
3276the world had been destroyed. If he's like most of us, he had put a
3277lot of work into compiling that list of bookmarks. This is only a
3278small taste of the sort of trouble that upgrades can cause. Crappy old
3279OSes have value in the basically negative sense that changing to new
3280ones makes us wish we'd never been born.
3281
3282All of the fixing and patching that engineers must do in order to give
3283us the benefits of new technology without forcing us to think about
3284it, or to change our ways, produces a lot of code that, over time,
3285turns into a giant clot of bubble gum, spackle, baling wire and duct
3286tape surrounding every operating system. In the jargon of hackers, it
3287is called "cruft." An operating system that has many, many layers of
3288it is described as "crufty." Hackers hate to do things twice, but when
3289they see something crufty, their first impulse is to rip it out, throw
3290it away, and start anew.
3291
3292If Mark Twain were brought back to San Francisco today and dropped
3293into one of these old seismically upgraded buildings, it would look
3294just the same to him, with all the doors and windows in the same
3295places--but if he stepped outside, he wouldn't recognize it. And--if
3296he'd been brought back with his wits intact--he might question whether
3297the building had been worth going to so much trouble to save. At some
3298point, one must ask the question: is this really worth it, or should
3299we maybe just tear it down and put up a good one? Should we throw
3300another human wave of structural engineers at stabilizing the Leaning
3301Tower of Pisa, or should we just let the damn thing fall over and
3302build a tower that doesn't suck?
3303
3304Like an upgrade to an old building, cruft always seems like a good
3305idea when the first layers of it go on--just routine maintenance,
3306sound prudent management. This is especially true if (as it were) you
3307never look into the cellar, or behind the drywall. But if you are a
3308hacker who spends all his time looking at it from that point of view,
3309cruft is fundamentally disgusting, and you can't avoid wanting to go
3310after it with a crowbar. Or, better yet, simply walk out of the
3311building--let the Leaning Tower of Pisa fall over--and go make a new
3312one THAT DOESN'T LEAN.
3313
3314For a long time it was obvious to Apple, Microsoft, and their
3315customers that the first generation of GUI operating systems was
3316doomed, and that they would eventually need to be ditched and replaced
3317with completely fresh ones. During the late Eighties and early
3318Nineties, Apple launched a few abortive efforts to make fundamentally
3319new post-Mac OSes such as Pink and Taligent. When those efforts failed
3320they launched a new project called Copland which also failed. In 1997
3321they flirted with the idea of acquiring Be, but instead they acquired
3322Next, which has an OS called NextStep that is, in effect, a variant of
3323Unix. As these efforts went on, and on, and on, and failed and failed
3324and failed, Apple's engineers, who were among the best in the
3325business, kept layering on the cruft. They were gamely trying to turn
3326the little toaster into a multi-tasking, Internet-savvy machine, and
3327did an amazingly good job of it for a while--sort of like a movie hero
3328running across a jungle river by hopping across crocodiles' backs. But
3329in the real world you eventually run out of crocodiles, or step on a
3330really smart one.
3331
3332Speaking of which, Microsoft tackled the same problem in a
3333considerably more orderly way by creating a new OS called Windows NT,
3334which is explicitly intended to be a direct competitor of Unix. NT
3335stands for "New Technology" which might be read as an explicit
3336rejection of cruft. And indeed, NT is reputed to be a lot less crufty
3337than what MacOS eventually turned into; at one point the documentation
3338needed to write code on the Mac filled something like 24
3339binders. Windows 95 was, and Windows 98 is, crufty because they have
3340to be backward-compatible with older Microsoft OSes. Linux deals with
3341the cruft problem in the same way that Eskimos supposedly dealt with
3342senior citizens: if you insist on using old versions of Linux
3343software, you will sooner or later find yourself drifting through the
3344Bering Straits on a dwindling ice floe. They can get away with this
3345because most of the software is free, so it costs nothing to download
3346up-to-date versions, and because most Linux users are Morlocks.
3347
3348The great idea behind BeOS was to start from a clean sheet of paper
3349and design an OS the right way. And that is exactly what they
3350did. This was obviously a good idea from an aesthetic standpoint, but
3351does not a sound business plan make. Some people I know in the
3352GNU/Linux world are annoyed with Be for going off on this quixotic
3353adventure when their formidable skills could have been put to work
3354helping to promulgate Linux.
3355
3356Indeed, none of it makes sense until you remember that the founder of
3357the company, Jean-Louis Gassee, is from France--a country that for
3358many years maintained its own separate and independent version of the
3359English monarchy at a court in St. Germaines, complete with courtiers,
3360coronation ceremonies, a state religion and a foreign policy. Now, the
3361same annoying yet admirable stiff-neckedness that gave us the
3362Jacobites, the force de frappe, Airbus, and ARRET signs in Quebec, has
3363brought us a really cool operating system. I fart in your general
3364direction, Anglo-Saxon pig-dogs!
3365
3366To create an entirely new OS from scratch, just because none of the
3367existing ones was exactly right, struck me as an act of such colossal
3368nerve that I felt compelled to support it. I bought a BeBox as soon as
3369I could. The BeBox was a dual-processor machine, powered by Motorola
3370chips, made specifically to run the BeOS; it could not run any other
3371operating system. That's why I bought it. I felt it was a way to burn
3372my bridges. Its most distinctive feature is two columns of LEDs on the
3373front panel that zip up and down like tachometers to convey a sense of
3374how hard each processor is working. I thought it looked cool, and
3375besides, I reckoned that when the company went out of business in a
3376few months, my BeBox would be a valuable collector's item.
3377
3378Now it is about two years later and I am typing this on my BeBox. The
3379LEDs (Das Blinkenlights, as they are called in the Be community) flash
3380merrily next to my right elbow as I hit the keys. Be, Inc. is still in
3381business, though they stopped making BeBoxes almost immediately after
3382I bought mine. They made the sad, but probably quite wise decision
3383that hardware was a sucker's game, and ported the BeOS to Macintoshes
3384and Mac clones. Since these used the same sort of Motorola chips that
3385powered the BeBox, this wasn't especially hard.
3386
3387Very soon afterwards, Apple strangled the Mac-clone makers and
3388restored its hardware monopoly. So, for a while, the only new machines
3389that could run BeOS were made by Apple.
3390
3391By this point Be, like Spiderman with his Spider-sense, had developed
3392a keen sense of when they were about to get crushed like a bug. Even
3393if they hadn't, the notion of being dependent on Apple--so frail and
3394yet so vicious--for their continued existence should have put a fright
3395into anyone. Now engaged in their own crocodile-hopping adventure,
3396they ported the BeOS to Intel chips--the same chips used in Windows
3397machines. And not a moment too soon, for when Apple came out with its
3398new top-of-the-line hardware, based on the Motorola G3 chip, they
3399withheld the technical data that Be's engineers would need to make the
3400BeOS run on those machines. This would have killed Be, just like a
3401slug between the eyes, if they hadn't made the jump to Intel.
3402
3403So now BeOS runs on an assortment of hardware that is almost
3404incredibly motley: BeBoxes, aging Macs and Mac orphan-clones, and
3405Intel machines that are intended to be used for Windows. Of course the
3406latter type are ubiquitous and shockingly cheap nowadays, so it would
3407appear that Be's hardware troubles are finally over. Some German
3408hackers have even come up with a Das Blinkenlights replacement: it's a
3409circuit board kit that you can plug into PC-compatible machines
3410running BeOS. It gives you the zooming LED tachometers that were such
3411a popular feature of the BeBox.
3412
3413My BeBox is already showing its age, as all computers do after a
3414couple of years, and sooner or later I'll probably have to replace it
3415with an Intel machine. Even after that, though, I will still be able
3416to use it. Because, inevitably, someone has now ported Linux to the
3417BeBox.
3418
3419At any rate, BeOS has an extremely well-thought-out GUI built on a
3420technological framework that is solid. It is based from the ground up
3421on modern object-oriented software principles. BeOS software consists
3422of quasi-independent software entities called objects, which
3423communicate by sending messages to each other. The OS itself is made
3424up of such objects, and serves as a kind of post office or Internet
3425that routes messages to and fro, from object to object. The OS is
3426multi-threaded, which means that like all other modern OSes it can
3427walk and chew gum at the same time; but it gives programmers a lot of
3428power over spawning and terminating threads, or independent
3429sub-processes. It is also a multi-processing OS, which means that it
3430is inherently good at running on computers that have more than one CPU
3431(Linux and Windows NT can also do this proficiently).
3432
3433For this user, a big selling point of BeOS is the built-in Terminal
3434application, which enables you to open up windows that are equivalent
3435to the xterm windows in Linux. In other words, the command line
3436interface is available if you want it. And because BeOS hews to a
3437certain standard called POSIX, it is capable of running most of the
3438GNU software. That is to say that the vast array of command-line
3439software developed by the GNU crowd will work in BeOS terminal windows
3440without complaint. This includes the GNU development tools-the
3441compiler and linker. And it includes all of the handy little utility
3442programs. I'm writing this using a modern sort of user-friendly text
3443editor called Pe, written by a Dutchman named Maarten Hekkelman, but
3444when I want to find out how long it is, I jump to a terminal window
3445and run "wc."
3446
3447As is suggested by the sample bug report I quoted earlier, people who
3448work for Be, and developers who write code for BeOS, seem to be
3449enjoying themselves more than their counterparts in other OSes. They
3450also seem to be a more diverse lot in general. A couple of years ago I
3451went to an auditorium at a local university to see some
3452representatives of Be put on a dog-and-pony show. I went because I
3453assumed that the place would be empty and echoing, and I felt that
3454they deserved an audience of at least one. In fact, I ended up
3455standing in an aisle, for hundreds of students had packed the
3456place. It was like a rock concert. One of the two Be engineers on the
3457stage was a black man, which unfortunately is a very odd thing in the
3458high-tech world. The other made a ringing denunciation of cruft, and
3459extolled BeOS for its cruft-free qualities, and actually came out and
3460said that in ten or fifteen years, when BeOS had become all crufty
3461like MacOS and Windows 95, it would be time to simply throw it away
3462and create a new OS from scratch. I doubt that this is an official Be,
3463Inc. policy, but it sure made a big impression on everyone in the
3464room! During the late Eighties, the MacOS was, for a time, the OS of
3465cool people-artists and creative-minded hackers-and BeOS seems to have
3466the potential to attract the same crowd now. Be mailing lists are
3467crowded with hackers with names like Vladimir and Olaf and Pierre,
3468sending flames to each other in fractured techno-English.
3469
3470The only real question about BeOS is whether or not it is doomed.
3471
3472Of late, Be has responded to the tiresome accusation that they are
3473doomed with the assertion that BeOS is "a media operating system" made
3474for media content creators, and hence is not really in competition
3475with Windows at all. This is a little bit disingenuous. To go back to
3476the car dealership analogy, it is like the Batmobile dealer claiming
3477that he is not really in competition with the others because his car
3478can go three times as fast as theirs and is also capable of flying.
3479
3480Be has an office in Paris, and, as mentioned, the conversation on Be
3481mailing lists has a strongly European flavor. At the same time they
3482have made strenuous efforts to find a niche in Japan, and Hitachi has
3483recently begun bundling BeOS with their PCs. So if I had to make wild
3484guess I'd say that they are playing Go while Microsoft is playing
3485chess. They are staying clear, for now, of Microsoft's overwhelmingly
3486strong position in North America. They are trying to get themselves
3487established around the edges of the board, as it were, in Europe and
3488Japan, where people may be more open to alternative OSes, or at least
3489more hostile to Microsoft, than they are in the United States.
3490
3491What holds Be back in this country is that the smart people are afraid
3492to look like suckers. You run the risk of looking naive when you say
3493"I've tried the BeOS and here's what I think of it." It seems much
3494more sophisticated to say "Be's chances of carving out a new niche in
3495the highly competitive OS market are close to nil."
3496
3497It is, in techno-speak, a problem of mindshare. And in the OS
3498business, mindshare is more than just a PR issue; it has direct
3499effects on the technology itself. All of the peripheral gizmos that
3500can be hung off of a personal computer--the printers, scanners,
3501PalmPilot interfaces, and Lego Mindstorms--require pieces of software
3502called drivers. Likewise, video cards and (to a lesser extent)
3503monitors need drivers. Even the different types of motherboards on the
3504market relate to the OS in different ways, and separate code is
3505required for each one. All of this hardware-specific code must not
3506only written but also tested, debugged, upgraded, maintained, and
3507supported. Because the hardware market has become so vast and
3508complicated, what really determines an OS's fate is not how good the
3509OS is technically, or how much it costs, but rather the availability
3510of hardware-specific code. Linux hackers have to write that code
3511themselves, and they have done an amazingly good job of keeping up to
3512speed. Be, Inc. has to write all their own drivers, though as BeOS has
3513begun gathering momentum, third-party developers have begun to
3514contribute drivers, which are available on Be's web site.
3515
3516But Microsoft owns the high ground at the moment, because it doesn't
3517have to write its own drivers. Any hardware maker bringing a new video
3518card or peripheral device to market today knows that it will be
3519unsalable unless it comes with the hardware-specific code that will
3520make it work under Windows, and so each hardware maker has accepted
3521the burden of creating and maintaining its own library of drivers.
3522
3523
3524MINDSHARE
3525
3526
3527The U.S. Government's assertion that Microsoft has a monopoly in the
3528OS market might be the most patently absurd claim ever advanced by the
3529legal mind. Linux, a technically superior operating system, is being
3530given away for free, and BeOS is available at a nominal price. This is
3531simply a fact, which has to be accepted whether or not you like
3532Microsoft.
3533
3534Microsoft is really big and rich, and if some of the government's
3535witnesses are to be believed, they are not nice guys. But the
3536accusation of a monopoly simply does not make any sense.
3537
3538What is really going on is that Microsoft has seized, for the time
3539being, a certain type of high ground: they dominate in the competition
3540for mindshare, and so any hardware or software maker who wants to be
3541taken seriously feels compelled to make a product that is compatible
3542with their operating systems. Since Windows-compatible drivers get
3543written by the hardware makers, Microsoft doesn't have to write them;
3544in effect, the hardware makers are adding new components to Windows,
3545making it a more capable OS, without charging Microsoft for the
3546service. It is a very good position to be in. The only way to fight
3547such an opponent is to have an army of highly competetent coders who
3548write equivalent drivers for free, which Linux does.
3549
3550But possession of this psychological high ground is different from a
3551monopoly in any normal sense of that word, because here the dominance
3552has nothing to do with technical performance or price. The old
3553robber-baron monopolies were monopolies because they physically
3554controlled means of production and/or distribution. But in the
3555software business, the means of production is hackers typing code, and
3556the means of distribution is the Internet, and no one is claiming that
3557Microsoft controls those.
3558
3559Here, instead, the dominance is inside the minds of people who buy
3560software. Microsoft has power because people believe it does. This
3561power is very real. It makes lots of money. Judging from recent legal
3562proceedings in both Washingtons, it would appear that this power and
3563this money have inspired some very peculiar executives to come out and
3564work for Microsoft, and that Bill Gates should have administered
3565saliva tests to some of them before issuing them Microsoft ID cards.
3566
3567But this is not the sort of power that fits any normal definition of
3568the word "monopoly," and it's not amenable to a legal fix. The courts
3569may order Microsoft to do things differently. They might even split
3570the company up. But they can't really do anything about a mindshare
3571monopoly, short of taking every man, woman, and child in the developed
3572world and subjecting them to a lengthy brainwashing procedure.
3573
3574Mindshare dominance is, in other words, a really odd sort of beast,
3575something that the framers of our antitrust laws couldn't possibly
3576have imagined. It looks like one of these modern, wacky chaos-theory
3577phenomena, a complexity thing, in which a whole lot of independent but
3578connected entities (the world's computer users), making decisions on
3579their own, according to a few simple rules of thumb, generate a large
3580phenomenon (total domination of the market by one company) that cannot
3581be made sense of through any kind of rational analysis. Such phenomena
3582are fraught with concealed tipping-points and all a-tangle with
3583bizarre feedback loops, and cannot be understood; people who try, end
3584up (a) going crazy, (b) giving up, (c) forming crackpot theories, or
3585(d) becoming high-paid chaos theory consultants.
3586
3587Now, there might be one or two people at Microsoft who are dense
3588enough to believe that mindshare dominance is some kind of stable and
3589enduring position. Maybe that even accounts for some of the weirdos
3590they've hired in the pure-business end of the operation, the zealots
3591who keep getting hauled into court by enraged judges. But most of them
3592must have the wit to understand that phenomena like these are
3593maddeningly unstable, and that there's no telling what weird,
3594seemingly inconsequential event might cause the system to shift into a
3595radically different configuration.
3596
3597To put it another way, Microsoft can be confident that Thomas Penfield
3598Jackson will not hand down an order that the brains of everyone in the
3599developed world are to be summarily re-programmed. But there's no way
3600to predict when people will decide, en masse, to re-program their own
3601brains. This might explain some of Microsoft's behavior, such as their
3602policy of keeping eerily large reserves of cash sitting around, and
3603the extreme anxiety that they display whenever something like Java
3604comes along.
3605
3606I have never seen the inside of the building at Microsoft where the
3607top executives hang out, but I have this fantasy that in the hallways,
3608at regular intervals, big red alarm boxes are bolted to the wall. Each
3609contains a large red button protected by a windowpane. A metal hammer
3610dangles on a chain next to it. Above is a big sign reading: IN THE
3611EVENT OF A CRASH IN MARKET SHARE, BREAK GLASS.
3612
3613What happens when someone shatters the glass and hits the button, I
3614don't know, but it sure would be interesting to find out. One imagines
3615banks collapsing all over the world as Microsoft withdraws its cash
3616reserves, and shrink-wrapped pallet-loads of hundred-dollar bills
3617dropping from the skies. No doubt, Microsoft has a plan. But what I
3618would really like to know is whether, at some level, their programmers
3619might heave a big sigh of relief if the burden of writing the One
3620Universal Interface to Everything were suddenly lifted from their
3621shoulders.
3622
3623
3624THE RIGHT PINKY OF GOD
3625
3626
3627In his book The Life of the Cosmos, which everyone should read, Lee
3628Smolin gives the best description I've ever read of how our universe
3629emerged from an uncannily precise balancing of different fundamental
3630constants. The mass of the proton, the strength of gravity, the range
3631of the weak nuclear force, and a few dozen other fundamental constants
3632completely determine what sort of universe will emerge from a Big
3633Bang. If these values had been even slightly different, the universe
3634would have been a vast ocean of tepid gas or a hot knot of plasma or
3635some other basically uninteresting thing--a dud, in other words. The
3636only way to get a universe that's not a dud--that has stars, heavy
3637elements, planets, and life--is to get the basic numbers just
3638right. If there were some machine, somewhere, that could spit out
3639universes with randomly chosen values for their fundamental constants,
3640then for every universe like ours it would produce 10^229 duds.
3641
3642Though I haven't sat down and run the numbers on it, to me this seems
3643comparable to the probability of making a Unix computer do something
3644useful by logging into a tty and typing in command lines when you have
3645forgotten all of the little options and keywords. Every time your
3646right pinky slams that ENTER key, you are making another try. In some
3647cases the operating system does nothing. In other cases it wipes out
3648all of your files. In most cases it just gives you an error
3649message. In other words, you get many duds. But sometimes, if you have
3650it all just right, the computer grinds away for a while and then
3651produces something like emacs. It actually generates complexity, which
3652is Smolin's criterion for interestingness.
3653
3654Not only that, but it's beginning to look as if, once you get below a
3655certain size--way below the level of quarks, down into the realm of
3656string theory--the universe can't be described very well by physics as
3657it has been practiced since the days of Newton. If you look at a small
3658enough scale, you see processes that look almost computational in
3659nature.
3660
3661I think that the message is very clear here: somewhere outside of and
3662beyond our universe is an operating system, coded up over incalculable
3663spans of time by some kind of hacker-demiurge. The cosmic operating
3664system uses a command-line interface. It runs on something like a
3665teletype, with lots of noise and heat; punched-out bits flutter down
3666into its hopper like drifting stars. The demiurge sits at his
3667teletype, pounding out one command line after another, specifying the
3668values of fundamental constants of physics:
3669
3670universe -G 6.672e-11 -e 1.602e-19 -h 6.626e-34 -protonmass 1.673e-27....
3671
3672and when he's finished typing out the command line, his right pinky
3673hesitates above the ENTER key for an aeon or two, wondering what's
3674going to happen; then down it comes--and the WHACK you hear is another
3675Big Bang.
3676
3677Now THAT is a cool operating system, and if such a thing were actually
3678made available on the Internet (for free, of course) every hacker in
3679the world would download it right away and then stay up all night long
3680messing with it, spitting out universes right and left. Most of them
3681would be pretty dull universes but some of them would be simply
3682amazing. Because what those hackers would be aiming for would be much
3683more ambitious than a universe that had a few stars and galaxies in
3684it. Any run-of-the-mill hacker would be able to do that. No, the way
3685to gain a towering reputation on the Internet would be to get so good
3686at tweaking your command line that your universes would spontaneously
3687develop life. And once the way to do that became common knowledge,
3688those hackers would move on, trying to make their universes develop
3689the right kind of life, trying to find the one change in the Nth
3690decimal place of some physical constant that would give us an Earth in
3691which, say, Hitler had been accepted into art school after all, and
3692had ended up his days as a street artist with cranky political
3693opinions.
3694
3695Even if that fantasy came true, though, most users (including myself,
3696on certain days) wouldn't want to bother learning to use all of those
3697arcane commands, and struggling with all of the failures; a few dud
3698universes can really clutter up your basement. After we'd spent a
3699while pounding out command lines and hitting that ENTER key and
3700spawning dull, failed universes, we would start to long for an OS that
3701would go all the way to the opposite extreme: an OS that had the power
3702to do everything--to live our life for us. In this OS, all of the
3703possible decisions we could ever want to make would have been
3704anticipated by clever programmers, and condensed into a series of
3705dialog boxes. By clicking on radio buttons we could choose from among
3706mutually exclusive choices (HETEROSEXUAL/HOMOSEXUAL). Columns of check
3707boxes would enable us to select the things that we wanted in our life
3708(GET MARRIED/WRITE GREAT AMERICAN NOVEL) and for more complicated
3709options we could fill in little text boxes (NUMBER OF DAUGHTERS:
3710NUMBER OF SONS:).
3711
3712Even this user interface would begin to look awfully complicated after
3713a while, with so many choices, and so many hidden interactions between
3714choices. It could become damn near unmanageable--the blinking twelve
3715problem all over again. The people who brought us this operating
3716system would have to provide templates and wizards, giving us a few
3717default lives that we could use as starting places for designing our
3718own. Chances are that these default lives would actually look pretty
3719damn good to most people, good enough, anyway, that they'd be
3720reluctant to tear them open and mess around with them for fear of
3721making them worse. So after a few releases the software would begin to
3722look even simpler: you would boot it up and it would present you with
3723a dialog box with a single large button in the middle labeled:
3724LIVE. Once you had clicked that button, your life would begin. If
3725anything got out of whack, or failed to meet your expectations, you
3726could complain about it to Microsoft's Customer Support Department. If
3727you got a flack on the line, he or she would tell you that your life
3728was actually fine, that there was not a thing wrong with it, and in
3729any event it would be a lot better after the next upgrade was rolled
3730out. But if you persisted, and identified yourself as Advanced, you
3731might get through to an actual engineer.
3732
3733What would the engineer say, after you had explained your problem, and
3734enumerated all of the dissatisfactions in your life? He would probably
3735tell you that life is a very hard and complicated thing; that no
3736interface can change that; that anyone who believes otherwise is a
3737sucker; and that if you don't like having choices made for you, you
3738should start making your own.