Agile Ajax

Quick, It’s the Feds! Hide the AJAX!

I was arguing with a speaker at an SOA conference yesterday about whether AJAX for public facing websites was a bad idea. He kept insisting that if you use AJAX, you will get sued, and that Southwest Airlines had in fact lost a case on accessibility already. His claim was bugging me for the rest of the conference, so after I got back to the office I checked up on it. It turns out Southwest actually won that case. But there are new lawsuits springing up all the time.

It seems that to comply with the ADA and other state laws is onerous, to say the least. The following excerpt is taken from an article published in 2000, a time when the amount of non-accessible mischief one could in the browser was comparatively small:

The British national anthem has been described as a series of curt demands on
Jehovah, but it has nothing on the list of demands placed on Web developers by
the "Web Content Accessibility Guidelines," published by the private but
quasi-official W3 Consortium's Web Accessibility Initiative (which Brewer
directs). "Don't rely on color alone" to convey information. Don't use
navigation methods that require a mouse; some users have motor impairments.
"Until user agents allow users to freeze moving content, avoid movement in
pages." Same with blinking or, worse yet, flickering text (which may cause
seizures in persons with photosensitive epilepsy). Don't use tables for layout
unless you're really trying to render tabular data, and watch out even then
(text readers for the blind have trouble with tables). Don't use block
quotations as a shortcut when all you're trying to do is indent. (For the full
text of the guidelines, see www.w3.org/TR/WAI-WEBCONTENT.)

That's just a sampling. Other sins include "poor color contrast," "lack of
alternative text for imagemap hot-spots...lack of alternative information for
users who cannot access frames or scripts." Don't use auto-redirect or
auto-refresh, or cause links to open in a new window. "Use style sheets to
control layout and presentation"--and if you haven't gotten around to learning
style sheets or you use older page authoring software that doesn't provide for
them, that's your problem. Don't use audio clips on your site unless you
caption them for the deaf, or video clips unless you attach descriptions of
what's going on for the blind.

Now providing alternative, textual ways of doing things is fine if you're talking about entering dates via a choice of a text field or a popup date picker. It's a bit more challenging to do that with direct manipulation interfaces -- certainly with my favorite example, UML, which is a visual representation of non-visual concepts. Yes, you have the ability to transform the model into XML or some other textual form which could then be read by screen access software or printed on a tactile display, but providing a way to manipulate the textual "diagram" would require a whole new user interface. Let me repeat that: fully functional, accessible alternatives for direct manipulation user interfaces would require the development of a whole new user interface. That's cost prohibitive for most businesses. Tactile displays are an option, but they are low-res and expensive. (See here for a presentation on UML for blind programmers.)

Even for sites employing very simple and limited uses of AJAX the news is not good. James Edwards has done some practical tests of screen readers with Javascript, i.e. can they detect changes in the DOM and so on? His conclusion:

I'm forced to conclude that, unless a way can be found to notify screen
readers of updated content, AJAX techniques cannot be considered
accessible, and should not be used on a production site without a truly
equivalent non-script alternative being offered to users up-front.

In the desktop world where RIA's are the norm, there are API's and standards
for integrating screen readers with applications. Maybe each rich web
application should come with an XML feed that accomplished much the
same thing.

Of course this isn't just a dollars and cents or even a legal issue. It is a moral issue as well. My mother-in-law became legally blind as an adult, just a bit too late to learn braille and most of the other tools of which the blind make use. Her tools are the worlds largest magnifying glass and software that reads the text of web pages to her. The number of sites that she just plain can't use has gone up over time, and has really soared in the past 18 months. (If you want to know what that feels like, download the lynx browser -- one of the first web browsers back in the pre-image days. Even sighted, navigating through pages with their reams of sidebar crap is excruciating.)

Yes, she represents a small market. Yes, it's expensive to provide fully functional, accessible alternatives to the RIA's we want to write. But should we shut her out of what goes on online just so we can use our nifty RIA apps? Personally, I don't think there is an effective way to split this baby. Provided that you make use of only limited amounts of AJAX such as autocomplete in forms, you can probably make it work, but when the drag and drop starts flying, and the visual metaphors abound, what can you do?

Leave a comment

Powered by WP Hashcash

About Pathfinder

  • We design and build extraordinary applications for companies looking to make the next great idea a reality.
  • learn more

Topics

WordPress

Comments about this site: info@pathf.com