Here’s an interesting story that I hope every developer internalizes: people don’t read what you have to say.
Now, it used to be that people didn’t read the manual until they had no choice. Then it got to the point that people didn’t read the manual ever, so people stopped shipping manuals. But now a lot of people aren’t even reading dialog boxes. Perhaps because there are so many of them, or perhaps because they are so seldom helpful. But, from a practical standpoint, here is what the average app compat dialog box says:
Case in point: I got married a few months ago, and as part of the process I found myself sitting and talking to a florist. My job came up as part of the conversation, so she went out on a limb to ask if I could help her solve a problem. What problem?
Adobe Photoshop was causing a UAC Prompt and she did not know how to make it stop.
Asking her which version of Photoshop she uses, it was the latest (at the time), and I happened to know that it most certainly did not require elevation, so I asked if I could have a look.
Here is what I saw (well, not exactly – the icon is probably a hint that I cheated to make this screenshot, as is the path in the location field, but you get the idea):
So, here is a dialog that people agonized over. “We can help with app compat if we just tell the user what’s happening. I mean, we’re helping, that’s good isn’t it?”
Let’s count the things the user didn’t read:
The title of the dialog box. This isn’t UAC at all. But she’d heard so many TV commercials talking about how UAC annoys you all the time, that she assumed that something prompting all the time must also be UAC.
The name of the app. Got the vendor right, but she wasn’t differentiating between Photoshop and Reader. I see this one a lot – the biggest one being people thinking that Office is part of Windows.
The recommendation to go and fix the problem. We have a big button that offers to help you get it going. Didn’t see it, even though it would have brought her to the website to download the latest (free!) version of the reader with fixes the issues she might have as well as getting rid of the prompt.
The checkbox to make the message go away. Remember, the problem wasn’t that the application wasn’t working right, it was that she hated seeing the prompting all the time. We have a checkbox right there which offers to make it go away – she never read it.
In fact, the only button she read was the one that said “Run program.” The “make it work” button.
It turns out you can’t fix application compatibility issues with words and dialog boxes. Because people don’t read words. This experience taught me a lot about what we ought to do for app compat, and increasing the number of prompts to try to be helpful isn’t the way to do it.