Can Morphic & eToys be improved by "The Humane Interface" cognitive psychology approach?

Darius squeakuser at
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

or attention.

* 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.

* Instant-On

   - 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.)

* Non-Modal

   - 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 mailing list