Message boxes are dead

Jul 25 2008

Every one of us have experienced the bitter taste of a message box staring us at when we try to accomplish some task with our software. Message boxes are used to convey some information, usually thought as important information, to the user and ask him to act upon the information. For example, look at the screenshot:

Message box annoyance

What is the need of such a dialog box? The user wanted to add the information to the registry. That is exactly why he initiated the process, and now the application shocks the user with a message box accompanied by “ding” sound and blocks all other activities until he clicks OK button.

There are many versions of this UI irritants:

Message box asking question

(Update: My mistake. Getting a message box from registry editing was a wrong choice. I should have taken the screenshots from a simpler application. Many people in reddit are already bashing my idea. Registry editing is indeed very important process and alerting the user is necessary in very critical applications.)

Here are some reasons why I hate message boxes:

  1. They makes the user think and take a decision (users hate this).
  2. They block all other activities in the application or even the operating system until an action is taken.
  3. They are accompanied by weird sounds.
  4. They steal focus from what user is doing and this may lead to data loss in some situations.

So what are the alternatives?

First, Don’t make me think. Don’t ask questions. Just do whatever is appropriate at the moment. Don’t ask me if I want to save a file or not. Just save a version in my drafts folder. The next time I open the application, allow me to navigate and edit my drafts.

Second, don’t throw unwanted information at me in the form of message boxes. See how Gmail tells “Your message has been sent”:

Gmail status message

It gives the information without annoying me. Very good.

WordPress does this too.

Wordpress status message

Many great applications are adopting this strategy.

The time is ripe for you to do away with those nasty message boxes in your application.

18 responses so far

  • cmoi says:

    same thing for emacs and vim, no message boxes to be found. It’s part of the reason why they are such great editors i reckon.

  • TheAnand says:

    I love these kind of irritants when I am going around tweaking the OS registry or trying to do some mods to the core code. They usually ask me “Are you sure you want to continue with this craziness?!?!?”

    Makes me stop and think if i really want to do it. :) But a irritant like “Its done” is hopeless, i agree

  • Niyaz PK says:

    cmoi,
    Thanks for reminding.

    Anand,
    “Are you sure you want to continue with this craziness?!?!?” questions are needed only if the OS does not allow you to roll back your decision.

  • Jack says:

    So what’s the alternative for the registry import, considering you’re not loading the full application — silently import and only throw a dialog on an error, so you’re never actually certain it worked?

  • Niyaz PK says:

    Jack,
    Not exactly. Status messages as the ones shown in the screenshots above can be used. This should become the standard way of alerting the user in OSs.

  • asha says:

    Niyaz,

    very correct.i really get irritated of these msg boxes most of the times.
    Very few times it has helped me.wen we accidentally click delete n all..still as there s option to get it back it s not a prob..
    As u told it is time to do away with those nasty message boxes..

  • Niyaz PK says:

    Asha,
    Thanks for taking your time to comment.

  • F.Baube says:

    Firefox should do this when asking about storing cookies, simply to avoid the overhead of the dialog box show. Also FFox insists on _jumping_ to the tab that has the cookie request, which is _incredibly_irritating. Better would be, blink any tab that has a cookie request, and when you click on the tab, the cookie request is visible in a message area and the blink stops. This would be much _much_ less irritating than the damned thing always jumping to the cookie tab, and scrolling your current tab off the bar. It drives this tab junkie nuts.

  • Niyaz PK says:

    F.Baube,
    That is true. A similar thing happens with IE too when we try to load web pages with javascript.(especially Gmail). The tab is switched and we are in a different context. Oops!!!

  • Lucas says:

    One could argue that the second screenshot should get partial credit
    since it’s alerting the user to a potential security breech; it would
    get nearly full credit if it actually *mentioned* that fact.

    As for the rest, I’ve stolen the Google Mail convention of “status
    message with undo link” for my web applications (oddly, Google Calendar still used a message box, last I checked). A benefit not
    mentioned is that it stops training users to click “OK” or “Yes” in all
    message boxes by reflex.

  • Morgan says:

    I have always hated such message boxes. I think a better solution is something similar to the Windows Live Messenger “toast” (I believe that is what it is called, I am talking about the popup above the clock when a user signs in, etc.).

    It can give the user the information they need at a glance without stealing focus and gives them something to click on if they want/need to. You could even integrate option buttons easily and just keep the toast on screen until it is clicked but it is still out of the way and allowing the user to continue working.

    I believe the “ballon” prompts introduced in Windows 2000 (?) were sort of a replacement to information message boxes however they were too limited IMHO. I am unsure if their limitations have been addressed in Vista?

  • Binny V A says:

    Another nice thing from gmail – it takes the decision for you – and then ask if you want to ‘undo’ it. For example…
    The conversation was deleted. [Undo?]

    That’s a new idea – and it don’t need user input.

  • jim swanson says:

    I think you are mixing up ‘infrequently used critical system maintenance applications’ with ‘basic everyday web apps’, certainly in your example you are.

    You are quite wrong when it comes to registry importing. This is a rare process (how many .reg files do *you* import in a month? If the answer is ‘more than a few’, you need something other than regedit), quite important to the system (so yes, you should be asked to confirm it), and critical to know if it has succeeded or failed (hence the end-of-operation feedback). Furthermore, since regedit which does the importing is not usually running on a system, there is no place for the kind of asynchronous notification you are advocating. The only place I can think of that would make sense is a balloon dialog, which still doesn’t make much sense, as it adds another UI element to the system tray which is ephemeral and will vanish momentarily anyway. Better in this case to go with the message box, easily dismissed with a tap of the space bar or enter key.

  • Steven G. Harms says:

    As an email administrator, when I first read this I thought that the article was that mbox/RFC822 message boxes were dead ( and they, arguably, well may be ;) ).

  • Niyaz PK says:

    Morgan,
    The ‘toast’ is a great way to get rid of message boxes.

    Jim,
    My mistake. You are right. I have updated the post.

  • Spyware on IE 6 would use message boxes all the time into tricking people into downloading crazy stuff. Message boxes should be avoided if at all possible in any software.

  • Tess says:

    i’d call that “hieghts of user friendliness” :)

  • Mulkazarus says:

    2]Get your own Nintendo Wii
    The games console with one of the strangest names on the planet (it’s pronounced ‘wee’) is also one of the most innovative. In fact, with its potential to change the face of the gaming landscape, Wii may be on the verge of a new era, if you’ll pardon the pun.
    The $400 Wii package comprises a square white console unit and stand that plugs into your TV or AV receiver, a wireless sensor bar that connects to the console and receives wireless commands from the battery-powered paddle-style Wiimote controller. Basic composite cables are supplied, but if you have a plasma or LCD the $50 component cable options will deliver better picture quality. The console also supports an SD slot, USB port and a DVD drive for games.
    Games data can be saved to SD memory cards, which weren’t officially released at the time of publication, but in lieu of their arrival, GameCube memory cards will suffice. The USB port can’t be used to save games either, but will enable future hardware upgrades such as a hard drive or DVD player, although no announcements have been made to this effect.
    Despite its DVD drive, the console is not a DVD player (a modification chip is required if you want to watch movies). Nor is it the high definition, hard drive-toting, networked multimedia online multiplayer gaming machine that is the Xbox 360 or forthcoming Playstation 3. Instead, it presents as the most affordable ‘next generation’ games machine available and, certainly, lacks for no important ingredients if you want to have fun.

Leave a Reply