name: hci description: Human-computer interaction design principles license: MIT metadata: audience: developers category: design
What I do
- Design intuitive human-computer interfaces
- Apply cognitive load theory
- Implement gesture and voice interactions
- Create natural user interfaces
- Evaluate interaction paradigms
- Optimize user task efficiency
When to use me
When designing interactive systems, selecting interaction modalities, or optimizing user efficiency.
Key Concepts
Interaction Paradigms
CLI: Command-line interfaces
GUI: Graphical user interfaces
WIMP: Windows, Icons, Menus, Pointers
NUI: Natural User Interfaces
TUI: Tangible User Interfaces
Fitts's Law
Time = a + b * log2(D/W + 1)
D = distance to target
W = width of target
- Larger targets are faster to click
- Edges and corners are optimal positions
- Context menus reduce travel distance
Hick's Law
RT = a + b * log2(n + 1)
n = number of choices
- Minimize options for speed
- Use progressive disclosure
- Chunk information
Design Principles
- Visibility of system status
- Real-world mapping
- User control
- Error prevention and recovery
- Consistency
- Flexibility
- Aesthetic design
- Help and documentation
Cognitive Models
- GOMS (Goals, Operators, Methods, Selection)
- Keystroke-Level Model (KLM)
- Cognitive Walkthrough
- Think-aloud protocol
Input Modalities
- Mouse/keyboard
- Touch gestures
- Voice commands
- Eye tracking
- Brain-computer interfaces
- Motion sensors