Last month I read Neal Stephenson’s Snow Crash. It’s one of those books that throws your ideas about the nature of the world up in the air, leaving them differently-arranged when they land. If you’re at all a fan of scifi or cyberpunk, I wholeheartedly recommend it.
The title, Snow Crash, comes from a 1999 essay that Stephenson wrote about the history of Operating Systems. The lengthy essay, titled In the Beginning… Was the Command Line (avaible for free download here), is one part history lesson, one part cultural critique, and one part personal narrative; Stephenson intertwines the fight between Microsoft and Apple with the development of the modern operating system and his own personal narrative in which he migrates from Apple to Linux.
Stephenson starts with the hacker (in the non-pejorative sense) view that since the operating system really nothing but information, the idea of paying for an operating system is a bit absurd, it’s just pieces of data processing other pieces of data; Bill Gates’ master move was convincing the world that they should pay for something that by its very nature should be free. Further to this, being a shrewd businessman, Gates only made Windows as good as it needed to be to sell; aesthetics just weren’t important. Apple, being a hardware company focused on providing seamless user experiences, took the time to make their OS shine — much to their own detriment.Superficial attractiveness and functionality aside, operating systems are all what Stephenson calls mediated experiences. The way that computers handle information is not readily useful for most users, so a layer of abstraction is inserted between the user and the machine, this layer is the operating system. In replacing the command line interface with the graphical interface, operating systems made computers more accessible, but sufficiently less powerful, as the designer of the OS got to decide what tools should be readily usable to users, and which ones are not. Open source operating systems give users the freedom to determine exactly what their level of abstraction (the GUI) allows them to do. Given that the body of open source technology was at the time exceeding the capabilities of commercial operating systems, it’s mostly just marketing that keeps people buying Windows and OSX.
I’ve gotten into this debate with friends before: should computers be made easy to use, so that anyone may use them? Should computers be “hard” to use, that is, should OS designers refuse to sacrifice power for friendliness? Or, is this a false dichotomy, and open source allowed users to customize their experiences to whatever degree they like (and are capable)? Where should the burden of computing lie, with the user, or with the computer?
I’ve glossed over a lot of the ground that Stephenson covers, if you find yourself so motivated and with some free time, I encourage you to check it out, I’d like to know what people think of this 10-year old view. (It’s worth noting that Stephenson has since abandoned Debian Linux in favour of OSX, does this damage his argument?)