Those have always bugged me in Internet Explorer. "Disable Script Debugging." Why not call it "Enable Script Debugging" and just set the default to False? It’s like they went out of the way to call the option "Disable" and set the default to True. Didn’t get fixed in IE7, either.

I like the opposite instead; or, I prefer that all check boxes be "unchecked" at their default value. That way I can spot on the fly which values have changed from the default (for whatever reason).

Anyway (apart from the fact that I don’t find nots confusing at all) opposite verbs can be used to reformulate the checkbox text (like "Hide extensions" instead of "Don’t show extensions"). Sometimes however it’s not feasible ("Hide this message next time" is not as effective, plus some verbs do not have an opposite).

The other "goodie" Thank You Redmond is the radio button in the list box from File Explorer, Tools|Folder Options dialog, View tab. Rather than a simple checkbox for Show hidden files and folders (as the majority of the other options are listed), it was switched to a radio button. This helps convolute and confuse even more.

I love Windows, but I also think MS has done alot of incredibly obscure and confusing things like this.

i prefer the "Always show me this message" checkbox, but it goes against what’s been there for years, and even I find myself misreading it an accidently checking it when I don’t want to, thinking it’s a "don’t show…"

Raymond, I noticed the edit in the nitpicker’s corner, and I liked the earlier language better: "No need to call out examples." By using a negative construction you invited readers to demonstrate your point that that they would not understand it.

Until you changed it, I thought it was deliberate and brilliantly ironic.

Agreed! Negative checkboxes, especially when mixed with positive ones, makes navigating them that much harder. The only time mixed-logic checkboxes are useful is when all the defaults are on or off – and then it’s easy to tell which settings aren’t the default.

Some folks find it less clear cut than the checkbox situation, but I take issue with certain Yes/No confirmation dialogues that are backwards. Lots of programs from lots of vendors set this up so that when asking the user to think twice before doing something irreversible they have to think a third time to determine whether it is a positive or negative acknowledgement.

This is wrong:

Yes – I changed my mind and want to do something else.

No – I meant I want to do what I said.

This is better:

Yes – Go ahead, that is what I meant.

No – Stop, I did not mean to do that.

This is best:

Ok – Go ahead, that is what I meant.

Cancel – Stop, I did not mean to do that.

Worst of all is the Yes/No/Cancel with a long paragraph explaining the choices. Even the experienced user who knows what s/he is doing has to stop and figure it out.

changing the text next to the check box every time you clicked on the check box.

I was about to mention that. I find it really confusing; much more so than negatives as it’s hard to know which convention the program is using until you click the option a few times.

Process Monitor (RegMon/FileMon) is one example of a very good program which does this with its toolbar icons. The icons change to indicate what’s happening (or is it what will happen when clicked? I can’t remember) but they also indent when "active" which adds to the confusion.

Philosophically speaking, am I disabling the option to show known file extensions or am I enabling the option to hide known file extensions? I think this is kind of like a frame-of-reference thing. Does the Earth revolve around the Sun or is it the other way around? There is no way to know for sure because there is no absolute frame of reference to measure from. So we use whatever frame of reference is convienent for measuring purposes. I.e. the orbit of a planet around the Sun is best measured relative to the Sun while the distance of a planet from Earth is best measured relative to Earth. Maybe Microsoft should release "Pessimistic" and "Optimistic" versions of Windows. In the Pessimistic version all checkboxes have labels like "Disable this", "Don’t do that", etc, while the Optimistic version has checkbox labels like "Enable this", "Do that", etc. Also, I can’t wait for Windows Feng Shui Edition. The desktop icons, Start Menu, drive letters, etc will be arranged in such a way as to best channel your creative energy! Not to get too off-topic, but I’ve always thought it would be interesting if Windows rearranged all of your desktop icons and Start Menu entries on every boot.

Just for fun, the next version of Word should ask when closing: "Do you want to discard changes?" ;)

Slightly off topic, but since they’ve already been mentioned, I think yes/no and ok/cancel dialogs are a bad idea to begin with. Without context you can’t know what the buttons do and as we’ve already see, the dialog text can be converse from what you expect. It’s better to use buttons with things like "Save" and "Don’t save". MacOS has long been better in this regard, but Vista is finally starting to do this in some places too.

I’m inferring Raymond believes that exceptions to the rule (text should be phrased in the positive) are examples of Bad UI; Thenh acknowledging that Microsoft produces bad UI.

Raymond does call out the ‘don’t show me this dialog again’ as an exception without justifying it. I agree with Bliiinky’s comment that this should also align with phrased in the positive – “Always show this dialog at start-up’ pre-checked.

There is a wealth of research in psychology indicating that positive statements can be more quickly ‘processed’ by humans (understood) than negative statements and don’t ask about double negatives…

[The exception comes from the Windows Vista User Experience Guidelines. I didn’t make it up. (Personally, I believe that “Always show” is better, but I’m not a user interface researcher so what do I know.) -Raymond]

I like the "Task Dialog" thingys in Vista as well. Taking the example Ben mentioned:

(radiobutton) Yes, I no longer want these files to be available offline.

(radiobutton) No, I would like these files to continue to be available offline.

[OK] [Cancel]

This would be converted to:

(command button) Yes, I no longer want these files to be available offline.

(command button) No, I would like these files to continue to be available offline.

(for those that haven’t used vista, it basically means the options themselves turn into big buttons that you can click on, rather than selecting the option as a radio button, then clicking "OK" (or is it "cancel"?))

Help tips which go "clearing this checkbox allows you to…" are another bugbear of mine.

The default of a checkbox (as we are used to, from paper documents at least) is cleared.

I feel that the user’s action, if any, should be to set it. In doing so, they’ll do what the label says. If the checkboxes are set by default, the used will have to clear it to do something, and they have to mentally flip the meaning of the label to know what their action is doing.

So in a defaulting-to-checked case such as (from the User Experience guidelines Raymond linked to)

"[X] Hide modes that this monitor cannot display

Clearing this check box allows you to…"

…might be better phrased:

"[ ] Show modes that this monitor cannot display

This check box allows you to…"

But, I am also not a user interface researcher, so what do I not know?

(The only exception to the "no negative checkboxes" rule is the "don’t show me this message again" checkbox.)

I think this is too strict. I agree that ‘Use Feature X’ is better than ‘Turn off Feature X’, but that exception should not be the only one. In fact, I think there’s a rule for the exception:

If the feature itself has a negative phrase, it’s OK.

In ‘Don’t show this message’, not showing the message is the feature.

We have a ‘Do not allow multiple instances’ checkbox in one of our MDI apps, and again the feature is not allowing multiple instances. (Allowing them, or making them possible, is a feature too, but it’s a feature of OS, not our applications)

Some features are inherently phrased negatively, they should be allowed.

But then who decides what the feature is? Is ‘showing unsupported modes’ the feature, or, hiding them? Is the feature ‘showing the message’ or is it ‘not showing the message’? I think application designer should decide that.

‘Only positively phrased’ checkboxes can be a good rule of thumb, but if you stick to it strictly, you’d be over simplifying the universe. People can get negative phrases too…

As I see it, it’s probably a good idea to use positive wording unless the user would have a strong negative reaction to the item.

For example, some dialog box pops up in my face, stealing focus as I’m typing to tell me that I don’t have the correct font installed. I don’t care, I just want that dialog box to go away and stay away. Now I’m looking for a "Don’t display this dialog again" box rather than a "Always display this dialog."

Another example could be having the option displayed to "Turn off that dumb dog." It’s in my way, I want it GONE.

When going through a feature/option list, however, it’s probably best to word everything, including "Use that dumb dog," positively. The user’s probably not in an emotional state where the negative wording makes sense while going through feature/option lists.

Yes, but that does not mean it makes no difference. Rather, it means examining whether you are understanding and addressing the user’s frame of reference rather than your own.

For example, I have a report with an option to show summary or detail. It could use a pair of radio buttons Summary/Detail, but the programmer did not like to use radio buttons for a binary choice and did not have a lot of real estate available on a crowded form, so he used a single checkbox. It is labeled "Suppress transaction details."

This made sense from his frame of reference because the query had to process the transactions anyway, and summarizing was an extra action. From the user’s frame of reference this is so backward that our help desk must constantly explain how to run a summary report by *enabling* the option that refers to transaction details.

Puckdropper, that’s a very interesting suggestion. I’ve read that user context awareness like this is more ergonomic, and that users respond to programs differently depending on their moods, and work best with programs that are designed with that mood in mind. This example really illustrates a simple way to do that.

…although personally, I think that in addition to the stupid dog/cat/paperclip, there should be a shotgun somewhere on the screen as well. Then you can turn the "feature" off by shooting that which offends you. No need for a checkbox at all.

Without going into examples of things making this mistake, the group policy stuff is even worse, often having things like ‘Force use of X’ AND ‘Prohibit use of X’, in different parts of a window – then having other settings elsewhere in the tree which may be overridden by the use or prohibition of X.

Where it’s a tristate situation, having three radio buttons (Mandate/Allow/Prohibit) seems the sensible way to go, as IE does for various security things (‘Allow signed ActiveX code to run: Yes/Prompt/No). Using a pair of radio buttons for an either-or situation doesn’t make as much sense to me, though.

Maybe it’s just me, but I always have the feeling that this is a problem with English, as a language.

At least in German, the strict rule is that a double negation is positive, just like in mathematics, no exceptions. Being a native German speaker, I never really felt this negation thing is much of a problem. Maybe it’s just me…

Of course, badly worded dialogs with checkboxes are still an issue, but that’s rather because the checkbox on/off state doesn’t fit with the text of the dialog.

Who actually thought it’s a good idea to place checkboxes in dialogs? Why not simply "Allow", "Disallow", "Always allow"?

BTW, changing Yes/No prompts into more verbal ones has a subtle disadvantages: If you’re forced to use Windows in a language you don’t speak (which I do often), it’s easier to just learn how Yes/No are said in that language than lengthly sentences.

Actually I had read that about programming (I don’t read much psychology),

and ever since then I have been careful to code things like

>

if (some condition) {

positive case

} else {

negative case

}

>

and avoid things like

>

if (!some condition) {

negative case

} else {

positive case

}

>

Off the top of my head, the negative case first might make for more readable code if the negative case was much shorter than the positive case. But I don’t know if that would compensate for the test being slightly less straightforward.

I’m thinking of a case like

if (some condition) {

positive case //<80 lines of code>

} else {

negative case //<5 lines of code>

}

would be slightly harder to follow than

if (!some condition) {

negative case //<5 lines of code>

} else {

positive case //<80 lines of code>

}

just because the ‘else’ is fairly near the ‘if’ rather than a screen away. (Now whether it’s a good idea for an ‘if’ statement to have 80 lines of code rather than calling a separate function is a question for another day)

> BTW, changing Yes/No prompts into more verbal ones has a subtle disadvantages: If you’re forced to use Windows in a language you don’t speak (which I do often), it’s easier to just learn how Yes/No are said in that language than lengthly sentences.

>

Um, you mean if you’re presented w/ a dialog box like this:

blah blah blah (something you don’t understand)

[Yes] [No]

You’re completely comfortable w/ clicking Yes/No not knowing a word of what the dialog says?

> You’re completely comfortable w/ clicking Yes/No not knowing a word of what the dialog says?

Since MessageBox contains language from the OS and the message comes from the application, is quite easy to get used to using Office 2003 English on a Chinese Windows XP, even if you don’t speak chinese.

Another case : you want to delete a file – this leads to a dialog you just know you want to confirm.

(yes I know you can shift+del but don’t nitpick, there are other situations like the overwrite on copy, or empty recycle bin).

You think obscure check box wording is bad. I know a developer who sucessfully managed to use – in a major mission-critical laboratory information system – (get this) alternating check-box text that did not reflect the current state, but rather showed what the opposite would mean. For example, an un-checked box is labelled "different address"; check the box and the label changes to "same address". The local LUser (lab user) looks at the completed form with an checked item and reads "the address is the same". Bzzzt. And there were hundreds of these. His excuse for this bizarre methodology was: 1) it’s not the way MS does it (a "good thing" in his UNIX-impared head), and 2) that’s how we did it at home (australia). I know their seasons are backwords but their logic too? <g>

Everyone in the world who uses Windows would probably be better off Windows users if we were still using Win3.1-style interfaces. Seriously!

A good UI is one that works the way you expect it to work. And you expect a UI to work the way it worked when you first learned it.

Microsoft feels the need to keep reinventing the UI every 3-5 years when the only part of PC input that has changed over the last two decades is the addition of scroll wheels on mice. If there’s a reason people are confused by Windows interfaces it’s because they keep changing with every windows release. What’s worse, the changes are usually only skin deep. The Add Fonts dialog, for example, hasn’t changed since Win3.1 in 1992!*

If you think that UI’s don’t really matter, look at the niche products that have a rabidly loyal fanbase because of their consistent–even if bad–UI. WordPerfect. PalmOS. Quark.

It’s silly to think that people need to keep relearning the same interface when the majority of the changes are fresh coats of paint over aging walls.

(Oops, I just noticed my grammar there, and it wasn’t intended to be ironic, it’s really the way I thunk it. Sigh.)

Thursday, March 15, 2007 5:04 AM by Martin Probst

At least in German, the strict rule is that a

double negation is positive, just like in

mathematics, no exceptions.

The strict rule is the same in Japanese. I’m not sure if the social rule is the same though. I think I’m not the only person who gets it scrambled while speaking.

Meanwhile yesterday I learned that sometimes two radio buttons can be more informative than one checkbox. In Virtual PC 2004, there’s a checkbox for an option to connect a virtual CD drive to a virtual secondary IDE adapter. I assumed the opposite of "connect" was "don’t connect", and then I was foolish enough to not even think of testing to verify my assumption, and then I was foolish enough to not even think of reading documentation to verify my assumption, and then I was foolish enough to spout off in public. The fact is that the opposite of "connect to secondary" is "connect to primary". For my stupidity I am to blame, but nonetheless, in the future I’m going to give serious thought to putting two radio buttons instead of single checkboxes in some dialogs.

I think Motorola deserves some type of award for badly phrased UI (I know it’s not Windows, but bear with me). I’ll pick their PVR, DCT 6412, but most of their hardware has these types of problems. When you want to stop recording you are presented with the following choices:

Continue Recording, cancel action

Stop Recording, continue action

The first option always grabs my attention (as in "Continue…"), but both options use the word continue.

To be fair, Microsoft is good at fixing it, too. I was using a beta version of Windows Media Player 9, which solicited feedback to a microsoft.* newsgroup, and on one config dialog they had *both* "Allow something blahblah" and "Do not allow something blah blah".

I pointed this out in the newsgroup, got a random thanks from someone on the dev team, and when WMP9 came out of beta, it got fixed.

I disagree. If you have a set of options on one page they should be worded appropriately so that the default (sane) setting is either all-on or all-off. It is no fun to have a set of lets say, debugging options and having to read each of them to find out what the usual setting should be.

I don’t agree that a series of checkboxes on a given dialog should be worded so that they can set to all-on or all-off as a default. This requires people to process every checkbox with boolean logic that programmers are trained in, but average users are not.

You might as well ask them: "is the enemy of my enemy also my enemy?".

Even a button like "Restore Defaults" can be problematic. It is useful, again, for engineer types, but it presents a similar quandary. "I don’t remember if I liked the defaults, or which of the ten thousand options I’ve changed already, and I don’t want to change them all back. I guess I’ll keep hunting until I figure it out."

I’m pretty sure it’s okay for Raymond to espouse his own philosophy in his blog. Even people who work at MSFT read his blog and learn from it like the rest of us.

As one who doesn’t agree with "Don’t show this <item> again" being an exception to the "positive phrasing" rule, I actually emailed MS sometime last year to express my disapproval.

The reply I received said that it was excepted because it has always been phrased that way and, since people were used to it, it would be more confusing to change it to positive phrasing. OK. I can go along with that.

The reply went on to say that it was justified being negatively phrased because it is a "meta option". If you can figure out how a "meta option" differs from an "option", you’re one step ahead of me…

Anyway, I’ve often thought: why not do away with the checkbox and have two buttons to close the dialog box: "Close" and "Close and don’t show again".

Raymond, you should have known what was coming before you posted this.

My favorite example of where Microsoft broke this rule (and Raymond is obviously the guilty party) is: On the Windows Firewall control panel. When you turn it on there’s a big ol’ ugly check box for “Don’t allow exceptions”.

[Is your position, then, that I shouldn’t mention a problem until I make sure no Microsoft products suffer from it? I could follow that rule if you want. Then you’d learn less. -Raymond]

I’ve been thinking about this ‘Hide extensions for known filetypes’ some more, and I think I’ve figured out why it’s phrased like that:

The default for windows is: show ALL file extensions

Thus the option being ‘Hide extension for known filetypes’ makes a lot more sense. They could have used ‘Show extensions only for unknown filetypes’ but that doesn’t make it any clearer, and makes less sense to me.

Realigned all 10,000 objects in a dialog several times until I got it right

Fixed most obvious spelling errors

Realigned everything because string length has changed again

So that it appears like something has changed to the end user (big win for marketing and PR department)

"Ooh, see that checkbox has different text, I better read it and see what it does now!"

In my opinion it really doesn’t matter if it says "Do" or "Do not" as long as it is consistent. The worst is when it was one way and now it is the other and I have to waste time to adapt. Classic pencil pusher way of "creating work" for the masses.

It is so common these days that repeat customers are treated worse than newcomers.

What I mean is that we who use PCs for decades often have to adapt to radical changes in the way we get things done for the sake of computer illiterate people.

Oh and I should have said that you are helping them stay illiterate and ignorant too, by making it so easy for them.

Furthermore, if you analyze the way people work together, you will see that there are no such strict rules in communication but they still understand each other pretty well.

Now, if you dumb them down through easy interaction with a computer, they will lose that ability (to communicate with other people without becoming frustrated) because "it is so easy and streamlined on a computer" unlike in real life.

Checkboxes should really be opt-in or opt-out depending on context.

As an example here are two choices to meditate upon:

[x] Receive spam

[ ] Don’t receive spam

They both mean exactly the same. Assuming you don’t actually want to receive spam, which one of them would you prefer to find in configuration dialog?

Personally I would be offended if I were presented with #1.

As you can see from the above example, positive is defined by what user actually wants and not by wording alone.

But I guess that everyone has to come to that conclusion the hard way. That is why I suggested "Critical thinking, logic and reasoning" as your exercise for 12 year olds.