18 Welcome, New User! When Unix was under construction, it hosted no guests. Every visitor was a contractor who was given a hard hat and pointed at some unfinished part of the barracks. Unfortunately, not only were human factors engineers never invited to work on the structure, their need was never anticipated or planned. Thus, many standard amenities, like flush toilets, central heating, and windows that open, are now extremely hard and expensive to retrofit into the structure. Nonetheless builders still marvel at its design, so much so that they don’t mind sleeping on the floor in rooms with no smoke detectors. For most of its history, Unix was the research vehicle for university and industrial researchers. With the explosion of cheap workstations, Unix has entered a new era, that of the delivery platform. This change is easy to date: it’s when workstation vendors unbundled their C compilers from their stan- dard software suite to lower prices for nondevelopers. The fossil record is a little unclear on the boundaries of this change, but it mostly occurred in 1990. Thus, it’s only during the past few years that vendors have actually cared about the needs and desires of end users, rather than programmers. This explains why companies are now trying to write graphical user inter- faces to “replace” the need for the shell. We don’t envy these companies their task. Cryptic Command Names The novice Unix user is always surprised by Unix’s choice of command names. No amount of training on DOS or the Mac prepares one for the majestic beauty of cryptic two-letter command names such as cp, rm, and ls. Those of us who used early 70s I/O devices suspect the degeneracy stems from the speed, reliability, and, most importantly, the keyboard of the ASR-33 Teletype, the common input/output device in those days. Unlike today’s keyboards, where the distance keys travel is based on feedback principles, and the only force necessary is that needed to close a microswitch, keys on the Teletype (at least in memory) needed to travel over half an inch, and take the force necessary to run a small electric gener- ator such as those found on bicycles. You could break your knuckles touch typing on those beasts.
Accidents Will Happen 19 If Dennis and Ken had a Selectric instead of a Teletype, we’d probably be typing “copy” and “remove” instead of “cp” and “rm.”1 Proof again that technology limits our choices as often as it expands them. After more than two decades, what is the excuse for continuing this tradi- tion? The implacable force of history, AKA existing code and books. If a vendor replaced rm by, say, remove, then every book describing Unix would no longer apply to its system, and every shell script that calls rm would also no longer apply. Such a vendor might as well stop implement- ing the POSIX standard while it was at it. A century ago, fast typists were jamming their keyboards, so engineers designed the QWERTY keyboard to slow them down. Computer key- boards don’t jam, but we’re still living with QWERTY today. A century from now, the world will still be living with rm. Accidents Will Happen Users care deeply about their files and data. They use computers to gener- ate, analyze, and store important information. They trust the computer to safeguard their valuable belongings. Without this trust, the relationship becomes strained. Unix abuses our trust by steadfastly refusing to protect its clients from dangerous commands. In particular, there is rm, that most dangerous of commands, whose raison d’etre is deleting files. All Unix novices have “accidentally” and irretrievably deleted important files. Even experts and sysadmins “accidentally” delete files. The bill for lost time, lost effort, and file restoration probably runs in the millions of dollars annually. This should be a problem worth solving we don’t under- stand why the Unixcenti are in denial on this point. Does misery love com- pany that much? Files die and require reincarnation more often under Unix than under any other operating system. Here’s why: 1. The Unix file system lacks version numbers. 1Ken Thompson was once asked by a reporter what he would have changed about Unix if he had it all to do over again. His answer: “I would spell creat with an ‘e.’”
Previous Page Next Page