Four Types of User Interface

On contemporary computational environments, four kinds of `integrated environment' are in use.

These are:

  1. The shell or `command line interface', such as `sh' or `bash'.

    The shell is the integrator, and you run programs, such as ls or grep, that can be piped. Many people who use the shell do not see it as the integrator, with the programs being `filters'. You can see this in the expansion of VI over the last couple of decades, to take on more an more of the shell integrating capabilities.

  2. The virtual Lisp machine, Emacs

    Emacs is the integrator, pulling together many libraries, including an editor. Many people who use Emacs do not see it as an `integrated environment' but as an `extensible editor'. You can see this in the way RMS speaks of dired and other such capabilities as a enlarged form of editing, a metaphorical extension of what we normally call `editing'.

  3. The graphic user interface, such as Gnome, KDE, or Enlightenment

    The graphic user interface is the integrator. Many people who use one copy files by `drag and drop', a method that does not scale.

    Computer geeks tend to include xterms, which provide command line interfaces, and/or Emacs inside of a graphic user interface, and not notice scaling and other problems of a graphic user interface, but make use of its advantages.

  4. The auditory interface, Emacspeak

    Emacspeak is truly different from the previous three types of interface even though it is built on Emacs.

    The permanently blind, who currently are the predominant users of this interface, listen to good hardware text-to-voice synthesizers that produce nice voices, different for difference `faces', at 500 words per minute, the same speed that sighted people read.

    Unlike the two dimensional representation that a visual editor such as VI or Emacs can present, or that a graphic user interface presents, an auditory interface can present only one dimension of information at a time, the sound stream. (Although I wonder about providing `background' sounds.)

    The listener uses memory to meld information from two different times together, such as two items from a list. To do the same task, a viewer moves his eyes.

    In addition to hardware text-to-voice synthesizers, two not-very-good software text-to-voice synthesizers are available. This means that any existing computer that can play a song and work with Emacs can run Emacspeak. It has not become commonplace, but the technology already exists for people to listen to their email or a blog while driving a car. (I am not sure I like that capability; but then I do not like mobile phones either. But many people do. As for me, I occasionally use Emacspeak to listen to Jane Austen. I find I tend to read her text too quickly to really enjoy her language but I have not learned to listen as quickly as I read.)

In each of these four integrated environments, a writer should use a single input to produce multiple output formats.

Otherwise, if a writer only provides one output format, that format is likely to be for a visual interface. The consequence is a writer who excludes himself or herself from the company of the `situationally blind', such as car drivers, who should not be looking at your blog while driving, from those with small or old machines, from those with slow connections, and from the frugal.


Return to: Notions

Or return to: Rattlesnake Home Page

webmaster@rattlesnake.com


Last modified: Tuesday, 2004 Apr 13 11:05 UTC

webmaster@rattlesnake.com