Principles of design: 1. Use both knowledge in the world and knowledge in the head. 2. Simplify the structure of tasks. 3. Make things visible: bridge gulfs between Execution and Evaluation. 4. Get the mappings right. 5. Exploit the power of constraints. 6. Design for error. 7. When all else fails, standardize.