On using ARIA (was RE: Proposal: ALT attribute for text)

Charles Pritchard wrote:
> ARIA has a large vocabulary, and it certainly has a learning
> curve, but like other standards; css3, html5, it's worth learning, and
> it's a big help in development... it's also something that can be
> learned piecemeal.

AMEN!!!

I have become increasingly perturbed of late to hear others speak of ARIA as 
some form of cryptic voodoo code-magic, reserved for only the highly 
functioning 'code geek' who is concerned about accessibility, and outside of 
the learning requirements of mainstream web-developers. We, as a community, 
need to turn that thinking around: we are, as my grandmother used to say, 
cutting our noses off to spite our face.

As I look around at the mainstream development community, I see eager and 
emerging developers learning all the latest CSS3 tricks for animations, 
transitions, gradients and what-not; I see developers using jQuery and other 
UI scripting libraries, and writing plug-in modules for them daily; 
developers using advanced scripting solutions such as node.js, backbone.js, 
modernizr, etc.; and I see those who want to push the boundaries to the edge 
using scripted shims and polyfills so that they can take advantage of the 
latest in nightly builds of their current browsers - and then I look at this 
community moaning and dismissing ARIA as "too complex", "too hard" and 
"doomed" - to the point that one WYSIWYG developer has publicly stated that 
they won't support ARIA in their tool 
(http://rebuildingtheweb.com/en/aria-for-content-doomed/ - which means *I* 
won't be supporting or promoting that particular tool), and others quite 
prepared to throw ARIA under the bus to fight for their particular 
cause-célèbre.


There is something very, very wrong here.


ARIA is now a full-fledged member of the HTML5 stack 
(http://dev.w3.org/html5/markup/aria/aria.html) and we, as a community, 
should be encouraging our friends and colleagues to investigate and use ARIA 
as one of the modern tools in a modern web-developer's tool-box. Yes, some 
of the ARIA specification can be specialized, but other aspects of it are 
mainstream and useful for all developers to employ, and they *DO* make a 
difference to end users now, as they have support from the AT tools.  How 
many reading this note have actually spent any real time investigating 
ARIA - honestly?

Landmark roles in ARIA (8 of them) are not "Hard" to understand nor 
implement, whether writing HTML5, or HTML4. How complicated is it to add one 
of:
  application
  banner
  complementary
  contentinfo
  form
  main
  navigation
  search

...to your layout divs/templates? Heck, this information is so important 
that HTML5 has added landmark elements to the vocabulary: I currently 
advocate a belt-and-suspenders approach by adding ARIA landmark roles to the 
HTML5 landmark roles (for example <nav role="navigation"></nav>, <section 
role="group"></section> or <article role="article"></article>). This is 
hard? (Ditto for the structural roles in ARIA)

Aria-* attributes? Again, while some might seem esoteric to be using daily, 
others are so useful that anyone today who is not using them should be 
ashamed of themselves: <input aria-required="true"> being one that is so 
simple that complete newbies to HTML would grasp it in a second. (and yes, 
in HTML5 that would be <input required aria-required="true">) FWIW, 
aria-required="true" was useful and supported by screen readers over *3 
YEARS AGO* - and yet we still have some moaning on today how had ARIA is.

Yes, ARIA also has over 30 different widget roles, and some of those roles 
(their states and/or properties) being somewhat specialized & complex to 
grasp, and as Charles points out there is a learning curve to become 
proficient with them, but on balance ARIA is elegant, useful and NOT HARD to 
start using today. Further, for those developers who are unable to use HTML5 
today for whatever reason, they can use ARIA in HTML 4 or XHTML and REAL 
USERS DERIVE REAL BENEFITS - TODAY!

However if the accessibility community itself continues to gripe and write 
about the difficulty of ARIA without actually spending the time to learn and 
use ARIA, then why would any mainstream developer even bother to take the 
plunge? Snap out of it folks, we need to change that tune, quickly!

ARIA is cool! ARIA is extremely useful! ARIA is part of HTML5! Real Web 
Professionals use ARIA today! - those are the messages we should be 
proclaiming. What's stopping you?

<stepping down from the soap-box>

JF

Received on Thursday, 25 August 2011 14:09:32 UTC