Slashdot Mirror


How Do You Get Users To Read Error Messages?

A BOFH writes "The longer I do desktop support, the more it becomes obvious that my users don't read anything that appears on their screen. Instead, they memorize a series of buttons to press to get whatever result they want and if anything unexpected happens, they're completely lost. Error logs help a lot, but they have their limits. I've been toying with a few ideas, but I don't know if any of them will work and I was hoping my fellow Slashdotters could point me in the right direction. For example, I was thinking about creating icons or logos to identify specific errors. They might not remember that an error is about 'uninitialized data' but they might be more able to remember that they got the 'puppy error' if I showed a puppy picture next to the error message. Or for times when finding images is too time consuming, you could create simple logos from letters, numbers, symbols, colors, or shapes, so you could have the 'red 5' error or 'blue square' error (or any combination of those elements). I've even wondered if it would be possible to expand that to cover the other senses, for example, playing a unique sound with the error. Unfortunately, haptic and olfactory feedback aren't readily available. I like to think that my users would remember the error that caused them to get a swift kick in the balls. And if they forgot it anyhow, I could always help them reproduce it. Does anyone else have experience with ideas like these? Did it work?"

10 of 951 comments (clear)

  1. Waste of time. by Rogerborg · · Score: 5, Insightful

    Do yourself a favour and produce a one-click tool that collects all the info that you need (logfiles, version numbers, registry listings) and sends it to you. If you can make it 0-click, even better.

    --
    If you were blocking sigs, you wouldn't have to read this.
  2. Similar setup as me. by B5_geek · · Score: 5, Insightful

    I had done something very similar, but I kept it very simple for troubleshooting.
    3 colours: red, amber, green
    3 shapes: circle, square, triangle

    Another idea I was toying with was to substitute traffic signs: ie. stop, yield, caution, etc.. but I found that people are used to ignoring those.

    With my setup, it gave me 9 distinct error levels (more if I used them in combination), but 9 was good enough for me to track down most problems.
    Shapes:
    Circle - Bad Input (i.e. data field entry)
    Square - Bad Output (i.e. printer jam)
    Triangle - Back-end (db/php/html, etc..)
    Red, amber, Green = error levels

    --
    "The price good men pay for indifference to public affairs is to be ruled by evil men." ~Plato (427-347 BC)
  3. If clicking the OK box makes the error go away... by 91degrees · · Score: 5, Insightful

    It's not an error. Errors prevent you from continuing. The only thing approaching an error is the little box telling you there's a problem. That is solved by the user clicking "OK".

    The entire way errors are handled is wrong. I don't know what the solution is but I very much doubt it's a simple modification to the current fundamentally flawed system.

  4. Save your sanity, give up now by snspdaarf · · Score: 5, Insightful

    I have been wondering about this for 30 years. End users are not interested in learning how the computer software works, except for how it lets them do their job. On-screen messages, manuals, fax-back systems, wiki pages, they don't care. What they want is to pick up the phone, make a call, and have someone tell them what to do. At first, I thought it was them being lazy. However, I now think it is closer to why programmers don't like to be interrupted in the middle of a task. The user has a mental model built up of their task, and they don't want to risk losing it while they search for information on an error. Making a phone call, and having someone else walk them through the problem solving means they can maintain their task in "main memory". For them, it is more efficient.

    --
    Why, without your clothes, you're naked, Miss Dudley!
  5. Guru Meditation by mrybczyn · · Score: 5, Insightful

    Amiga had this right. Use a little humor with your messages, it may diffuse the anger and get some sympathy.

  6. Re:Make the error memorable by Daniel_Staal · · Score: 5, Insightful

    As a corrallary: Reduce the number of errors/confirmation dialogs they see on a regular basis. If they regularly have to click-past dialogs, they get trained to do that without reading them. If the presence of a dialog means 'call helpdesk, and read the dialog to them', they are more likely to pay attention to it.

    Make seeing a dialog an exceptional case, not a normal case.

    --
    'Sensible' is a curse word.
  7. Re:Make it turn the volume up by del_diablo · · Score: 5, Insightful

    It does not work that way, NEVER! BECAUSE all damn apps are just random hex dumps of errors. When i started using Linux i was in for a major surprise: No annoying random popups, and all apps would actually GIVE me actual errors such as "can't find libPORN.h" or "Does not have acces", or similar. The point is that Windows users by default have seen to many popups, and too many of the errors where JUST a gigantic bunch of a hex dump without any real message. Now, instead of trying to get the people to read it, get a underlaying system to Email you the errors instead. Because you shall NEVER bother the end users unless its a good thing.

  8. Re:Fixed Penalty by Jenming · · Score: 5, Insightful

    I am not really sure what you accomplish by disabling the software for 15 minutes. It sounds to me that if the person ignores your error message they get a 15 minute break.

    One thing IT people often forget is that their job is to make the other employee's jobs easier and more productive. This means solving problems without getting in the way of the work that actually makes the company money.

    --
    Morpheus, God of Dreams.
  9. Re:Do away with them by radtea · · Score: 5, Insightful

    There should be no errors. Period. Your program should not allow errors.

    So what is a program supposed to do when the hardware it talks to fails or is not plugged in? Or when the network resource it requires is not available? Shuffle its feet and hem and haw and hope the user won't notice?

    Anyone who says "there should be no errors" doesn't know how the word "error" is used in computing. That there should be no BUGS may be a formally realizable goal (at least that's what my functional programmer friends tell me) but let me ask you: when was the last time you drove a car that had no error notifications on the dashboard? No idiot lights, no oil pressure gauge, no fuel gauge, nothing but a speedometer?

    Never, right? That's because all machines have a physical component whose state is sometimes unable to fulfill user requirements, and we need to communicate that state to users. We call those communications "error messages" in the software world, and they cover everything from "out of memory" to "printer on fire."

    On another note, I like the ball-kicking idea, but my users are mostly female, so it won't work. Recently I've had a bunch of complaints about missing hardware because they are clicking through the dialog that detects that hardware is missing, and then complaining when the main UI comes up and tells them there is no hardware connected. They never remember they've clicked through because they are so used to simply clicking OK on any dialog that comes up, a phenomenon that has gotten much worse in the past few years.

    --
    Blasphemy is a human right. Blasphemophobia kills.
  10. Re:Electric Shock by Hotawa+Hawk-eye · · Score: 5, Insightful

    Absolutely. Asking the right questions the right way is key. For example, rather than asking if anything is on the screen (a yes/no question, doesn't require as much thought), you ask "What does the screen show right now?" (which actually requires some thought.)