Because I am both a technical writer and a software tester, one of my pet peeves is an interface that falls apart when it needs to communicate anything to the user. On every project I see code instead of text, poor grammar and spelling, ALL CAPS, odd choices of punctuation marks and a great many other sins against language. But the most basic mistake is simply not to understand that it’s okay to talk to the users in clear, simple language.
Yes, it’s okay to address the users directly and say “You can change your settings at any time”. It’s much better than “Settings can be changed at any time” or “Setting changes can be performed at any time”. And yes, you should let users talk back in the first person: “Save my file” and “Change my password”. Try to avoid using the second person and never use the third person. Where you need their input, ask them a clear question and provide clear options for answers.
Don’t be formal or evasive, be friendly and polite. If you’re making the users work hard or wait, use the magic word. If you’ve encountered an error or are about to crash, say sorry. And although you should, in general, use the active rather than the passive voice, revert to passive if you think the active can be considered aggressive; users often don’t like being told they’ve made a mess of something, and a passive construction sounds like you’re sharing the blame.
Be generous with information, especially error information. There is nothing more frustrating than an obstinate computer. Explain the problem, offer solutions, admit when there are none. Don’t talk down to users in these explanations, but don’t spew technobabble at them, either. And if you run into an error message that is in pure code, that programmer owes you a pint.
Being polite and friendly is quite simple – don’t be rude, don’t be stuffy. The next article will be about making UI texts helpful, which is a little more complicated.