[comp.unix.wizards] User interfaces

stpeters@dawn.steinmetz (Dick St.Peters) (10/12/87)

In article <11050@beta.UUCP> hwe@beta.UUCP (Skip Egdorf) writes:
>Please re-read my posting. I claimed that the Unix philosophy was to
>provide the (few) wizards with the profiling tools and the interface ...

My apologies if I've misread you.  Perhaps I've seen too many others
lambasting what you describe, calling it "creaping featurism".
(Which, incidently, is a real disease, but not as prevalent as some
would have us believe.)

However, I'm not at all convinced that profiling usage is a good guide
to user-interface evolution.  Unless it heavily weights usage by naive
and infrequent users, it will cause an interface tuned for experts.
If it does give naive user usage more weight, it could drive out those
things that make a good interface for experts.

What I want to see is interfaces that are, most of all, *flexible*,
with the versatility and power needed by wizards and which, if not
intrinsically simple, can be adapted (by experts) for novices.
Fortunately, this is exactly what I see happening.

What I don't like to see is having this evolution denounced by purists
as violating the original spirit of a lean (and mean) interface.  The
people denouncing multi-column 'ls' are those most able, by dint of
expertise, to surmount a behavior they find intrusive.  The novice has
no idea what to do when his listing scrolls offf the screen.

Even worse is when 'man' is not piped to 'more' automatically.

>There is light on the horizon. Try X Windows on a VAXStation. Try playing
>with windows on a Apollo. Play with NeWS or Sunview on a Sun.

Sounds like you think I must be a novice because I stood up in their
defense.  To set the record straight: I ran SunWindows on the first
Sun 1 (SunOS 1.0) I installed here, in Jan '83 I think, and nowadays I
routinely run NeWS and suntools on the two 'sides' of my Sun 3/110.
My substitute for 'shelltool' is a SunView program that maps mouse
events to editing commands.  (I wrote it before GNUemacs V18 had mouse
support.)

I don't have a VAXStation or Apollo to play with, but I am roughly
familiar with each.

I agree the horizon looks dazzling.  I didn't choose "dawn" as my
hostname for nothing.
--
Dick St.Peters                        
GE Corporate R&D, Schenectady, NY
stpeters@ge-crd.arpa              
uunet!steinmetz!stpeters

KEN%ORION.BITNET@WISCVM.WISC.EDU (Kenneth Ng) (10/13/87)

[edited discussion of making a system usable]

>motivation to make use of it. You can make an interface a lot more
>friendly by giving the employee involved a significant raise in pay.

I'd say an employee's willingness to use a given interface may be
affected by a significant raise in pay.  For example, I may be more
willing to use Microsoft Word given a pay raise, but I will never
pass an opportunity to blast Microsoft for what I consider a very
poor and inconsistent interface.

>It would be nice if people would perhaps rise above this hot-rod
>mentality and try to provide balanced examples and maybe even some
>reputable research from the human factors engineering or similar
>fields, even just some metrics and hypotheses statement would help a
>lot (user-friendly?  to whom? Our administrators? scientists?
>students? small warm-blooded animals of unspecified lineage?)

For starters, make the utilities consistent with the rest of the system.
For example, on a VM system I can enter a file name in upper, lower,
or mixed case almost anywhere and get the desired file EXCEPT for
Waterloo Make, where it must be in upper case.  The '-v' option
for almost all of Unix turns on a verbose feature EXCEPT for grep
where it does something different.  On Microsoft Word I use the cursor
keys to move the cursor around EXCEPT when I'm on the command line.
On Microsoft Word I use the space bar to move the options selection
EXCEPT on certain format menus, where I must use the tab key instead.
The Unix vi editor enables one to enter most of the ascii character set,
EXCEPT NULL and a couple others.  Sure I can memorize all the exceptions
to the rules, but why should I have to?  Why not design the interface
to be consistent to begin with?

Another item is to have the input somewhat human readable.  I still
cringe from my electrical engineering courses where the person who
wrote the routines used fix formated fields when free format options
existed in the FORTRAN he used.  Another example is the Unix terminfo.
AT&T decided to rewrite termcap and made the definitions incompatible
with the old one.  What is even worse is that they rigged up a different
gobbody gook that is even more arcane and harder to read than the old
one.  Why didn't they look at other humane languages like REXX for
examples on a human readable language?  Another example of line noise
are the uucp system call command streams.  I have to remember that
backslash b is a break on System 3 and its a backspace on System 5.
A break on system 5 got changed to a backslash K.  Why not use something
similar to Procomm 2.4.2's command files for calling another system?
While its more verbose, I get far less of a headache trying to figure
out what it's trying to do, especially on those systems where you need
to send different things depending on what you got back.

Note: I will not even begin to tackle the question of what is 'natural'
or 'instinctive'.  I've spent many hours arguing over them, all I
ever get is a tired voice and a headache.  The only interface that I
may classify as instinctive is where one looks at an item on the
screen and the cursor moves to that item.  If you know of one, I'd
like to see it.

Kenneth Ng
TEIES Project
NJIT - CCCC

hwe@beta.UUCP (Skip Egdorf) (10/13/87)

In article <7607@steinmetz.steinmetz.UUCP>, stpeters@dawn.steinmetz (Dick St.Peters) writes:
> In article <11050@beta.UUCP> hwe@beta.UUCP (Skip Egdorf) writes:
> >Please re-read my posting. I claimed that the Unix philosophy was to
> >provide the (few) wizards with the profiling tools and the interface ...
> 
> My apologies if I've misread you.  Perhaps I've seen too many others
> lambasting what you describe, calling it "creaping featurism".
> (Which, incidently, is a real disease, but not as prevalent as some
> would have us believe.)

Exactely! The creeping featurism is (I believe) the tendency of the
developers to include some features that seem "good", but that are
not really driven by the requirements of the users.

> However, I'm not at all convinced that profiling usage is a good guide
> to user-interface evolution.  Unless it heavily weights usage by naive
> and infrequent users, it will cause an interface tuned for experts.
> If it does give naive user usage more weight, it could drive out those
> things that make a good interface for experts.

It is probably true that the profiling tools that allowed grep to be
derived from ed usage, or that allow a much used shell script to be
identified and recoded in C are not enough to derive user interface
requirements for todays tools. I am not sure what such tools might look
like. I do know that a) including "Features" for the sake of including
"features" is not the thing to do (look at the 4.2 cat command for the
canonical example), and b) making the program very wordy are not the
correct things to do.

> What I want to see is interfaces that are, most of all, *flexible*,
> with the versatility and power needed by wizards and which, if not
> intrinsically simple, can be adapted (by experts) for novices.
> Fortunately, this is exactly what I see happening.

I agree that the two main groups of users will include wizards and novices.
I don't really think that the general trend is toward including both the
flexability and the generality. Throwing out the ability to pipe the
output of one tool into another is a step in the wrong direction. None the
less, I like ls to put things into multiple cols. Now if I could just
remember the switch that turns that format off...
The problem bites both novice and wizard alike. The point is the if
the wizards want the feature turned off and the novices want it on, and
it is hard to do either, something is missing.

> What I don't like to see is having this evolution denounced by purists
> as violating the original spirit of a lean (and mean) interface.  The
> people denouncing multi-column 'ls' are those most able, by dint of
> expertise, to surmount a behavior they find intrusive.  The novice has
> no idea what to do when his listing scrolls off the screen.

I don't want to return to a Silent-700 in 1977. I don't want to return
to paper tape and an ASR33 in 1967. The single thing that makes the
Unix history relevant is that for a brief time in the mid-70s, user interface
design was driven by the user requirements rather than the wizards guesses.

> 
> Even worse is when 'man' is not piped to 'more' automatically.
> 
> >There is light on the horizon. Try X Windows on a VAXStation. Try playing
> >with windows on a Apollo. Play with NeWS or Sunview on a Sun.
> 
> Sounds like you think I must be a novice because I stood up in their
> defense.

Sorry for any unintentional slight. This is a hard problem that should
be solved by interface designers but will probably be resolved (rather
than solved) by marketeers.

> 
> I agree the horizon looks dazzling.  I didn't choose "dawn" as my
> hostname for nothing.
> --
> Dick St.Peters                        
> GE Corporate R&D, Schenectady, NY
> stpeters@ge-crd.arpa              
> uunet!steinmetz!stpeters

					Skip Egdorf
					hwe@lanl.gov

By the way Dick, thanks for the idea about switching between NeWS and
Sunview on the 3/110. This is being written on a 3/110 on my desk, and
I hadn't used it that way (yet).
					Skip