Latest Post

Usability in Programming

I was setting up a user for a site that was still in development. The setup page had a password field, and when I put one in, an error message popped up: “Invalid password.”

Invalid password why? Was the password too long? Did it use disallowed characters? The error message gave me no indication of what the problem was nor any idea how to fix it, save guessing an unknowable number of times. Needless to say, I sent it back to the original programmer with these tips:

  1. Give friendly and clear explanations on errors to users and how to resolve them.
  2. The better option than restricting a field is to be flexible in the input and provide warnings, rather than block inputs altogether. For instance, many sites will give you a rating of password strength (low, medium, high), rather than enforce a particular pattern. Similarly, it’s greater usability to allow me to type in my birth date in whatever format I choose rather than force me to choose from multiple drop-down boxes.

In other words, don’t make me think.

In other news