Earlier I spoke a little about some of what we go through to localize and globalize our software, and today I thought I might mention a little about how we make it accessible to different kinds of people. I was thinking about this late last night as I bought dinner for the developers and testers who were staying late with me working on the final fit and polish of SQL Server 2008.
Our group (manageability) is a little different than the rest of the development at Microsoft. In each area of the Engine or other features (such as AS or IS or RS), the Program Managers document a new feature in a spec, the developers work very hard to write it, and then a legion of testers test it. They then pas that off to us and start on their next feature or begin to ramp down. In our case, however, we have our own improvments, such as Policy Based Management (formerly DMF), and we have everyone else's, since we provide the UI and GUI for them. So in essence we're in crunch mode constantly.
We also have another interesting set of things to take care of. Not only do we publish in multiple languages, we also ensure that our software is accessible to people who are blind, colorblind, deaf, or in another way are not able to use standard UI / GUI paradigms. That means several things. For one, we can't use color as a single differentiator - that was one of the main issues with intellisense. Someone without sight would not be able to use the feature if we did.
We also have to ensure that everything on the screen can be read by a screen-reader. A screen reader does not just work by reading what is on the screen. Try it: have someone pick out a single label or text content and read just that to you, without your seeing the screen. Now tell them where they are in the GUI. So each label gets another label for that reader. For instance, "Name" becomes "Text Label: Databaes Name, Content: Pubs" read out loud.
It's often very difficult to work in the changes to make the software accessible like this. But when I read that our software (SQL Server) is one of, if not the most, accessible, I was pretty impressed.
OK, gotta get back to SQL Server 2008 - I think I have an accessiblity bug I have to take care of!