Gloria Gery once told me that all systems training is compensatory for poor design.  In other words, if the design is perfect, no training is needed.

"Just remember: you're not a 'dummy,' no matter what those computer books claim. The real dummies are the people who–though technically expert–couldn't design hardware and software that's usable by normal consumers if their lives depended upon it." - (Walter Mossberg)

This thought has stuck with me as I've designed every increasingly complex systems.  I've decided I agree with her, and that it's not a bad thing.

A constant among psychology and instructional design classes is Maslow's hierarchy of needs. Whether you agree with the criticisms of Wahba and Bridgewell or not, Maslow's theory still provides a valuable framework for describing and evaluating individual motivations.  The notions of hierarchical needs wherein one set of needs must be satisfied before the next set can be prioritized can be applied to system design as well, and is described by the blatant ripoff, er, homage, Elsbernd's Hierarcy of System Needs.

"When two or more explanations exist, the simplest one is probably true." - Occam's Razor - William Occam

Sometimes said as "When you hear hoofbeats, don't start looking for zebras," the actual quote is "Entities must not be multiplied beyond what is necessary," but this seems unnecessarily (and ironically) complicated. The sentiment, however, brings us back to simplification. Great design is not the result of nothing more to add, but nothing more to take away.

If we can equally implement a function with different controls, the one that is more common, generally accepted or more easily manipulated is the best choice. We cannot focus on the "gee-whiz" technology so much that instead of helping us simplify our jobs it makes them more difficult or complicated.

"The time to acquire a target is a function of the proximity and size of the target." - Fitt's Law

This is a generally known principle in physical activity. The larger the target is, and the closer it is to where you start, the easier it is to find. That's not rocket science.

This law can also be applied to interface design.

  • Making the desired task flow clear and prominent will help the user identify the next steps and encourage the appropriate behavior.
  • Making exceptions and tangential information smaller and isolating them will reduce the likelihood of error.