Skip to content

Instantly share code, notes, and snippets.

@jmealo
Last active August 29, 2015 14:00
Show Gist options
  • Save jmealo/b94f34b037d53bffb31b to your computer and use it in GitHub Desktop.
Save jmealo/b94f34b037d53bffb31b to your computer and use it in GitHub Desktop.

Errors

All error messages should answer:

  • What went wrong.
  • What to do next.

Errors requiring escalation need:

  • Error logging that provides engineering, support and development pertinent information.
  • An error code that the user can provide to support.

CRUD errors indicate:

  • The state of the requested action.
    “Your order was not created.”
  • Whether or not to try refreshing the page.

Guidelines

When providing the cause and remediation steps for an error, consider this:

The Cookie Causality Conundrum
A user with cookies disabled tries to login to a site that requires cookies and gets the following error:
Invalid username or password. Please try again.
Not only is their username or password not the issue, trying again will not solve the problem. The user is now stuck in an infinite loop without any cookies to eat.

Be hyper-vigilant about spelling and gramatical errors.
Typos in error messages give the impression that the product is of poor quality and that the programmers are: outsourced, incompetent, or the cause of the error.

Users will paraphrase error messages:
If two unique errors are similarly worded it’s difficult for support to diagnose the issue.

Use the same error message for the same error condition.
Do not use File not found in one place and Couldn't find file in another.

Be nice
Don't blame the user!

Avoid ambiguity – don't make me think.
Abort, Retry, Fail?

FAA Error Guidelines

  • Be as specific and precise as possible.
  • Be positive: Avoid condemnation.
  • Be constructive: Tell the user what needs to be done.
  • Be consistent in grammar, terminology, and abbreviations.
  • Use user-centered phrasing.
  • Use consistent display format.
  • Test the usability of error messages.
  • Try to reduce or eliminate the need for error messages.

Source: Federal Aviation Administration

Resources

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment