+ All Categories
Transcript
Page 1: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Web 2.0 Accessibility:

Order in Chaos

Aaron Leventhal

Page 2: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Living in Germany

Based around rules & structure - “Correct” beer brewing, etc. - Project structure planned first

Page 3: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

But born in the United States

America likes to break rules & change the game Structure comes as it becomes necessary Sometimes bad, sometimes good

Page 4: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

What is Accessibility?

Is it engineering compassion?

Page 5: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Visual impairments

♦ People who are blind or deaf-blind use screen reading software with speech or soft Braille

♦ Partially sighted people may use font/contrast settings or screen magnification software.

Stevie Wonder (blindness)

Aldous Huxley (low vision)

Page 6: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Print disabilities

♦ People with dyslexia use text to speech software combined with word highlighting

Helen Keller, writer (deaf and blind)

Alexander Graham Bell inventor of the telephone (dyslexia)

Page 7: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Physical disabilities ♦ Quadriplegics use the keyboard with a on

screen keyboards and speech input software, with special pointing devices (head/eye tracking mice or mouth sticks)

♦ One handed typists use sticky key software

♦  People with ALS or cerebral palsy may use filter keys, word prediction software and single switch devices

Stephen Hawking (ALS)

Page 8: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Other disabilities ♦ Hearing impaired people need

software that does not rely on sound for cues

♦ Color blind people need software that does not rely on color alone, This includes 8-10% of males who see both red and green as brown!

♦  Persons with cognitive and learning disabilities need software with simple layout and messages – also useful for young, elderly and newbie users

♦  Persons with epilepsy need software with no flashing or blinking: (2-55 Hz can cause seizures)

Beethoven (hearing impaired)

Nobel (epilepsy)

Page 9: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Just Tell Us What To Do!

♦ Images and colors: don’t rely on them

♦ Keyboard navigation must be available

♦ Structure with semantic HTML

♦ … Be a good rule follower! http://www.ibm.com/able/guidelines (based on WCAG 1)

Page 10: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Can we use JavaScript? WCAG 1.0, 508, EU say no -- must work with script off

Page 11: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Split Personality: Web Developers

  Good citizen

  Semantics

  Static HTML

  Accessible

  Traditional

Page 12: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

The Dark (but Exciting) Side

  Rule breaker

  Dynamic

  JavaScript

  Not accessible

 Cutting edge!

Page 13: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008
Page 14: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Use WAI-ARIA!

Page 15: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Embracing Change ♦ WAI-ARIA: W3C working draft

♦ Describes the structure of Dynamic Content

♦ New attributes are used, like role=“slider”

♦ Allows both innovation and accessibility

♦ Doesn’t break existing content

Page 16: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

What is WAI-ARIA?

Describes dynamic content:

1.  Visual

2.  Informational

3.  Interactive

Page 17: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Visual “Eye Candy” 1.  Animation/transitions

2.  Keep quiet: aria-live=“off”

3.  Please allow them to be turned off!

Page 18: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Informational Content

1.  Built-in role types: role=“alert”|”log”|”timer”|”progressbar”

2.  Generic live content, e.g. stock quotes Set the interruption/politeness: aria-live=“off”|“polite”|”assertive”|”rude”

00:12

Page 19: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Interactive Widgets 1.  Usually have onclicks

2.  Keyboard navigation! Important to use Style Guide

3.  ARIA roles and properties: <div role=“slider” aria-valuenow=“50” …

4.  Also, more complex widgets, “tree”, “grid”, etc.

5.  ARIA drag and drop

Page 20: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Sampling of ARIA Semantics

tree grid

tabpanel menu slider

progressbar

application alert

description

required

invalid

selected labelledby

describedby

multiselectable

expanded checked haspopup

& more …

& more …

valuenow

Page 21: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

ARIA even improves HTML 1.  Enhancing forms

* aria-invalid, aria-required * role=“alert” * aria-describedby

2.  Tables for layout * <table role=“presentation”>

3.  Landmarks * role=“main”, “navigation”, etc.

Page 22: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Validation?

WAI-ARIA breaks HTML 4.01 validation

But, accessibility is more important

… Use Validator.nu experimental service

Page 23: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Where is ARIA supported?

Assistive Tech (screen readers, magnifiers, ...)

Browser support

Page 24: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Building ARIA components is a challenge

Docs - codetalks.org

Specs - w3.org

Build your own components?

Page 25: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Or borrow them? Use a JavaScript library to save effort

Most accessible

Page 26: Making Chaos Accessible - Aaron Leventhal - Paris Web 2008

Resources

Docs & samples http://codetalks.org

Mailing list Google groups “free-aria”


Top Related