The Design of Everyday Things

“Proper design can make a difference in our quality of life.” -Donald Norman

I know that when I’ve replied “cockpit error” in the past to situations involving software and its users that I’ve focused more often than not on the “pilot” rather than the “plane.” Reading the preface of The Design of Everyday Things convinced me to readjust my perspective–focusing more on the design of software and how it contributes to “cockpit errors.” …and the rest of the book didn’t disappoint either!

While I’m studying the “plane” moving forward, I’ll be look for what affordances it provides or lacks. How does the software I’m ultimately responsible for provide strong clues to its operation? Can my user know what to do just by looking at the GUI? Are simple things truly usable without explanation?

I’ll re-double efforts to avoid false causality and false coincidence. Are unnecessary results being logged (e.g. a handled, non-critical error)? Is any user interaction not required or overly complicated (confusing)? Does my user always have a strong sense of feedback from the software? Is the mapping among actions and results natural and intuitive, or arbitray and forced?

“The problem of determining the ‘naturalness’ of mappings is difficult, but crucial.” -Donald Norman

When the author reviewed stereo controls in cars, it got me to think about how content management could become more usable in a more 3D-like setting rather than the two dimensions afforded users today by ECM software (e.g. relationship mapping, content linking, associated discussions, hypertext, virtual documents, etc.). What about ECM software needs to be freed from a linear-only view?

With a deeper appreciation now for mental models and how they explain observations, being able to observe adequate feedback is crucial to forming a desirable impression of software and how one can go about their goals and tasks within it. It’s clearer now why perception becomes reality and how perception is shaped significantly by design. The more I can ensure reasonable ways for a user to digest the unfamiliar, the less mental energy will be required to successfully interact with new software, which should create a favorable impression and ultimately a satisfied user.

The author’s discussion concerning long term memory and short term memory gave me ideas for software improvements, too. The more my software can facilitate past-as-just-present functionality (e.g. saved searches, MRU lists, extensive undo/redo, etc.), the more mental relief can be afforded to my user.

“Try to design the system to allow for errors. Realize the normal behavior isn’t always accurate. Design so that errors are easy to discover and corrections are possible.” -Donald Norman

“The designer shouldn’t think of a simple dichotomy between errors and correct behavior; rather, the entire interaction should be treated as a cooperative endeavor between person and machine, one in which misconceptions can arise on either side.” -Donald Norman (emphasis mine)

“Seven Principles for Transforming Difficult Tasks into Simple Ones

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

-Donald Norman

I’m looking forward to reading Emotional Design: Why We Love (or Hate) Everyday Things next.

What’s more Mr. Norman has a blog. Subscribed!

Update 12/1/2008: For more of my book reviews and to see what else is in my book library (i.e. just the business-related or software-related non-fiction therein), please visit my Books page.