Consistency is a seemingly simple principle: the design should match the expectations the users might have developed by interacting with similar products in similar situations.  Consistency is also one of the hardest design principles to apply right in practice because as soon as you try to use it, the question arises: "consistent with what?".

...continue reading "Consistency"

Great dishwasher, very quiet, too.  But once you close the door and start the cycle, you have no way of telling whether the washing is still in progress or finished:

...continue reading "Are the dishes clean yet?"

Visibility of system status is another core principle for designing successful interactive systems.  Simply put, the system needs to clearly communicate to the user what it is doing and what state it is in.  Visibility of system status was included among the original 10 Usability Heuristics for User Interface Design by Jakob Nielsen.

...continue reading "Visibility of System Status"

On Flickr, the user interface for adding a tag to an image is just a simple text box:

As a result, people make spelling mistakes entering their tags and do not even realize it.  Consequently, for easy to miss-spell concepts, like Massachusetts, the photos are scattered over many miss-spellings of the tag:

...continue reading "Tagging interface on Flickr still fails to prevent errors"

One of the original 10 Usability Heuristics for User Interface Design by Jakob Nielsen, error prevention is probably the most important design principle for everyday interactive systems: Better than tutorials or awesome error messages, your system should make it very unlikely that the user will ever commit an "error" in the first place.

...continue reading "Error Prevention"