Can Morphic & eToys be improved by "The Humane Interface" cognitive
squeakuser at inglang.com
Thu Feb 20 01:22:35 UTC 2003
As long as we're reviewing how approachable Morphic is for the novice...
Here are some of Jef Raskin's ideas from his book "The Humane Interface" about
applying cognitive psychology to make user computer interactions more
efficient, consistent, and friendlier.
It seems to me that some of these are accomplished very well by Squeak and some
could make the whole environment much more approachable for the naive. You can
find this summary listed here:
* Whole Purpose is to Create
- Remember: The whole purpose for using a computer is to create (usually
more information, more instructions, or a memory or experience in one's own
* Subconscious Finger Habits
- Create, utilize, simplify, and support the user's subconscious typing and
mouse movement habits.
* Tool should Disappear from User's Attention
- The use of the tool should disappear from the user's conscious awareness
* Uninterrupted Concentration on Task
- Only the tasks or the creation of content should be conscious in the
user's awareness. This allows uninterrupted concentration on the task.
* Capitalize on User Habituation
- Make the habits that a user naturally forms when they interact with any
interface work for them instead of against them. Capitalize on user habituation
as much as possible.
- User should be able to do work immediately without waiting for the
computer to boot up.
* Never Lose Anything
- Never lose anything by accident. Eschew "Save" for "Unlimited Undo".
* Never Interrupt the User's Attention
- Never interrupt the user's attention/workflow unless absolutely necessary.
If a user's decision can be delayed, allow them to attend to the error message
when they are ready.
* Never Move the Data Input Focus
- Never move the data input focus or click focus unless the user requests
it. (i.e. change menu entries just before user clicks on prior menu entry, or
bring up a dialog box while user is typing so that they press enter on the
dialog box rather than their text, or changing window focus while typing.)
- The entire user interface should be non-modal including the command set,
the keyboard input, and the mouse button input. (Quasi-modes are OK.)
* Data Entry at Any Place and Any Time
- Allow the typing of a command or data entry at any place and any time.
Allow the user to move the data to an appropriate place after creating it
rather than always navigating first to the data entry field and then entering
the data after that.
* Easily Move Any Unit of Data
- Easily move any unit of data, block of data, range of data, or data
matching a criteria to any other physical storage place in the system or any
other data type.
* All Data Presented in a Searchable Liner Sequence
- Represent all user-accessible data and user-created data in a searchable
liner sequence. Most users think in terms of a serial sequence of data
presentation rather than a matrix or multilink network of data representation.
* Shortcuts to Quickly Search Forward or Backward
- Ability to easily LEAP (r) forward or backward to any data block or any
data type by an incremental, sequential search on content or data type label
with auto-completion of the search field.
* Unified Storage Structure
- Only use "documents" for exchanging data with other systems or
applications. Keep all data in a shared, indexed, unified storage structure,
database, or image.
* Multiple Selection of Data for a Single Command
- Allow the simultaneous multiple highlighting/selection of items for the
items to be operated on by a single command from the command line, key stroke,
menu selection, etc.
More information about the Squeak-dev