22

When writing an error prompt, should we end the sentence with a exclamation mark or a dot?

I am writing an application for iPhone and I have some error prompt in my application like "Your password must be 8 character long with alphanumeric characters!" However, I am not completely sold on the idea of putting an exclamation mark (!) on error prompt. Are there situation where it might be warranted, and what about just replacing exclamation marks with dots? Is there a sort of standard among programmers?

  • 8
    Apple's Human Interface Guidelines: developer.apple.com/design/human-interface-guidelines/ios/views/… – Adam J Limbert May 31 at 2:09
  • 5
    @Shadowzee: obligatory xckd – Zeus May 31 at 3:29
  • 9
    User Experience might be a better place for a question like this. – Barmar May 31 at 14:42
  • 8
    @Shadowzee - please don't consider terrible password advice like "shorter than 32 characters" or "must contain four different types of character" or "reset once a year with no repeats" to be the standard. It's not 2004 any more. – BittermanAndy May 31 at 23:51
  • 7
    "Your password must be 8 character long with alphanumeric characters!" -- Why?!? I get the minimum length, but do NOT tell me what my password should look like. Every constraint you add beyond a minimum length reduces the amount of work needed to brute force it. And in this specific case, there's a good chance you'll be rejecting valid alphanumeric characters because of your Regex fails match character sets in other languages. – Denis de Bernardy Jun 1 at 6:10
44

In a technical manual or documentation or anything similar, you wouldn't put emotion into the text. The only reasons to use an exclamation point are to convey strong emotion or a serious warning.

"Your password doesn't meet the criteria" isn't a dangerous situation. There's no need to use anything but a straightforward and calm voice. Just like you would if you were sitting next to someone in person trying to help them set up their app.

I would only use a exclamation point in an error message if there was something very important going on. Either an outright safety issue or the user was about to delete all their data. Unless you're writing an app that's supposed to sound like a person and be all folksy (and please just don't), you wouldn't speak like a person does, with emotion.

The primary purpose of punctuation in messages from an app is readability. Use a period. A period tells the user that your message is now over. Ellipses imply there is more to come, which isn't the case here.

  • 25
    +1 "please just don't"!!!111 – Zeus May 31 at 3:32
  • 2
    If things in a manual or an on screen message are important or safety critical, use an icon (like a road-sign type warning triangle) in the margin consistently throughout the document. Don't rely on punctuation marks. – alephzero Jun 2 at 20:05
22

No, you don't need an exclamation mark. Particularly in English. Nor ellipsis (...) or anything special. It's a simple statement in every sense. In fact, if it's displayed in a standalone box, you could even omit any stop rather than put something unnecessarily flamboyant!!!

Warning! This is an example where it might be warranted, but a colon (:) is still better.

14

Don't make your program make a mountain out of a molehill

If I see a program show an error message with an exclamation mark at the end, I am either going to assume that something is seriously wrong, or start doubting the honesty of the message. Ordinary "user did something the program doesn't handle" errors, like the one you are asking about, do not qualify in this category, nor do error messages generated from transient or temporary external conditions. Even an error message that's indicative of the programmer having made a boneheaded mistake probably doesn't qualify for an exclamation point; the program-killing results of a bonehead exception are emphasis enough.

So, when is using the exclamation point the correct route to take? If your application is returning an error that needs imminent user action to avoid serious consequences (such as data loss, or worse), then my first course of action would be to design the issue out. However, if that's not possible, then such a heavily emphasized error may be appropriate, in conjunction with the strongest iconography that the system provides. Another case where I would end an error message with an exclamation point is in programmer-facing errors where your code has been placed into a truly impossible situation by something that's beyond a normal mistake, but reflects a failure of a fundamental assumption about the world your program is living in.

8

I use the blithering idiot test.

Only end an error message with an exclamation mark if the punctuation mark could reasonably be replaced with the phrase "you blithering idiot!"

For example, "this will turn off the life support systems and kill everyone you blithering idiot! Do you wish to continue?" Or "You have entered the wrong password fifteen times in the last ten minutes!"

As an end user, an error message with an exclamation mark feels insulting and so it should only be used in extreme cases. It's ok to use an exclamation mark icon for errors though (c.f. Microsoft Windows).

  • 2
    The exclamation icon was never for errors in Microsoft's UI model; it's for warnings ("a condition that might cause a problem in the future"). Compare docs.microsoft.com/en-us/windows/desktop/uxguide/vis-std-icons and docs.microsoft.com/en-us/dotnet/api/… -- Note that "Exclamation" is also "Warning" with numerical value 48, while "Error" is numerical value 16. The design of the icons has changed over the years, but the concept has been there at least since Windows 3.1-ish in the early 1990s. (Definitely before Windows 95.) – a CVn Jun 1 at 11:16
  • @a CVN you're right. I obviously haven't made enough windows errors recently - or made so many that I no longer notice the icon. There's also the set of very small icons for field errors. The point I was trying to make was that exclamation icons have a different meaning to exclamation marks in text. – MZB Jun 1 at 11:53
7

I've been a professional programmer for 40 years, I've written everything from operating systems to business app code to games, and I never use an exclamation point in business or OS code. Ever. Nor ellipsis, why would an error or warning message trail off? Or express any emotion? I use periods, just in case multiple messages are emitted; so they won't run together and be confusing.

The only time emotion is appropriate is if the "error" is being delivered by a character or automated narrator within a game as "speech", e.g. "You have no troops in Seattle, General!"

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.