bad software design
Feb. 20th, 2007 06:26 pmIn my experience, MS Office utterly fails when it comes to accessibility issues. (Or if it doesn't and there are work-arounds, I sure can't find them in the documentation -- which is a different type of failure.) Today's problem: highlighting. When you use the highlighter in Word, it hard-wires whatever color you chose into the document (bright yellow, by default). That's illegible to someone using reverse-video, and there's no way to globally change it in a document. The correct way to do this sort of thing is to have semantic concepts like "highligher color" (1, 2, 3...), and embed that into the Word doc. Then, on the client end, you define your color map. Voila -- everything works. It'd be like system colors, except they'd work. You get your yellow; I get dark blue. For extra points, use the system settings directly for as much as possible; "selection color" probably works fine for highlighting, for instance.
It's not just highlighting in Word; Outlook pays attention to your system colors for some things but not others, so there are things in the UI I just can't see. (I'm told there's supposed to be a status line that tells me about my server connection; could've fooled me.) I frequently get Office documents where some accident changed "automatic color" to black, and I have to select everything and change it back.
This problem is not unique to Office; Microsoft's IM client does the same thing with text color. Your outgoing messages have a hard-wired text color, which might or might not work for the recipient. I have to highlight most coworkers' messaages to read them (they come in as black on my dark background), and they have to do the same for mine (which are white so I can see them as I type). Text color should be set for a user, not for outgoing messages. I want to see everything in white; you want to see everything in black. Half of our conversation shouldn't be wrong for each of us.
These products, like many web sites, tend to specify half of the foreground/background-color pair. If you're going to hard-wire yellow highlighting, you'd better also hard-wire black text. If you're going to hard-wire black IM text, you'd better also hard-wire a light background. But you shouldn't hard-wire either most of the time; you should ask the OS.
MS offers accessibility options in Windows, but it's a sham -- try to use them and you'll bump into stuff like this all the time. Theirs aren't the only products with these problems, but they are the ones who have no excuse for getting this wrong.
(no subject)
Date: 2007-02-21 02:18 am (UTC)If I want white-on-black on my Mac, I press ctrl-opt-cmd-8, and everything inverts (including the colors, which is odd) across all apps and windows. Now my viewing preferences don't have to impact what colors are in the document, which may have legitimate reasons for being that way. (E.g., printing white on black is awful. Highlighting yellow on white-on-black text is less useful than on black-on-white.) But Windows appears to be too smart by half, inverting some of the text and not other bits. The fact that they can't even get it right with their flagship app really drives home how broken the OS's half-solution is.
I wonder for you -- is there an aftermarket Windows app that would do the color inversion, and perhaps do a better job than the built-in setting?
(no subject)
Date: 2007-02-21 02:45 am (UTC)Windows offers custom color settings, so you can define text, window background, titlebar color, border color, select color, and a bunch of other things. It's remarkably tedious to get right, but I've put the time in to get that mostly working. However, none of that does any good if applications don't pay attention to those settings. That Microsoft's own applications don't, completely, is grating. I should go looking for an aftermarket app; thanks for the suggestion!
There are a lot of badly-done web pages out there (in this regard -- also other regards, but that's tangential). My mostly-solution is Firefox's Stylish extension, which lets me define CSS overrides either globally or per-site. (And I can turn them on and off at will.) This is not a perfect solution, but it's better than anything else I've come up with.
(no subject)
Date: 2007-02-21 02:55 am (UTC)S
(no subject)
Date: 2007-02-21 04:52 am (UTC)(By the way, other companies that ought to know better get this sort of thing wrong, too. The standard Javadoc doclet specifies white backgrounds but not text color -- a reversal of the usual problem, but equally bad. Fortunately, they do it via CSS, so I've written a build target to insert my own style sheet into my builds.)
In the case that prompted this rant, someone was using highlighting to call out sections of a document that he thought needed attention, rather than using it for edit-tracking.
(no subject)
Date: 2007-02-21 05:22 am (UTC)S
(no subject)
Date: 2007-03-09 01:03 pm (UTC)Outlook Colors
Date: 2007-04-13 09:10 pm (UTC)