I was writing some error/warning messages a while ago, for an application I am developing, and I was thinking - what "voice" do you write software text in, in general?
There's several different categories of text that is included with software packages, including:
- Interface text - very small amounts of text like "OK", "Cancel", "Title:", "n results found", etc.
- Messages - including errors and warnings, such as "You have entered an invalid query.", "Unable to process the file.", etc.
- Code documentation - "Returns the number of rows returned by the query.", "Creates a new top-level window."
- End-user documentation (help!) - "To change the database password, select 'change password' from the file menu. Then enter the current (old) password and the one you wish to change it to."
My question is: what voice should you use when writing text for different areas of software? Would you phrase an error message such as:
- "Please enter a search query."
- "You have not entered a search query."
- "No search query entered."
- "You have entered an incorrect < something >. Please try again."
Do you address the user directly? Do you nicely ask them to try a different approach? ("please try again", "please enter an phrase without any numeric characters")
Personally, I tend to phrase messages so that they address the user and sometimes offer advice at the end "please do some action". I'm a bit inconsistent on that front (A Bad Thing), so I'd especially like to hear your opinions on this one. With code documentation I always use a non-addressing current tense voice, such as "Creates a new dialog with the specified title." and help documentation is written as if the manual is speaking to the reader.
Since this is a highly subjective question I've marked it community wiki. I'm very interested on what rules and guidelines you or your organization uses when writing text, messages and forms of documentation for your software.
If any part of my question is unclear, I'm sure you'll let me know, and I'll be sure to fix it. ;)