Skills · Design & UI

Design of Everyday Things Framework

Unverified26/40

Describe your app, website, or product and how people use it. Get back a plain list of every spot where people get stuck or confused, and exactly how to fix each one.

Originally by wondelai · MIT

Claude CodePartialHas SKILL.md but declares no allowed-tools — Claude Code will ask for permission each time
CursorPartialPlain prose you can paste in — but no Cursor rules file
CodexPartialPlain prose you can paste in — but no AGENTS.md
Gemini CLIPartialPlain prose you can paste in
CopilotPartialPlain prose you can paste in — but no Copilot instructions file
npx agentalley add design-everyday-things

This command does not work yet — the CLI is still being built. Until then, use Raw in the reader below to take the file.

Who is stuck, and on what

People keep getting stuck, dropping off, or emailing me confused, and I honestly can't tell why. It all makes perfect sense to me, so I have no idea what's actually tripping everyone else up.

What it gives you

A plain-language report that lists each place people get confused or make mistakes, ranked worst-first, with a specific fix for every one.

When NOT to use it

It won't build or redesign anything for you — it tells you what's wrong and how to fix it, but you or your designer still make the changes.

The whole source

No sign-in, no blur, nothing truncated
design-everyday-things/SKILL.md295 lines15.6 KBRawView on GitHub
Frontmatter — 4 properties
namedesign-everyday-things
descriptionApply foundational design principles: affordances, signifiers, constraints, feedback, and conceptual models. Use when the user mentions "why is this confusing", "affordance", "error prevention", "discoverability", "human-centered design", "mental model", "mapping", "seven stages of action", "users keep making mistakes", "this is unintuitive", or "people cant figure out how to use it". Also trigger when reducing product complexity or feature creep. Covers the gulfs of execution and evaluation. For usability scoring, see ux-heuristics. For iOS-specific patterns, see ios-hig-design.
licenseMIT
metadata author: wondelai version: "1.4.0
1---
2name: design-everyday-things
3description: 'Apply foundational design principles: affordances, signifiers, constraints, feedback, and conceptual models. Use when the user mentions "why is this confusing", "affordance", "error prevention", "discoverability", "human-centered design", "mental model", "mapping", "seven stages of action", "users keep making mistakes", "this is unintuitive", or "people cant figure out how to use it". Also trigger when reducing product complexity or feature creep. Covers the gulfs of execution and evaluation. For usability scoring, see ux-heuristics. For iOS-specific patterns, see ios-hig-design.'B1Line is 601 characters — unreadable by eye
4license: MIT
5metadata:
6 author: wondelai
7 version: "1.4.0"
8---A5No allowed-tools declared — no way to tell what this skill may touch
9 
10# Design of Everyday Things Framework
11 
12Foundational design principles for creating products that are intuitive, discoverable, and understandable. The "bible of UX" — applicable to physical products, software, and any human-designed system.
13 
14## Core Principle
15 
16**Good design is actually a lot harder to notice than poor design, in part because good designs fit our needs so well that the design is invisible.** When something fails, users blame themselves — but the fault is almost always in the design. Great design bridges the gap between what people want to do and what the product allows: it is discoverable (you can figure out what to do) and understandable (you can figure out what happened).
17 
18## Scoring
19 
20**Goal: 10/10.** Score 2 points per satisfied row of the Quick Diagnostic (5 rows = discoverability, evaluation, error recovery, mapping, constraints). Bands: **9-10** = users act without instructions, understand every outcome, and recover from any error; **5-6** = one gulf or error path is broken; **<=3** = users must consult a manual or routinely blame themselves. Report the current score and the diagnostic rows failing it.
21 
22## The Two Gulfs
23 
24Every interaction with a product requires bridging two gulfs:
25 
26```
27USER PRODUCT
28 │ │
29 ├──── Gulf of Execution ────────────────→│
30 │ "How do I do what I want?" │
31 │ │
32 │←──── Gulf of Evaluation ──────────────┤
33 │ "What happened? Did it work?" │
34```
35 
36### Gulf of Execution
37 
38**The gap between what users want to do and what the product lets them do.** Users ask: What can I do here? Which control do I use?
39 
40**Bridge with:** clear signifiers, natural mappings, constraints, familiar conceptual models.
41 
42### Gulf of Evaluation
43 
44**The gap between what the product did and what users understand happened.** Users ask: What happened? Did it work? What state is the system in?
45 
46**Bridge with:** immediate visible feedback, clear system-state indicators, meaningful error messages, progress indicators.
47 
48**Design goal:** Make both gulfs as narrow as possible — action and understanding should be immediate.
49 
50See: [references/two-gulfs.md](references/two-gulfs.md) for gulf analysis exercises.
51 
52## Seven Fundamental Design Principles
53 
54### 1. Discoverability
55 
56**Definition:** Can users figure out what actions are possible and how to perform them? Its five components — affordances, signifiers, constraints, mappings, feedback — are detailed below.
57 
58**Test:** Put a new user in front of your product. If they can't figure out what to do within 10 seconds, discoverability is broken.
59 
60**Anti-pattern:** "The user manual explains it." If users need a manual, the design failed.
61 
62### 2. Affordances
63 
64**Definition:** The relationship between an object's properties and a user's capabilities that determines how the object could be used.
65 
66**Key insight:** Affordances exist whether or not they are perceived — what matters for design is *perceived* affordance.
67 
68| Type | Definition | Example |
69|------|------------|---------|
70| **Real** | Physical capability exists | A button affords pressing |
71| **Perceived** | User believes capability exists | A raised area looks clickable |
72| **Hidden** | Exists but isn't obvious | Right-click context menu |
73| **False** | Appears to afford action but doesn't | Decorative element that looks clickable |
74| **Anti-affordance** | Prevents action | A barrier that blocks movement |
75 
76**Digital applications:**
77 
78| Element | Affordance | How to Signal |
79|---------|------------|---------------|
80| **Button** | Clicking/tapping | Raised, colored, shadow, hover state |
81| **Text field** | Text input | Border, placeholder text, label |
82| **Scroll area** | Scrolling | Scroll bar, fade at edge, partial content |
83 
84**Common failures:** flat design erasing perceived affordances (button or label?), too-small touch targets, interactive and decorative elements that look identical.
85 
86See: [references/affordances.md](references/affordances.md) for affordance design patterns.
87 
88### 3. Signifiers
89 
90**Definition:** Signals that communicate where the action should take place. **Affordances determine what you CAN do; signifiers show you WHERE and HOW.**
91 
92| Type | Definition | Example |
93|------|------------|---------|
94| **Deliberate** | Designed to communicate | "Push" label on door, placeholder text |
95| **Accidental** | Unintentional but informative | Worn path in grass (people walk here) |
96| **Social** | Other people's behavior | Line of people indicates entrance |
97 
98**Digital signifiers:**
99 
100| Signifier | What It Communicates | Example |
101|-----------|---------------------|---------|
102| **Cursor change + hover state** | This is interactive | Pointer → hand on links; button color change |
103| **Icons + labels** | Function of the element | Magnifying glass = search; "Submit", "Cancel" |
104| **Color + position** | Status, category, hierarchy | Red = error, green = success; close button top-right |
105 
106**Design rule:** When in doubt, add a signifier — better to over-communicate than leave users guessing.
107 
108See: [references/signifiers.md](references/signifiers.md) when deciding which signifier to add to an unclear control.
109 
110### 4. Mappings
111 
112**Definition:** The relationship between controls and their effects. **Natural mapping** means the spatial layout of controls matches the layout of what they control.
113 
114| Mapping Quality | Example | Why It Works/Fails |
115|-----------------|---------|-------------------|
116| **Natural** | Volume slider (up = louder) | Matches mental model |
117| **Poor** | Light switch panel | No spatial correspondence to lights |
118| **Poor** | Stovetop knobs in a row | Layout doesn't match burner positions |
119 
120**Digital principles:** controls near what they affect, layout mirroring content, direction matching expectation (scroll down = content moves up), related controls grouped.
121 
122| Technique | How It Works | Example |
123|-----------|-------------|---------|
124| **Proximity** | Control near target | Edit button next to content |
125| **Spatial** | Layout mirrors real world | Map controls match compass directions |
126| **Cultural** | Follows conventions | Red = stop/danger, green = go/safe |
127| **Sequential** | Follows natural order | Steps 1, 2, 3 left to right (or top to bottom) |
128 
129See: [references/mappings.md](references/mappings.md) for mapping analysis exercises.
130 
131### 5. Constraints
132 
133**Definition:** Limiting the possible actions to prevent errors.
134 
135| Type | Mechanism | Example |
136|------|-----------|---------|
137| **Physical** | Shape/size prevents wrong action | USB plug only fits one way |
138| **Cultural** | Social norms guide behavior | Red means stop, green means go |
139| **Semantic** | Meaning restricts options | A rearview mirror only makes sense facing backward |
140| **Logical** | Logic limits choices | Only one hole left for the last screw |
141 
142**Digital constraints:**
143 
144| Constraint | Implementation | Example |
145|------------|---------------|---------|
146| **Input validation** | Restrict what can be entered | Date picker vs. free text |
147| **Disabled states** | Gray out unavailable options | "Submit" disabled until form valid |
148| **Forced sequence + undo** | Steps in order; allow reversal | Wizard with locked steps; Gmail "Undo send" |
149 
150**Design rule:** Every constraint you add is one less error the user can make — make wrong actions impossible rather than punishing them.
151 
152See: [references/constraints.md](references/constraints.md) for constraint design patterns.
153 
154### 6. Feedback
155 
156**Definition:** Communicating the results of an action back to the user. Feedback must be immediate (within 0.1s for direct manipulation), informative, appropriately dosed, and non-intrusive.
157 
158| Type | When to Use | Example |
159|------|-------------|---------|
160| **Visual** | Most actions | Button press animation, color change, checkmark |
161| **Auditory** | Important events, confirmations | Success chime, error sound |
162| **Haptic** | Touch devices, confirmation | Vibration on key press |
163| **Progress** | Long operations | Progress bar, spinner, skeleton screen |
164 
165**Digital feedback patterns:**
166 
167| Situation | Feedback Needed | Example |
168|-----------|----------------|---------|
169| **Form submission** | Success/error message | "Saved!" toast or inline error |
170| **Loading** | Progress indicator | Spinner, skeleton screen, percentage |
171| **Error** | What went wrong + how to fix | "Invalid email. Please check format." |
172 
173**Response times:** 0.1s feels instantaneous; 1s is a noticeable delay (change cursor); 10s loses attention (show progress bar); over 10s users leave (show percentage, allow backgrounding).
174 
175**Common failures:** no feedback (did my click register?), delayed feedback (feels broken), unclear feedback, alert overload.
176 
177See: [references/feedback.md](references/feedback.md) when an action gives no clear result and you need the right feedback type and timing.
178 
179### 7. Conceptual Models
180 
181**Definition:** The user's mental model of how a product works.
182 
183| Model | Held By | Description |
184|-------|---------|-------------|
185| **Design model** | Designer | How the designer thinks it works |
186| **User's model** | User | How the user thinks it works |
187| **System image** | Product | What the product actually communicates |
188 
189**Goal:** The user's model should match the design model; the system image is the only bridge. Matching models let users predict outcomes and recover from errors; mismatches breed confusion, self-blame, and support calls.
190 
191**Example (thermostat):** design model — set a temperature, the system maintains it; common user model — higher setting heats faster (wrong), so users crank it to 90°F.
192 
193**Build correct models with:** familiar metaphors (desktop, trash), visible system state, clear feedback, consistent behavior, progressive disclosure.
194 
195See: [references/conceptual-models.md](references/conceptual-models.md) when the user's model diverges from how the product works. For fully worked teardowns (door handles, thermostats, digital products), see [references/case-studies.md](references/case-studies.md).
196 
197## Human Error
198 
199**Norman's key insight: there is no such thing as "human error" — only bad design.** When someone errs, look for the design flaw, not the person's flaw.
200 
201### Types of Errors
202 
203**Slips** — correct intention, wrong action:
204 
205| Slip Type | Cause | Example | Design Fix |
206|-----------|-------|---------|------------|
207| **Action slip** | Wrong action on right target | Click "Delete" instead of "Edit" | Separate destructive actions |
208| **Memory lapse** | Forget step in sequence | Forget attachment after writing "attached" | Gmail's attachment reminder |
209| **Mode error** | Right action, wrong mode | Type in caps lock | Show mode state clearly |
210| **Capture error** | Habit overrides intention | Drive to old office on autopilot | Interrupt at decision points |
211 
212**Mistakes** — wrong intention, executed correctly:
213 
214| Mistake Type | Cause | Example | Design Fix |
215|-------------|-------|---------|------------|
216| **Rule-based** | Apply wrong rule | Use formula for wrong situation | Provide context, confirm |
217| **Knowledge-based** | Incomplete/wrong mental model | Misunderstand how system works | Better conceptual model |
218| **Memory lapse** | Forget goal or plan | Forget why you opened the fridge | Reminders, history |
219 
220### Design for Error
221 
222**Prevent:** constraints that make errors impossible, undo/redo everywhere, confirmation for destructive actions, sensible defaults, forgiving input.
223**Recover:** clear error messages, never erase the user's work, partial saves, easy reset to a known good state.
224 
225**Error message checklist:**
226- [ ] Says what went wrong (in human language)
227- [ ] Says how to fix it
228- [ ] Doesn't blame the user
229- [ ] Preserves user's work
230- [ ] Provides alternative path
231 
232See: [references/human-error.md](references/human-error.md) for error prevention patterns.
233 
234## The Seven Stages of Action
235 
236**Norman's model for how humans interact with products:**
237 
238```
2391. GOAL → "I want to adjust the temperature"
2402. PLAN → "I'll use the thermostat"
2413. SPECIFY → "I'll press the up arrow"
2424. PERFORM → (presses button)
243 ─── Gulf of Execution ───
2445. PERCEIVE → (sees display change)
2456. INTERPRET → "The number went up"
2467. COMPARE → "Is this what I wanted?"
247 ─── Gulf of Evaluation ───
248```
249 
250**Design implications:** support stages 1-3 with signifiers, mappings, and constraints; stage 4 with good affordances; stages 5-7 with feedback and visible state. Walk any interaction through each stage to find where users get stuck.
251 
252See: [references/seven-stages.md](references/seven-stages.md) for stage-by-stage analysis.
253 
254## Human-Centered Design (HCD) Process
255 
256```
257Observation → Idea Generation → Prototyping → Testing → (iterate)
258```
259 
260Two specifics that change how you run this loop: in **Observation**, don't ask users what they want (they don't know) — watch for workarounds and frustrations in real contexts. In **Testing**, use real users not designers — 5 reveal ~85% of problems, so observe behavior over opinions and iterate.
261 
262## Common Mistakes
263 
264| Mistake | Why It Fails | Fix |
265|---------|-------------|------|
266| **No signifiers** | Users can't find features | Add visual cues for every interactive element |
267| **No feedback** | Users don't know if action worked | Respond to every action within 0.1s |
268| **Blaming users** | Ignores design flaws | Look for design cause of every "user error" |
269| **Feature creep** | Complexity overwhelms | Apply constraints, progressive disclosure |
270| **Inconsistency** | Breaks conceptual model | Same action = same result everywhere |
271| **Ignoring context** | Designed for ideal conditions | Observe real usage environments |
272 
273## Quick Diagnostic
274 
275Audit any design:
276 
277| Question | If No | Action |
278|----------|-------|--------|
279| Can users figure out what to do? | Poor discoverability | Add signifiers, improve affordances |
280| Do users understand what happened? | Gulf of evaluation too wide | Add feedback, show system state |
281| Can users recover from errors? | No error tolerance | Add undo, confirmation, clear messages |
282| Does the control layout match the output? | Poor mapping | Reorganize controls to match spatial layout |
283| Are impossible/irrelevant options hidden? | Missing constraints | Disable, hide, or remove invalid options |
284 
285## Further Reading
286 
287For the complete framework:
288 
289- [*"The Design of Everyday Things"*](https://www.amazon.com/Design-Everyday-Things-Revised-Expanded/dp/0465050654?tag=wondelai00-20) by Don Norman (Revised & Expanded Edition, 2013)
290- [*"Emotional Design"*](https://www.amazon.com/Emotional-Design-Love-Everyday-Things/dp/0465051367?tag=wondelai00-20) by Don Norman (design and emotion)
291 
292## About the Author
293 
294**Don Norman, PhD** is co-founder of the Nielsen Norman Group, director of The Design Lab at UC San Diego, and a former VP of Advanced Technology at Apple, where he coined the term "user experience." *The Design of Everyday Things* (1988, revised 2013) is widely considered the most influential design book ever written and is required reading in design programs worldwide.
295 

Reviews

Installed this one?Write the first review and take the Trailblazer badge.

Reviews only open after a real install, so this is empty — and we leave it empty rather than invent one.

Alternatives

Also in Design & UI