Professional Documents
Culture Documents
Human-Computer Interaction
The psychology of metaphors
Like affordances, having a metaphor can tell you
how you might use something.
Unlike affordances (which are direct), metaphors
are indirect (require more inferences)
The psychology of metaphors
a metaphor provides a lot of information
it enables the transfer of skills
good metaphors provide natural mappings
metaphors are not taken literally
they can highlight underlying assumptions
metaphors are not symmetrical
they can be violated
The psychology of metaphors
metaphors can be mixed (e.g., windows and
desktops)
metaphors can be misleading (putting a disk
in the trash)
some things don’t seem to have any obvious
metaphor (ex: UNDO)
one metaphor is better than another if it leads
to more correct predictions about a system’s
behavior.
Popular metaphors for computers
computer as vast library (Memex, 1945)
computer as giant calculator (ENIAC, 40s-50s)
computer as intelligent assistant (Licklider, 1957)
computer as sketchpad (Sutherland, 1962)
computer as tool or typewriter (Engelbart, 1963)
computer as human pretender (Weizenbaum, ‘60s)
computer as network (Taylor, 1968)
computer as book (portable) (Kay, Xerox PARC)
computer as desktop/windows (Xerox PARC, ‘70s)
with objects
computers for the rest of us (Apple, 1984)
More or less successful metaphors
text editing as using a typewriter
voice mail as answering machine or
mailbox
data as files (in folders or directories),
represented as icons on desktop/in windows
deleting a file as throwing it in the trash
applications as tools (sometimes w/ icons)
programming as building objects
programming as directing actors on a stage
applications as agents
Metaphors often suggest
styles of interaction
Some styles of interaction:
Commands (& queries, keyboard shortcuts)
Menus (and W.I.M.P. interfaces)
Direct manipulation
Conversation (often w/ speech or natural language)
Browsing
Forms and spreadsheets
Immersive environments
Metaphors often suggest
styles of interaction
Some styles of interaction:
Commands (& queries, keyboard shortcuts)
Typing in choices to a vending machine
Telling a dog to go fetch
Interacting with VMS, DOS, Unix, or protocols such as
Telnet, ftp, etc.
Programming your VCR to record a TV show
Command interface advantages
Domain-specific language
Similar to scripting language
The user tells the system what to do
e.g. tell the time, copy a file, save a file
The user is in control (takes the initiative)
Very common conceptual model for operating a
device (little or no intelligence in the device)
Main benefits:
Powerful (especially for experts and frequent users)
Supports fast and efficient interaction
Good for repetitive kinds of actions
Example: Copy command (DOS)
Copies files from one location to another. The destination
defaults to the current directory.
> copy file1 [destination]
If multiple files are to be copied, the destination must be a
directory, or an error will result.
> copy file1 file2 file3 [destination]
Files may be copied to devices. To send file to printer:
> copy file lpt1
To display file on screen ("console"): (alternatively: type file)
> copy file con
>
No feedback given after one of these commands; just a prompt >
Equivalent Unix command: cp
Command interface drawbacks
User’s
System
Goals
(Harold Thimbleby)
Human-Computer Dialog (cont.)
A dialog can be over-determined
when a system is authoritarian
and takes too much initiative.
(unnatural constraints)
Advantages:
reduces the consequences of errors
what the user does is predictable
Dialog Design
Avoid under-determined dialogs by
providing help and by reducing options.
Avoid over-determined dialogs by
letting users undertake tasks in flexible
orders.
Don’t force them to do unnecessary
things.
Support alternative styles of interaction
whenever possible
Different users are different!
Interfaces that take the initiative are
better for novices.
Interfaces that let the user take the
initiative are better for experts.