4.0148 Interfaces (1/125)

Elaine Brennan & Allen Renear (EDITORS@BROWNVM.BITNET)
Wed, 30 May 90 17:24:48 EDT

Humanist Discussion Group, Vol. 4, No. 0148. Wednesday, 30 May 1990.

Date: Wed, 30 MAY 90 16:07:25 BST
From: Philip Taylor (RHBNC) <P.Taylor@vax.rhbnc.ac.uk>
Subject: Is there an alternative to GUIs

The `Mac vs IBM' debate, of which the latest incarnation is the
discussion resulting from the `Direct Manipulation' submission, is
possibly the only unifying theme between all the mailing lists to which
I subscribe, and is therefore, I suggest, an important debate, in the
sense that it arouses strong feelings in persons from a very wide range
of disciplines. What worries me slightly is that while we (on HUMANIST)
seem able to debate it dispassionately and objectively, its
manifestation elsewhere is undoubtedly the late twentieth-century
equivalent of religious wars, and arouses deeper feelings and stronger
reactions than any comparable topic (I suspect that the `Unix vs VMS'
debate comes a very poor second).

However, my worries concerning the quasi-religious fervour which it
arouses are nothing compared to my worry that despite the continuance of
the debate on countless mailing lists, both the learned journals and the
computer industry seem agreed that the war is already won: the future
human-computer interface will be graphically oriented.

Yet if the issue were that cut-and-dried, would the debate still rage ?
Would thousands of man-hours be wasted in continuing to argue the
relative merits of the two systems ? I think not; I believe that there
is most certainly a case for the perpetuation of the `traditional'
interface (imperative verb + parameter[s] + qualifier[s]), which is, I
believe, the `natural' way of working for [many of] those who are
language- or word-oriented.

What the Macintosh (and its predecessor, the Lisa) have undoubtedly done
is to shew that there is an {\it alternative} to the `traditional'
interface --- an alternative which is readily acceptable by, and
accepted by, a significant proportion of potential and actual computer
users; what they have {\it not} done is to shew that this alternative is
so superior that it will, by a process of natural selection, become the
only viable interface for the forseeable future.

If my assertion is true --- that the `traditional' (or command-line)
interface will remain the interface of choice for [many] computer users
who are language or word-oriented --- then should we not also be
discussing how that interface should evolve ? CP/M (with its arcane
`PIP' syntax) mutated into MS/DOS; RT-11 and RSX-11 mutated into VMS
(again with the loss of the `PIP' syntax); Unix, although apparently a
descendent of Multics, appears to have mutated to such an extent in
becoming a new species that most traces of its Multics ancestry have
completely disappeared in its command-line interface --- indeed, Unix
interfaces in general appear to be characterised by terseness and lack of
mnemonic significance, and I suspect that if interface-acceptability
were the only criterion of significance in the natural selection of
operating systems, the only trace of Unix today would be an occasional
skeleton buried deep in the fossil records ...

So, to start the ball rolling, let me offer some thoughts on what I
believe to be the essential features of a {\it good} command-line

[1] The use of natural language --- verbs and qualifiers should,
as far as possible be words which occur in [either English or]
the natural language of the user;

[2] The use of `intuitive semantics' --- words used in the interface
shall have a meaning as close as possible to their meaning in
[either English or] the natural language of the user;

[3] Consistent semantics --- when the same qualifier is used in
conjunction with two or more verbs, that qualifier shall have
the same meaning independent of the verb.

[4] Natural language ordering --- for example, one searches a
list of places for a thing, or copies a thing from a place
to a place; one does not search for a thing in a list of places,
or copy to a place from a place. This last is presumably
debatable --- while I find the suggested order natural, and
the deprecated order unnatural, there must be others who find
the reverse the case (otherwise MS/DOS and Unix wouldn't be as
they are). But then that must be true for all the other
suggestions as well ...

[5] Order independence --- where parameters and qualifiers occur
in a single command, it shall not matter whether the qualifiers
precede or follow the parameter, unless the qualifiers have only
local significance, in which case they shall follow the
parameter to which they refer.

[6] Case insensitivity --- it shall not matter whether a verb,
parameter or qualifier be entered in upper, lower or mixed-
case: the meaning shall remain the same.

[7] Context-sensitive help --- the command-line parser must be
able to offer guidance on appropriate completions for a
partially entered command, and to explain the syntax and
semantics of all the components of the command, including
optional or alternative components not [yet] entered. The
parser must backtrack as the user makes interative corrections,
using <delete previous <thing>> or <overstrike/replace> editing.

Why these features above all else ? Because I believe that they are
intuitive, and therefore not only easily grasped but easily guessed.
When faced with a new operating system, a user {\it has} to make a guess
at the probable effect of any action --- I believe the Macintosh
interface is just as counter- intuitive in this respect as CP/M, or TSO.
The strength of the Macintosh interface (and I accept that it has
strengths, as well as weaknesses) is its uniformity --- to achieve a
particular aim, one always carries out the same operation(s), regardless
of the program in use. But this consistency need not be absent from
`traditional' (command-line) user interfaces; it is simply that the need
for unformity had not been adequately perceived at the time when [the
majority of] [programs for] `traditional' user interfaces were evolving.

Surely with hindsight we can see that consistency and intuitive
semantics are paramount, yet are not implictly tied to the graphical
user interface of the Macintosh world; the deterministic behaviour of
the command-line interface (`when I type <foo>, it always does <foo>')
has much to commend it when compared to the probabilistic behaviour of
the graphical interface (`if I can manoeuvre the cursor within the
confines of an icon that I believe represents the concept <foo>, and if
I press a particular button exactly the right number of times within a
fixed period of time, then [there is a distinct probability that] the
system will do <foo>').

The time has come for the command-line users of the world to unite: we
have everything to lose, including the chains of our preferred style of
working, if we allow the `GUIs rule OK' dogma to remain unchallenged.

Philip Taylor
Royal Holloway and Bedford New College,
``The University of London at Windsor''