A (Gasp!) Mac Command Line?
One influence on today’s common computer interfaces has come not from the sort of windowing environments that lead up to Aqua, but from the Web browser-the software that, for many users, has come to define computer interaction. The Web has metaphors of its own (often mixed, as when users are required to “scroll” down a “page”). The Web page seldom imitates the desktop, though, using metaphors more closely related to the book-as when a site offers a table of contents or provides a site-specific search engine that functions something like an index. And despite the prevalence of mouse-clicking, use of the Web still depends rather heavily on good old-fashioned typing. You won’t get very far online before you need to key in a URL or search terms.
It is perhaps this realization-that pointing and clicking has its limits-that led the designers of OS X to take what to many will be a surprising step. The command line, never before seen on a Macintosh in the 16-year history of the machine, is provided as an alternative interface. The “Terminal” application allows access to the Unix underbelly of the new operating system. As fans of DOS and Unix will attest, the command line is often superior to graphical manipulation-particularly when the same task is to be carried out on many files, as with “rename every file ending in .htm’ to end in .html’.” As ordinary people routinely develop their own Web sites, it makes sense that these increasingly expert users will want recourse to the command line, even if they aren’t Unix gurus.
Perhaps the next big step in the everyday computer interface will be in the direction of more language-based interaction, achieving much of the power of the arcane Unix command line with most of the simplicity of simple Web queries. Windowing interfaces such as Aqua, and even a few carved-up bits of the desktop metaphor, will continue to be essential. Some of their shortcomings might be squished aside, though, by continuing to borrow from and build upon some of the better aspects of Web-based and command-line interaction.