Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

When I started in programming, there was a manual with a number of GUI guidelines. The input fields were color coded. For instance, a mandatory field would be yellow and an ordinary field would be white. If the input would not conform to the expected input or format, the field would be colored red. The reason was to prevent message boxes telling the user some input was wrong. Also, when any field was red, the [Accept] button would be disabled.

Ever since, I've been using message boxes only for crashes, debugging or when closing an application (save or not).

I am wondering which other uses the message box (or alert, or whatever) might have. I'm asking here because it is a design decision, not a programming decision.

share|improve this question
    
Is this in the browser, mobile, or desktop app? –  jonshariat Jul 27 '11 at 21:46
1  
From a GUI point of view that shouldn't matter, or should it? –  GUI Junkie Jul 27 '11 at 22:08
3  
Yes definitely. You should almost never user a message box on the web. While in an app its more acceptable. –  jonshariat Jul 27 '11 at 22:16
2  
@jonshariat: maybe more but not much... –  Marjan Venema Jul 28 '11 at 7:04
    
+1 I think the platform matters, and also the framework. –  Wolf Jun 18 at 10:30
add comment

3 Answers 3

up vote 5 down vote accepted

As per your tags, the point about a message box is that it is a modal dialog ( whether winforms or web ). This means that it should only be used when the need is to stop everything in that application and get some feedback from the user ( either by answering a question, or by clicking OK ). This is the only time it should be used.

Even on the web, the same applies - popup boxes should only be used when you need to stop everything else and get some insight from the user. Even though it is not enforced, the same concept should be applied.

For user input validation, it is not appropriate. It is even not appropriate in those cases where it is sometimes used as a serious warning - i.e. "Please note that by ticking this box you agree to us spamming you for ever". Handle user feedback with in-form messages. Handle critical, system stopping actions with message boxes.

share|improve this answer
    
Wizards are a form of popups that are generally accepted. –  Barfieldmv Aug 1 '11 at 14:14
add comment

An alert boxes have some drawbacks:

  • User interaction is blocked. Users are forced to provide an answer "right now".

  • Information is not contextual. The message provided is not visually attached to any element of the interface (e.g., in contrast to tooltips).

  • The information provided is very basic. Normally limited to text and an icon.

Depending on the case you could prioritize the use of non-blocking, contextual and structured feedback where possible. In case you need to call the attention of the user for a simple message that is urgent (cannot be postponed) and the user benefits from this (e.g., unsaved changes alert) you can use alerts.

New browsers such as chrome make use of non-blocking notifications for serious alerts (e.g., blocking the execution of java applets):

Chrome alerts

share|improve this answer
    
+1 The alert bar is very effective. It's non intrusive and lets you keep on doing whatever you were doing if you want to. –  Matt Rockwell Jul 28 '11 at 11:54
add comment

I'm not sure i understand the question correctly, but it seems like you are considering using alerts (or message boxes) to indicate there is an input error on forms.

If that is a correct reading of your question, these two articles might be helpful in deciding how to notify users of errors on forms.

Inline Validation on Web Forms and Forward Thinking Form Validation

(They both favor Inline Validation as the preferred alternative, and offer some methods to apply it).

Hope this helps.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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