Research from 2009* has shown that error messages increase cortisol (the stress hormone) levels in individuals when they were interacting with computers that faced a system breakdown. Our error messages are physically harming individuals; we have a responsibility to consider the UX as to not affect our users health. This has been illustrated before by Jennifer Aldrich of User Experience Rocks before, and good error messages are particularly important as they:
Increase speed of use;
Increase users subjective satisfaction; and,
Reduce repeat errors and complaints
UX and Error Messages: Stop Scaring Your Users by Jennifer Aldrich @ Userexperiencesrocks.com
So, how do you make good error messages?
Do's
Be explicit and indicate something has gone wrong
Be polite
Include message on same screen as where the error occurred
Include the product or component name. This helps the user determine where the problem is
Make error messages as short as possible while communicating all needed information- or concise but precise
Explain how to fix the error
Use the users language
Use the correct combination of buttons
e.g. if you say "Would you like to" the options are Yes/No not ok/cancel/retry
Don'ts
Write like ‘a programmer’ - No Jargon!
Blame the user
Imply the error is users fault
E.g. “illegal command”
Over-communicate the problem
Give unnecessary error messages
Include the word "error" in the title bar
Use vague generalities such as "syntax error"
Use words like “access denied”
Use all caps for any word in the error message
Use exclamation marks (!) in the messages
Give multiple reasons for the error - the user won't know what to fix
Illustration using hilarious examples from the interwebs
Didn't find any what exactly?
Include the product / component name in the message to help the user determine where the problem in.
An error occurred? No. It didn't - don't believe you.
Use the correct combination of buttons to the statement in the message.
OK. Click OK to ok. OK?
Make error messages as short as possible while communicating all needed information
oh....kay. Mutated. Enumerated?
Don't write like ‘a programmer’ - No Jargon!
Ok, so now what do I do?
Explain how to fix the error.
Let's make better error messages, and user test them, so that we don't increase stress in our already stressful modern lives.
* RIEDL, R; et al. Technostress aus einer neurobiologischen Perspektive. (German). : Technostress from a Neurobiological Perspective. (English). Wirtschaftsinformatik -- Zeitschrift Der Angewandten Informatik. 54, 2, 59, Apr. 2012. ISSN: 09376429.

