Arthur Abraham's Humane User Interface talk, 2 November 2004
Arthur Abraham came to talk about Jef Raskin's ideas about "Humane Interfaces". He sent me softcopy of his handout, which he followed pretty carefully; the handout is at the end. It felt to me (Ducky) that he only just got barely started before discussion ensued.
In particular, he clearly had some feedback about Chandler. See
the notes at the very end. (Addendum: he sent Ducky email with more explanation of his comments on Chandler.)
As the discussion is not captured in his notes, I will capture it
below, with
his handout following.
Discussion
Mitch asked Arthur his personal opinion of modes. Arthur replied that the best solution was to not have modes "because then users will never make mistakes". However, he acknowledged that it was very,
very hard to not have modes. If you did have modes, he said, you should make it blindingly obvious that you have switched modes, e.g. by changing the desktop background, "Now you're in yellow mode, now you're in blue mode..."
Jürgen pointed out that the fundamental reason that we have modes was because the bandwidth between the user and the computer was so low.
There was some discussion of what actually constituted a gesture. Does a "click" constitute a gesture, or is the gesture "click on the Save Button"? Mimi said that for new users, "click" was the gesture, with the implication that more experienced users saw "click on the Save Button" as the important gesture.
Ducky asked if a key press was the same gesture as a modifier-plus-key press. Arthur said that Raskin considered this a "quasimode" and used them. He said that users habituate to holding a modifier key down.
Some minor, good-natured skirmishing went on between vi camps and emacs camps. (
Editor's note: the emacs people were talking about how there weren't modes in emacs, but I realized that there are modes, they are just really obvious. Typing in the little micro-buffer at the bottom of the window gives different behavior than typing in the normal buffer.)
Mimi suggested that there was a difference between modes that disable an action and modes that changed the result of an action.
Mimi asked if there were such a thing as "analogous modes". We're working hard to get rid of different modes like Task Mode and Calendar Mode and Email Mode, but users do sometimes want to focus on just their Tasks. The Design Team has been working at coming up with actions that do the same basic thing on different types of data. Arthur said that "mode" refers to the gesture and not to the interaction.
There were some questions about interfaces done with feet. Ducky shared her experience with using a trackball with her foot, saying that it was a real pain (literally, in her case) to keep taking off and putting shoes on. Arthur said that there were some foot interfaces (think cars and airplanes!), but that we could use a lot more. He also was of the opinion that better designed interfaces would overcome the need to take off/put on shoes all the time.
Postscript: after the talk, Arthur told me (Ducky) about a system of circular menus that seemed cool: instead of going to the top and then pulling down cascades of menus, you'd click (or right-click, I suppose?) anywhere and then move in one of eight directions to select an item. If you hesitate for long enough, it will pop up another circle of menu items. He said that this allowed you to select a menu item without looking -- you just needed to habituate to moving in
that direction to do
that task, or maybe
this direction/pause/_that_ direction.
Handout for Arthur Abraham's Talk on Jef Raskin's "Humane Interface" Ideas at OSAF
"Anything is worth doing badly - at first" -Dick Karpinski
Disclaimer: I am not a Raskin disciple, though I do like good ideas.
Outline:
- Raskin (mechanics):
- Aphorisms
- Interface Concepts
- Formal Analysis Techniques
- THE project
- Abraham (comprehension):
- Programming Tools as
- Interfaces
- Chandler
RASKIN
Aphorisms from Raskin:
- "An interface is humane if it is responsive to human needs and considerate of human frailties."
- "[The] crucial first step -- making sure that interface design accords with universal psychological facts -- is customarily omitted in the design process. For the most part, interface designers have abdicated that responsibility to 'industry standards.'"
- "Once the product's task is known, design the interface first; then implement to the interface design." [Raskin, The Humane Interface, 2000]
Raskin's Laws of Interface Design:
- "A computer shall not harm your work or, though inaction, allow your work to come to harm".
- "A computer shall not waste your time or require you to do more work than is necessary."
- Corr: "Whenever you find yourself specifying an error message, please stop; then redesign the interface so that the condition that generated the error message does not arise."
- example
- Sony disk drive on initial Mac
Interface Concepts:
A. Locus of Attention
i not entirely under conscious control?.
1. looking for an object
2. the gorilla suit
3. the buzz of the fluorescent lights
B. Habituation
i . good: driving, flying, typing, mouse selection
ii. bad: "y" to confirm deletions
1. suggestion: a random action (..type tenth word in this box")
2. better: always allow an undo..... even after several intervening actions.
C Gesture: "A sequence of human actions completed automatically once set in motion."
i. typing (ex: "the")
ii. driving to work
iii. "chunking" (for items of cognition) is similar
D. Mode: A state of an interface which has a consistent interpretation of a Gesture.
[paraphrased]. If the interpretation changes, it's in a different mode for
that Gesture
i. bi-stable switches
a. flash light
b. state toggles
1. caps-lock key
2. if name changes (lock/unlock) can be mis-read as state
ii. better: radio buttons
iii. Solution to modes: no modes, or quasimodes
E. Modal Interface: when both:
i. Current state is not part of the user's Locus of Attention
ii. The result of a gesture depends on the Interface's state.
F. Range of a Gesture:
i. the set of software where a gesture has a particular result.
ii. Ideally, there should be only one Range, ever.
G. Monotonous Interface: Only one way to accomplish a task. Monotony.
H. Quasimode: A user-maintained Mode ("spring-loaded" mode; "dead-man" mode)
i. shift key Cf shift lock key
I. Verb-Noun and Noun-Verb constructions
i. Verb-Noun
a. sets up a Mode
b. moves Locus of Attention to verb selection
c. is harder to change in mid-course that Noun-Verb
ii. Noun-Verb
a.multiple-selection problem
i. solution: use previous selections
J. Visibility: "...just the right things have to be visible: to indicate what
parts operate and how the user it is interact with the device. Visibility
indicates the mapping between intended and actions and actual operations."
[Norman, The Psychology of Everyday Things, 1988]
K. Affordance: "...provides strong clues to the operation of things....
Knobs are for turning, slots for inserting something, etc." [Norman, Ibid, 1988]
L. Anxiety
i. As stress increases "people concentrate more and more on but a few features
of their environment, paying less and less attention to others."
[Elizabeth Loftus, Eyewitness Testomony, 1979] restated as: "if the computer
behaves unexpectedly... you become less likely to see hints, help messages...
as you become increasingly agitated about the problem."
ii.A2 suggestion to IBM Almaden: monitoring mouse and keyboard actions
to gage user frustration level.
iii. the "Need Detector"
iv. Murphy Corr: "A computer warning message is most likely to be missed when
it is most important for it to not to be missed" ["pull up, pull up!"]
M. Elementary Operations on elements in an interface:
a. Indication
b. Selection
c. Activation
d. Modification
i. Generation
ii. Deletion
iii. Moving (within Interface) [translation]
iv. Transformation
v. Copying (to different location, perhaps external)
Talk Ended Here?.. for cake ?
Formal Interface Analysis Techniques:
A.GOMS (Goals, Objects, Methods, Selection)
i. gives time predictions within one SD of actual
[Card, Moran, & Newell, The Psychology of Human-Computer Interaction, 1983}
ii. elements and timing:
K = Keystroke (including on GID): 0.2 sec
H = Homing: hand movement from keyboard to GID: 0.4 sec
P = Pointing to screen position with GID: 1.1sec
M = Mentally Preparing: user time to prepare for the next step: 1.35sec
R = Response time to input: <0.25sec or system seem broken
iii. M insertion algorithm:
0. insert in front of:
* all K
* P's that select commands
1. Delete anticipated Ms
* ex: moving GID to tap its key
2. Delete Ms within cognitive units:
* ex: command name
3. Delete Ms before consecutive terminators
* ex: delimiter of a command following delimiter of its argument
4. Delete Ms that terminate commands
*ex: &enter&
5. Delete the portion of any M that overlaps an R
iv. since individual performance varies & tasks vary in difficulty
1. GOMS best for ranking different interface approaches
B. Information Content an Interface (I):
i. n equally likely options: I = Log2(n)
ii. for each of these: I(n) = (1/n)log2(n)
iii. for an alternative i having probability p(i): I(i) = p(i)log2(1/p(i))
C.Information-Theoretic Efficency (E): Minimum amount of information necessary
to do a task, divided by the amount of information the user must supply to
accomplish the task.
i. 0=< E <=1
1. E = 0 iff user must provide unnecessary information (ex: "task none [OK]")
2. E = 1 iff no information is required and no task is done
(ex: fading messages)
D Fitts Law: time to move towards a target:
t(msec) = a + b log2((D/S) + 1)
S = size of target along line of motion
D = distance from starting position
a,b = experimentally determined (commonly a=50, b=150 ):
note: for a 2-D Target use smaller of height or depth
i. ex: Mac menu vs Wintel menu (50mm to stop at edge of 14" screen)
F. Hicks Law: time to choose between n alternatives:
t(msec) = a + b log2(n+1)
i.for confusing presentations, a & b increase
ii.habituation decreases b;
iii.commonly a=50, b=150
iv. if the probably of alternative i is p(i) then:
t(msec) = ? p(i)log2((1/p(i)) + 1)
i
G. Icons
i. evil
THE Project
The Humane Environment: [currently: Aalii]
LCursor, Cursor-R
LeapBar
Strip text
Zoom world
ABRAHAM
Programming Tools:
???as Comprehension Aids
A.Fonts
i. DIY coding fonts (([{,.;:'"`-*)
B.Languages
i. Algol vs C vs Perl vs Python
a. identifier identification ($@%)
b. regular expressions
c. conciseness (self :)
C. Comments, Man, Documentation
i. Literate Programming vs Assembly vs Self-documentation vsMatLab
ii. UML vs File Structure Chart
D. IDE
i. awareness of
a.language
b.definition space,
c.colors
d. comments -- folding
Interfaces
A. Information in the world or information in the mind? - [from Don Norman, ibid]
i. nothing is intuitive
a. "Computer!' - Scotty
ii. "Show me the model!" -- Jerry Maguire
iii. eager typing
iv. ID sounds
B. Don't KISS the MIZ
i. Fitts applications:
a.circular menus
b.zooming targets
ii. Hicks applications:
a.in presentation of options
b.in presentation of next option
C. Effect ~= Difficulty
a. "self destruct will [vent seam] occur in [flashing red lights]
?five ?four ?" - your fav sf movie
Chandler
a. 0.4
i "Show me the model!" -- Jerry Maguire
ii. Humans cost more than computers
iii. Can it do a real 6-degress of separation model?
iv. I didn't know you changed that!
v. how can I tell it's different?
a. very wintelly
B. CPIA: Chandler Presentation and Interaction Architecture
i. [jumps up and down with excitement]
-- DuckySherwood - 02 Nov 2004