go ahead, mac my day

a Macintosh girl in a Microsoft world

the arcane craft of writing error messages

the arcane craft of writing error messages

Rate This
  • Comments 19

Let me put forth an axiom: software development is hard. It's not just the coding bits that are hard -- they are, don't get me wrong, it's just that coding isn't the only thing that's hard about software development. There's more to software development than the coding, which is why software development has a bevy of non-coders working on the software.

One of the things that's surprisingly difficult about software development is crafting the error messages. (A second axiom, since I'm feeling axiomatic today: Software has bugs and unexpected problems that it can't handle on its own.) Error messages are so notiously bad that we make jokes about them, write error messages in haiku, and allow you to generate your own.

I've been reminded of how difficult it is to write good error messages a couple of times last week. I reviewed the error messages for RDC v2, which has its own challenges inherent in writing its error messages. Just think of all of the reasons that you might not be able to connect from your Mac to a Windows box, and figure out how to document them in a way such that the user can do something about it (if, in fact, there is something that the user can do). I really don't envy our user assistance team.

In the middle of that review, I've been using Pandora lately. I haven't been keeping music or podcasts on my work laptop (that's all been moved over to my Mac Mini in my office, since people seem to like my shared iTunes library), but I need something to listen to when I'm on the road. Pandora to the rescue. The problem with Pandora is that it requires a solid Internet connection, and my last hotel gave me anything but a stable Internet link. So when it ran into problems when I asked it to add another artist to my newest Pandora station, it gave me the following error message:

I'm sorry, I had a small problem while looking for that music. It's my fault.
[try again]

I actually exclaimed, 'oooh!' out loud. I felt bad for the app, felt guilty for making it think that it was the app's fault. What a great error message! I didn't get upset or frustrated. For an app like this, the tone is just right. They don't need formal-sounding error messages, it's a nice little casual app, and friendliness is important for it.

So what's important in writing error messages? Don't tell the user that error 448115490235 just happened or that some generic system error happened, tell them the actual problem. Even better, tell them what they can do to try to fix it or at least troubleshoot the problem. Use the right words and a tone that's appropriate for your audience.

This all sounds easy enough, but it turns out it's not. Software engineers are notoriously bad at this kind of thing (nothing against you code monkeys out there!), which is why there's so many really bad error messages out there. Kudos to the Pandora folks for doing a pretty good job of it.

Comments
Page 1 of 2 (19 items) 12