Interface Modes
In short A mode exists when the same action does different things depending on a state the user isn’t paying attention to. Jef Raskin gives a precise definition, shows why neither feedback nor experience prevents mode errors, and offers clear rules. The most useful: label toggles by state, not by action.
Based on: J. Raskin, The Humane Interface (2000), ch. 3, sections 3.1–3.2.1.
On this page
Key ideas#
Gestures and chunking#
Raskin calls a sequence of actions that runs automatically once started a gesture. For a skilled typist, typing a short word is one gesture; for a beginner, it is several. Merging steps into one mental unit is called chunking.
What a mode is#
As a first approximation, an interface stays in one mode as long as a given gesture keeps the same meaning. If the same gesture now means something else, you are in a different mode. Raskin then sharpens this with attention. A gesture is modal when:
- the state that decides its effect is not where the user’s attention is, and
- that state can make the same gesture trigger different actions.
Feedback is not enough#
Donald Norman explained mode errors as a lack of feedback about the system’s state. Raskin disagrees: even a clear indicator fails if it isn’t in the user’s locus of attention. His case is a CAD program where the cursor shape signaled a drawing mode, right where the user was looking. Yet a user for whom selecting objects had become automatic kept missing the change for years.
Experience doesn’t protect you#
Beginners make mode errors because they don’t know the mode; experts make them because the action has become automatic. Raskin’s example: in most programs one shortcut creates a new document, but in a particular mail program a different shortcut creates a new message. Beginners (by false generalization) and experts (by habit) make the same mistake.
Measuring modality#
Raskin proposes a degree of modality from 0 (fully modal) to 1 (fully modeless). You classify each gesture as modal or modeless and weight it by how often it is used. This turns “this feels modal” into a number for comparing alternatives. A subtle point: Backspace is formally modal, because it deletes whatever was typed last. It causes no trouble, though, because what it deletes is in the user’s attention.
Three ways to prevent mode errors#
Raskin assesses three remedies proposed by Norman:
- Don’t have modes. This is the only way to eliminate mode errors.
- Make modes clearly distinct. This often fails, as the CAD case shows.
- Don’t use the same command in different modes. This doesn’t reduce errors, but it reduces their damage.
Lock and Unlock: state, not action#
A button labeled “Lock” that changes to “Unlock” when pressed confuses many users. They read the label as the current state, not as the action. Raskin’s fix is to change the control: a checkbox, or a set of options labeled with adjectives that describe the object’s state (“Locked” / “Unlocked”). A single toggle is acceptable only when the state it controls is visible and in the user’s attention or short-term memory. Otherwise, show all options explicitly.
How to apply it#
- Inventory the modes. For each screen, list the states where the same click, key or scan does something different: view vs. edit, administrator vs. normal, batch vs. single.
- Challenge each mode. Ask whether it can be removed, for example by letting users edit a field in place instead of switching to an edit mode.
- Model the necessary ones. Use a state model for the UI, and specify what each gesture does in each state.
- Label toggles by state. Write it into the acceptance criteria: toggles show the current state with an adjective, not a verb.
- Keep shortcuts consistent with other tools your users already know.
Review checklist#
- No gesture means different things in different hidden states.
- Remaining modes are listed, justified and visible where the user is looking.
- Toggles describe state (“Locked”), not action (“Lock”).
- Destructive commands are not shared across modes.
- Shortcuts match conventions users know from other software.
Example#
At The Workshop, a fictional chain of bike-repair workshops, the mechanics’ tablet has an “Edit” switch on each job. In edit mode, scanning a part’s barcode adds the part to the job; in view mode, the same scan opens the part’s catalog entry. Busy mechanics scan in the wrong mode, and parts go missing from invoices.
The analyst rewrites the requirement. Scanning always adds the part to the open job, with undo, and looking up a part becomes a separate button. A “Lock job” button that toggled to “Unlock job” becomes a checkbox labeled “Job locked for changes”.
Sources and further reading#
- J. Raskin. The Humane Interface: New Directions for Designing Interactive Systems. Addison-Wesley, 2000, ch. 3 (sections 3.1–3.2.1).