Username or EmailPassword
Programmers believe in God? I thought they were the sensible ones.
The two are not mutually exclusive.
Without wanting to be a smartass: Modal dialogues aren't just used to display the all too often badly designed confirmation messages. They are a very valid and important type of dialogue to get the undivided attention from a user for the duration of an important task. Or to create powerful interfaces for trained users.
But the comic wouldn't be fun anymore with that information included
I did just die a little inside when I read your comment, but uhm, you might want to obscure the patient information in those shots... That's confidential information, you know .
Maybe modal dialogs are redundant on many occasions,
but I believe they have their use cases.
For example, how would you issue a warning about
leaving a secure connection, on a web browser?
Sometimes, it is intentional to annoy the user,
or otherwise you might be making too many choices
In The Humane Interface, Jef suggests a translucent overlay with the message that is dismissed if the user keeps typing, but can easily be retrieved in some way. This lets the user know that the computer wants to tell them something, but does not force them to break focus.
I recently ran into a problem on a Vista system with what I think is probably a non-modal dialog box. The problem was the dialogs failure to take the focus, it just appeared on the taskbar and wasn't noticed for a minute or so. I only noticed it because the application was taking longer than it should to do its operation.
The dialog was actually a windows warning message that pops up that warns you when you're going to do something major like using an app that needs elevated permissions. These dialogs are supposed to pop up and pause everything and make everything else dark to get your attention. However, several times it failed to do so when the windows tuning app called regedit. I had to click on its listing on the taskbar and never clicked on the tuning app at any time.
In summary, non-modal dialogs can be accidentally missed because of not gaining the focus all the time and that is not good if the information is important or somebody doesn't expect there to be any warnings with an action (such as in my story above, I didn't expect anything because it was my first experience with Vista.) And yes I noticed, after I discovered the dialog for the first time that all later appearances it blinked in the taskbar when it first appeared, but if the person wasn't expecting it or weren't at their computer, it would never have been noticed. Edited 2008-02-09 19:49 UTC
Thanks for the explanation of UAC, as I've never used Vista before, I didn't fully understand. However the point of important non-modal dialogs getting accidentally missed is still appropriate although my example wasn't the most accurate.
Agreed. I think there is definitely a place for modal dialogues. Occasionally an issue occurs which, until it is resolved, it is not appropriate for the user to continue.
The "You have unsaved changes" dialogue is a classic example, and one that has become totally ingrained into my workflow.
I only noticed this when Vista changed the traditional "Yes"-"No"-"Cancel" dialogue with *NIX-like "Save"-"Don't Save"-"Cancel", and I discovered that my usual trick of pressing 'Y' for Yes no longer worked.
I know why they've done it. The new dialogue makes it more likely that a user will be aware of what they are doing when they click "Don't Save", still annoying though. But I digress.
Anyhow, point is, when something drastic happens and I could lose data. I want that message to be modal. Edited 2008-02-11 01:47 UTC
Remember the words focus shift?
Not really working is it?
May I suggest you make your comics more abstract so that they don't warrant serious replies.
If you left the mac specific out of this for example you couldn't possibly debate it seriously.
I didn't want to imply that you don't know your way around usability terms. I just wanted to point out (as some others have done since my comment), that modal dialogs are a valid tool for designing user interfaces. It's just the use case that matters, your target audience.
When you design an application, let's say a word processor, targeted at the untrained or average user. He/She wants to close an unsaved document - a modal dialog is the best way to prevent data loss AND make the user aware of it. The alternatives, like displaying a message "You are discarding data, repeat your action to confirm", can be overlooked or ignored.
The other case, an application clearly intended for a high productivity, highly trained user base - they shouldn't see any modal dialoges, thats for sure. They'd interrupt their work, get on their nerves and wouldn't prevent anything bad because these users *know* what they are doing.
It's virtually impossible to create a GUI that fits both, the highly trained AND the novice user. Either some of the user base has to adjust or the UI should be configurable - novice/export mode, show warnings yes/no, whatever.
The Apple Mac GUI (no flame wars, please) is a better example of this. You seldom see unnecessary modal dialogs to just confirm operations. But when you're about to really destroy something or abort/start something important, then there's the dialog warning you about it. IMHO that's the right way, use the modal dialog for the really important stuff and for the rest, find alternatives. Undo, for example. Check Google Mail: "You delete the message xyz. Undo".
Usability is not black or white. Heck, it's not just a, b, c or d. It's about compromises, your user base(es) / target audience and the environment your software runs in. And probably many more things.
Just because modal dialogs are badly used doesn't mean they aren't useful in some situations, particularly when the user is about to do something destructive. There are times when you want to be certain that the user has been notified i.e. closing a window with unsaved information, overwriting a file, closing multiple windows in an application, and a modal dialog is the simplest, most direct way to do that.
Yes you could use a non-modal dialog, but those can get lost in the clutter if you have many windows open. You could design another system to replace modals with pop-ups/overlays/warning badges/sounds or even go so far as to make every window close undo-able, but that seems more like you're jumping through hoops just so you can say you don't use modals. A good designer/programmer knows when to use the tools at hand.
Then there's something destructive, don't show modal. Instead, provide and Undo function to revert the destructive operation.
Like formatting the hard drive right? Oh wait...
That doesn't need to be modal. The "are you absolutely sure you want to format your hard drive" dialog does not mean that it has to prevent other interaction with the program. (Just because it's a confirmation dialog doesn't mean it's modal.)
Now that's funny. Congrats!
"Do you want to not save your document"
Yes? No? I dunno!
I don't think the dialog being modal is the main problem here...
I don't like coffee anyway.
every time you create a modal dialog...
one cup of coffee >> /dev/null