In In the Beginning was the Command Line, Neal Stephenson seems to take the viewpoint that manipulating strings of Boolean bits is the ``real work" of a computer, dismissing graphical user interfaces (GUIs) as an unfortunate necessity. That's like arguing that the real work of Stephenson's mind is the interactions of billions of neurons in his head, and the essay is a collection of unfortunately necessary metaphors that give us easier access to his mind's contents. Although it is accurate to say that the states of computer bits and brain neurons are their ``contents" and that all language is metaphor, that way of looking at things is neither complete nor practical. If you want to know if it'll rain tomorrow, it is unhelpful to see the atmosphere as nothing more than interacting molecules, even though such a description would be valid. It is not merely difficult, but impossible to forecast weather by focusing on the ``real" state of the atmosphere in terms of individual molecules. You have to look at the whole, collapsing the complexity and chaos of the individual particles into simple patterns – the simpler, the better.
The simple, logical world of cause-and-effect that exists at the level of raw content – bits flipping each other on and off, neurons crossing thresholds to trigger other neurons, air molecules bumping into one another – does not exist in the context of networked computers and humans. Stephenson makes the mistake of assuming that this means there are no logical explanations at levels above raw content, so he says that Windows' market dominance ``cannot be made sense of through any kind of rational analysis." Along the way, he gratuitously dismisses chaos theory, which in fact (actually, the cousin of chaos, complexity theory, I should have written) does offer a rational analysis of phenomena such as Windows, as it does for weather forecasting. The point of chaos theory is that interactions that appear to be highly random or complex can be collapsed into simple patterns. That is also the point of GUIs.
There is not a hint in Stephenson's essay that he knows who invented the graphical user interface or the ideas behind it. He seems to imagine that the Apple Macintosh team invented GUIs to make computers easier to use than command-line systems. Nice story, but wrong. Doug Englebart of SRI and others at Xerox PARC developed the mouse, windows and icons based on cognitive psychology. Recognizing that people learn and remember better when learning is accompanied by physical manipulation, they created an interface that would accommodate body movement (the mouse) and two-dimensional spaces (windows containing icons). The efficiency of spatial approaches has been known since at least the Middle Ages, when monks used ``memory palaces" to memorize enormous amounts of information.
Far from getting in the way, GUIs accommodate ways that our brains are wired, the kinds of patterns we are good at remembering and recalling. Unfortunately, a lot of people who write programs are as naïve as Stephenson appears to be and thus try to use GUI elements in ways that don't work well, trying to force them to be too abstract or too literal. Stephenson seems to offer his disappointment with MPW as evidence that GUIs are a sham, since MPW behaves like a command-line Unix system. Although graphic elements can help in a development environment, their usefulness is limited by the fact that the very purpose of such systems is to manipulate the computer's deep content. Surely Stephenson is aware that Apple developed a much more graphical programming environment for people working at a higher level of abstraction – HyperCard, which comes with every Macintosh. Microsoft took the idea even further with Visual Basic, one of its most successful products, but originally developed in Apple's backyard to be HyperCard for Windows.
Stephenson misstates the nature of Microsoft's sale of stock to the public as "borrowing," which is another confusion of content and context. Debt financing is borrowing. Stock is the sale of equity – each person who owns Microsoft stock owns a piece of Microsoft. The money isn't borrowed, which means, for example, Microsoft cannot simply pay back the original stock price plus interest and own itself once again. Borrowing is based on content – the ability to borrow and pay back is based on the company's assets and cash flow. Equity is only meaningful in the context of a market. The public stock market is often regarded as irrational, but it is another example of a complex system that can be modeled with the mathematics of chaos and complexity, which are rational. The market, like the weather, can only be predicted in the short run, but neither one is irrational.
The idea that Bill Gates' only responsibility, or even primary responsibility, is to maximize return on investment, might be arguable in the context of stockholders. But it's not what drives Bill Gates. You don't have to be a psychologist to figure out that winning motivates him, not profits. There's an software industry joke that contains a large grain of truth: ``How do you know that Microsoft is your friend? They crush your company last." I would hazard to guess that Gates would be happier dominating an industry in a company with lower margins than being an also-ran in a company with higher margins. Once again, the context – Microsoft's performance relative to other companies – is more important than the content – Microsoft's profit margins. Gates' focus on Microsoft's relative strength is a large part of the reason for its success. By focusing on seizing market share, Microsoft sets the initial conditions of a market favorable to itself. In chaotic systems, the ultimate outcome depends heavily on those initial conditions, when the market is still so small that profits are trivial.
Like so many other people, Stephenson seems to think that Microsoft carefully decides to release "inferior" software because it is more profitable. This is wrong. The value axis is wrong. Microsoft excels at packaging technology. Better packaging – which, I'll allow, requires compromise – is more valuable than better aesthetics when you're selling goods whose primary purposes are practical. Packaging DOS in IBM's PC was as smart as it was lucky. Actually, the luck was that Digital Research Inc. declined to sign IBM's non-disclosure agreement, which was the flap of a butterfly wing in Monterey that made it rain money in Redmond (an allusion to chaos theory, for those who wonder).
The Silicon Valley elite, whom Stephenson compares to the fictional Mr. Drysdale of The Beverly Hillbillies, is peppered with people who didn't notice when they had invented something useful and thus failed to package it for the market. And plenty of them have resented it when Microsoft did. Look at Apple – for years, it designed great computers and then didn't build enough of the ones that sold well, but built lots of the ones that weren't selling. A zillion projects in R&D and hardly any products to show for them, which is what led to Jean-Louis Gassee's resignation and John Sculley's forced exit. People like to imagine that the problem started when Apple put a ``marketing guy" in charge, but the truth is that marketing rarely called the shots at Apple. And John Sculley, bless his heart, is more of a hacker and tinkerer than a marketer, I'm afraid. He just loves technology, in contrast to Bill Gates, who loves... to win. If anybody is playing the part of the Beverly Hillbillies, it's Apple, which struck oil in Xerox PARC and then left the drillers – engineering – in charge, who couldn't figure out to get gasoline to the pumps when and where people wanted it. And let's keep in mind that the Beverly Hillbillies probably didn't even have positive cash flow, much less profits, once their oil was sold. And hey, they're fictional.
But I can praise Stephenson for his recognition of Apple's greatest flaw, because unlike the Jobs-worshippers, he Gets It. Steve Jobs is absolutely a control freak; the kind of person who does not listen to his customers. A control freak doesn't give customers what they want, he makes them want what he thinks is good for them. He is satisfied only when they desperately need him and put down all others, for he cannot believe that he is worthy of true respect. That is the worst aspect of the Apple culture, only partially offset by its excellence in design. I will never forget touring the NeXT factory with Jobs and his step-father, as Steve made it excruciatingly clear that even after Apple's success, he was still trying to impress the man.
Stephenson says that Apple should have "ported its OS to cheap PC hardware." Well, it tried. But if you thought Windows was clunky.... It took Apple an astounding length of time to port the entire MacOS to PPC native instructions, falling back on emulation in the meantime. On Intel chips, there's no 68000 emulator, so the product couldn't ship until everything was ported and working decently. Meanwhile, Apple also needed to be working on the PPC.
Stephenson's idea that the only ways to compete are on price and features is the wrong way to think about the future of operating systems. It is not about survival of the fittest, it is about momentum. Does anyone really compare prices and features for Windows v. Macintosh, or more importantly, Windows NT v. the various Unixes? No, people compare the availability of applications, support, cost of hardware, and the rest of the swarm of code, people and gizmos it takes to make use of an operating system. The big picture, the pattern, counts much more than the details. The context is more important than the content, so people who complain that Windows is inferior are missing the point. Operating systems are one part of a whirlpool whose direction of rotation is set in the first few movements. People look into the vortex and try to guess how quickly and how much it will suck things into itself. At the moment, Windows really sucks, so to speak, but Linux's rotational speed is phenomenal for such a youngster.
Contrary to Stephenson's account, Microsoft did not develop a Web browser, it licensed Mosaic from Spyglass and made substantial improvements. This is true of some other very successful MS products, such as Visual Basic. Microsoft evolves itself much more by symbiosis – combining inventions in ways that satisfy the market – than by mutation. Say it with me: "pack-ag-ing." Microsoft should be criticized only when it tries to use its girth to pervert Web standards, not when it embeds them. More on that when we come to Java.
As for the long deconstruction of Disney and the rest of Big Media, the viewpoint that amounts to "Don't nobody read no books no more," is hard to swallow. Consider Amazon.com's revenue or the eagerness of book publishers to expand their backlists – out-of-print books, for which demand is rising and technology is answering. Network publishing via mailing lists, Web-based discussions and so forth are exploding – people aren't just reading more, they're even writing more! People are re-learning the rhetoric of discussion; after participating on-line for a while, even engineers know what ad hominem and straw man arguments are. These are not people who are seduced by Big Media.
Stephenson's sub-rant on the use of "document" and "save" in GUIs to mean the opposite of everyday meanings is not unusual in the least. A word is often used to mean opposite things. Consider the following sentences. ``Do you have a picture of the house?" ``Picture your favorite dessert." In the first sentence, the picture is a physical object. In the second, it is imaginary. We have no trouble distinguishing the meanings because of – you guessed it – context.
The GUI-for-a-car rant shows, again, a lack of understanding of the purpose of GUIs. Of course, Stephenson is far from alone in his lack of appreciation, which is exactly what has led to the plethora of UIs for all manner of electronic devices. The controls for an automobile already use body movement and spatial metaphors; the controls have already collapsed complexity.
As for MPW imitating Unix, Stephenson's criticism implies that if one can prove that GUIs are not the best way to do even one thing with a computer, they must therefore be some sort of sham. Nonsense. For many tasks, you need words. That's why we don't e-mail icons to one another in lieu of words. It's very strange for a person who earns his living with words to act as though the nature of MPW is some sort of proof that GUIs are tools of the digirati to fool the masses a la Disney. Neither command lines nor GUIs are best at everything. I don't know where Stephenson gets the idea that the Mac was the choice of hackers. Unix always was. The Mac's core audience has been the artistic community – desktop publishing, imagery, video, etc. – people who work at the highest levels of meaning, who are not just being elitist when they choose computers that insulate them from the lower levels.
Microsoft has the psychological high ground? Pfooey. The aforementioned butterfly wing flap, Microsoft's packaging focus, Bill Gates' desire to win, and above all, the fact that operating systems produce increasing returns – the nature that Stephenson ignores and the government's anti-trust lawyers misinterpret – are why Windows dominates. Stephenson has come to the right conclusion for the wrong reason. Windows is a monopoly, but that doesn't matter because Windows is a monopoly only in the context of the kind of applications currently written for Windows. Nobody, with the likely exception of government lawyers, is short-sighted enough to imagine that it all ends, or even pauses, here. The context of the Internet is swallowing the personal computer context that made Microsoft powerful. In the Internet context, Windows has no monopoly. Breaking up Microsoft won't help – what do you get if you break a whirlpool into pieces? Unless you smash it all the way to random vectors (which federal courts do only by accident), you'd probably just slow it down temporarily.
Microsoft's response to Java was not anxiety. It was – to apply the cliché properly – predatory. It tried to pervert an open standard into a proprietary version, which it is rumored to be trying with Internet protocols. It tried to suck Java into the Windows vortex, but Sun prevailed in court, thank goodness. That's the kind of Microsoft behavior that we should worry about – moves that try to take the momentum away from other emerging systems.
Stephenson's statement at the end, endorsing Smolin's idea that the generation of complexity is the definition of interesting, explains why he thinks that GUIs are just spackle on the "real" work of computing. Appreciating complexity theory is quite the opposite of appreciating complexity: it is the recognition that simple things can emerge from the collapse of chaos. For example, dragging an icon from one window to another, especially if the windows represent directories on two machines connected via the Internet, is a simple act that represents complexity that is all too obvious if one first has to configure Unix and use command lines. File systems, network interfaces, and transfer protocols, oh my!
Comments and discussion
Copyright (c) 1999 Nicholas D. Arnett, Sunnyvale, California, USA
All Rights Reserved