Selfish Accessibility for Global Accessibility Awareness Day

Post on 03-Aug-2015

554 views 0 download

Transcript of Selfish Accessibility for Global Accessibility Awareness Day

Selfish AccessibilityPresented by Adrian Roselli for Inclusive Design 24 #ID24

#ID24

About Adrian Roselli

• Co-written four books.• Technical editor

for two books.• Written over fifty

articles, most recentlyfor .net Magazine andWeb Standards Sherpa.

Great bedtime reading!

#ID24

About Adrian Roselli

• Member of W3C HTML Working Group, W3C Accessibility Task Force, five W3C Community Groups.

• Building for the web since 1994.• Founder, owner at Algonquin (

aHealthTech.com).• Learn more at AdrianRoselli.com.• Avoid on Twitter @aardrian.

I warned you.

#ID24

What is a11y?

• A numeronym for “accessibility”:• The first and last letter (accessibility),• The number of characters omitted (a11y).

• Prominent on Twitter (character restrictions):• #a11y

• Examples:• l10n → localization• i18n → internationalization

Ain’t language funsies?

#ID24

Accessibility Gets No Respect

In fairness, Sherwin Williams needs to come up with a lot of color names...

“Cyberspace” (gray)

“Online” (blue)

“Lime Rickey” (green)

#ID24

Accessibility Gets No Respect

…however I think the team could have done better than this.

#ID24

What We’ll Cover

• Yay Statistics!• Be Selfish• Some Techniques• Basic Tests• Technical Bits• Resources

Work with me, people.

#ID24

Yay Statistics!

1 of 5 sections.

#ID24

Any Disability

• In the United States:• 10.4% aged 21-64 years old,• 25% aged 65-74 years old,• 50% aged 75+.

• Includes:• Visual• Hearing• Mobility• Cognitive

http://www.who.int/mediacentre/factsheets/fs282/en/http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012

#ID24

Vision Impairments

• 285 million worldwide:• 39 million are blind,• 246 million have low vision,• 82% of people living with blindness are aged 50

and above.• 1.8% of Americans aged 21-64.• 4.0% of Americans aged 65-74.• 9.8% of Americans aged 75+.

http://www.who.int/mediacentre/factsheets/fs282/en/http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012

#ID24

Hearing Impairments

• 360 million people worldwide have disabling hearing loss.

• 17% (36 million) of American adults report some degree of hearing loss:• 18% aged 45-64 years old,• 30% aged 65-74 years old,• 47% aged 75+ years old.

http://www.who.int/mediacentre/factsheets/fs300/en/https://www.nidcd.nih.gov/health/statistics/Pages/quick.aspx

#ID24

Mobility Impairments

• In the United States:• 5.5% aged 21-64 years old.• 15.6% aged 65-74 years old.• 32.9% aged 75+.

http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012

#ID24

Cognitive Impairments

• Dyslexia,• Dyscalculia,• Memory issues,• Distractions (ADD, ADHD),• In the United States:• 4.3% aged 21-64 years old.• 5.4% aged 65-74 years old.• 14.4% aged 75+.

http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012&subButton=Get+HTML

#ID24

Be Selfish

2 of 5 sections.

#ID24

WebAIM’s Hierarchy for Motivating Accessibility Change

http://webaim.org/blog/motivating-accessibility-change/

#ID24

My Hierarchy for Motivating Accessibility Change

Is better, no?

#ID24

Getting Older

• Affects (nearly) everyone,• Carries risks and side effects,• Is not for the young.

I’m still experimenting with it.

#ID24

Accidents

• Broken limbs,• Eye injuries,• Hearing injuries,• Head trauma.

All of these have happened to me, multiple times.

#ID24

But I’m Invincible!

• Multi-tasking,• Sunlight,• Eating at your desk,• No headphones handy,• Content is not in your native language.

The sun is trying to kill me.

#ID24

https://twitter.com/aardrian/statuses/388733408576159744

#ID24

Tech Support

• Think of your family!• Think of your time spent helping them!• Think of the wasted holidays!

This is why we hate the holidays.

#ID24

The Message

• Supporting accessibility now helps to serve future you.

Do or do not.

#ID24

The Message

• Supporting accessibility now helps to serve future you.

• Supporting accessibility now helps injured you, encumbered you.

There is no try.

#ID24

The Message

• Supporting accessibility now helps to serve future you.

• Supporting accessibility now helps injured you, encumbered you.

• Getting younger developers to buy in helps future you – if you teach them well.

Always pass on what you have learned.

#ID24

Checklist

• Accessibility is not a checklist.

http://accessibility.net.nz/blog/the-problems-with-ramps-blended-into-stairs/

#ID24

Stairamp

Dean Bouchard on Flickrhttp://accessibility.net.nz/blog/the-problems-with-ramps-blended-into-stairs/

#ID24

Checklist

• Accessibility is not a checklist.• Accessibility is an ongoing process.

https://twitter.com/vavroom/status/571092086365261824

#ID24

Maintenance

Nicolas Steenhouthttps://twitter.com/vavroom/status/571092086365261824

“Wheelchair ramp at pharmacy not only hasn’t been cleared of snow but has 2 potted trees to ensure nobody can pass.”

#ID24

Some Techniques

3 of 5 sections.

#ID24

User Stories

• Components:• User,• Outcome,• Value.

• Writing:• As user, I want outcome.• As user, I want outcome so that value.• In order to get value as user, I want outcome.

How to Write User Stories for Web Accessibility

#ID24

Selfish User Stories

• As a user on a sun-lit patio, I want to be able to read the content and see the controls.

Add beer and as a user I may have trouble focusing.

#ID24

Selfish User Stories

• As a user in bed with a sleeping spouse, I want to watch a training video in silence so that I can get caught up at work.

As a user who doesn’t want to get punched for having slacked off at work.

#ID24

Selfish User Stories

• In order to click links as a user with no elbow room in coach class with a tiny trackpad, I want click areas to be large enough and adequately spaced.

As a user in coach class who also paid too much for the drink he’s spilling on his keyboard.

#ID24

Selfish User Stories

• As a user distracted by the TV, I want clear headings and labels so that I don’t lose my place.

As a user who really should be finishing his work in the office.

#ID24

User Stories

• Physical Impairment• As a keyboard-only user, I want to be able to use

the entire application.

This includes seeing what has focus and not getting lost in off-screen elements.

#ID24

User Stories

• Physical Impairment• As a keyboard-only user, I want to be able to use

the entire application.• As a keyboard-only user, I want to navigate a

product list with the tab key so that I can find the right option.

Arrow keys are acceptable as well, making sure that it is clear to the user.

#ID24

User Stories

• Physical Impairment• As a keyboard-only user, I want to be able to use

the entire application.• As a keyboard-only user, I want to navigate a

product list with the tab key so that I can find the right option.

• In order to click links as a limited-mobility user, I want click areas to be large enough and adequately spaced.

Else I may click the wrong item and have to hit the back button, which can be time consuming.

#ID24

User Stories

• Visual Impairment• As a color blind user, I want to be able to see links

in page content.

Underlines are important, but users also like to know what they clicked already.

#ID24

User Stories

• Visual Impairment• As a color blind user, I want to be able to see links

in page content.• As a low-vision user, I want to zoom the page so

that I can read the content.

Without the text overlapping itself or every other item on the page.

#ID24

User Stories

• Visual Impairment• As a color blind user, I want to be able to see links

in page content.• As a low-vision user, I want to zoom the page so

that I can read the content.• In order to use the site as a blind user, I want to

use a screen reader to navigate.

Good headings, clear structure, landmark roles to jump around the page.

#ID24

User Stories

• Hearing Impairment• As a low-hearing user, I want to be able to access

transcripts.

From a clear link, not through some acrobatics to find them.

#ID24

User Stories

• Hearing Impairment• As a low-hearing user, I want to be able to access

transcripts.• As a low-hearing user, I want access to closed

captions so that I can use training videos.

Timed to match the video is important.

#ID24

User Stories

• Hearing Impairment• As a low-hearing user, I want to be able to access

transcripts.• As a low-hearing user, I want access to closed

captions so that I can use training videos.• In order to participate in a webinar as a deaf user,

I want real-time captioning or transcripts.

This can be tricky, since you’ll need to have a resource typing in real-time.

#ID24

User Stories

• Cognitive Impairment• As a user with a vestibular disorder, I want to be

able to disable parallax scrolling.

But you don’t just use it for no reason, right?

#ID24

User Stories

• Cognitive Impairment• As a user with a vestibular disorder, I want to be

able to disable parallax scrolling.• As a user with dyscalculia, I want distinct number

fields for each block of digits in a credit card number so that I can purchase a product.

You can auto-detect card type. Do the same for expiration date.

#ID24

User Stories

• Cognitive Impairment• As a user with a vestibular disorder, I want to be

able to disable parallax scrolling.• As a user with dyscalculia, I want distinct number

fields for each block of digits in a credit card number so that I can purchase a product.

• In order to not get confused on pages with long text passages as a user with dyslexia, I want control over text size, spacing, and/or alignment.

At the very least, turn of justified text.

#ID24

Personas

Adrian• Works when he should be relaxing, relaxes

when he should be working.• Lives between motorcycles.• Works late at night with the TV on.• Uses sub-titles in Netflix.• Keeps all screens as dark as possible.

That photo is from official ID.

#ID24

Basic Tests

4 of 5 sections.

#ID24

Click on Field Labels

• When you click label text next to a text box, does the cursor appear in the field?

• When you click label text next to a radio / checkbox, does it get toggled?

• When you click label text next to a select menu, does it get focus?

http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/

#ID24

#ID24

Unplug Your Mouse

• Turn off your trackpad, stick, trackball, etc.• Can you interact with all controls (links,

menus, forms) with only the keyboard?• Can you tell which item has focus?• Does the tab order match your expectation?

http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/

#ID24

#ID24

Turn off Images

• Can you still make sense of the page?• Is content missing?• Can you still use the site?• Is your alt text useful?

http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/

#ID24

#ID24

#ID24

Turn on High Contrast Mode

• Windows only.• Left ALT + left SHIFT + PRINT SCREEN

• Background images and colors are replaced.• Text colors are replaced.• Does this make your site unusable?

http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/http://blog.adrianroselli.com/2012/08/css-background-images-high-contrast-mode.html

#ID24

#ID24

#ID24

Turn off CSS

• Does important content or functionality disappear?

• Do error messages or other items that rely on visual cues make sense?

• Is content still in a reasonable order?• Do any styles (colors, text effects, etc.)

remain?

http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/

#ID24

#ID24

Test for Colorblindness/Contrast

• Is there enough contrast?• Are hyperlinks, menus, etc. still visible?• Tools:• Chrome Color Contrast Analyzer• Lea Verou’s Contrast Ratio• WebAIM Color Contrast Checker• CheckMyColours.com

http://www.inpixelitrust.fr/blog/en/tips-create-accessible-color-palette/http://alistapart.com/blog/post/easy-color-contrast-testing

#ID24

Protanopia

#ID24

Deuteranopia

#ID24

Tritanopia

#ID24

Look for Captions & Transcripts

• Do video/audio clips have text alternatives?• Are links to closed-captions or transcripts built into

the player or separate text links?• Is there an audio description available?• Tools:• Media Access Australia YouTube captioning tutorial,

Vimeo captioning tutorial,• Tiffany Brown’s WebVTT tutorial,• DIY Resources for Closed Captioning and Transcription

from 3 Play Media.http://webaim.org/techniques/captions/

#ID24

https://www.youtube.com/watch?v=zCqN_cCLnnk

#ID24

Hyperlinks!

• Is there any “click here,” “more,” “link to…”?

http://www.sitepoint.com/15-rules-making-accessible-links/

#ID24

Hyperlinks!

• Is there any “click here,” “more,” “link to…”?• Are you using all-caps, URLs, emoticons?

http://www.sitepoint.com/15-rules-making-accessible-links/

#ID24

Hyperlinks!

• Is there any “click here,” “more,” “link to…”?• Are you using all-caps, URLs, emoticons?• Do you warn before opening new windows?

http://www.sitepoint.com/15-rules-making-accessible-links/

#ID24

Hyperlinks!

• Is there any “click here,” “more,” “link to…”?• Are you using all-caps, URLs, emoticons?• Do you warn before opening new windows?• Do links to downloads provide helpful info?

http://www.sitepoint.com/15-rules-making-accessible-links/

#ID24

Hyperlinks!

• Is there any “click here,” “more,” “link to…”?• Are you using all-caps, URLs, emoticons?• Do you warn before opening new windows?• Do links to downloads provide helpful info?• Are you using pagination links?

http://www.sitepoint.com/15-rules-making-accessible-links/

#ID24

Hyperlinks!

• Is there any “click here,” “more,” “link to…”?• Are you using all-caps, URLs, emoticons?• Do you warn before opening new windows?• Do links to downloads provide helpful info?• Are you using pagination links?• Are your links underlined (or otherwise obvious)?

http://www.sitepoint.com/15-rules-making-accessible-links/

#ID24

Hyperlinks!

• Is there any “click here,” “more,” “link to…”?• Are you using all-caps, URLs, emoticons?• Do you warn before opening new windows?• Do links to downloads provide helpful info?• Are you using pagination links?• Are your links underlined (or otherwise obvious)?• Is there alt text for image links?

http://www.sitepoint.com/15-rules-making-accessible-links/

#ID24

Hyperlinks!

• Is there any “click here,” “more,” “link to…”?• Are you using all-caps, URLs, emoticons?• Do you warn before opening new windows?• Do links to downloads provide helpful info?• Are you using pagination links?• Are your links underlined (or otherwise obvious)?• Is there alt text for image links?• Is the link text consistent?

http://www.sitepoint.com/15-rules-making-accessible-links/

#ID24

http://blog.adrianroselli.com/2014/03/i-dont-care-what-google-did-just-keep.html

#ID24

Technical Bits

5 of 5 sections.

#ID24

WAI-ARIA

• Web Accessibility Initiative – Accessible Rich Internet Applications.

• Adds accessibility information to HTML elements.

• Can be used with prior versions of HTML.• WAI-ARIA 1.0 published March 20, 2014.

http://www.w3.org/TR/wai-aria/

#ID24

Four Five Rules of ARIA Use

1. If you can use a native HTML5 element with semantics/behavior already built in, then do so, instead of repurposing another element.

RT this! https://twitter.com/aardrian/status/454249142387081219

#ID24

Four Five Rules of ARIA Use

2. Do not change native semantics. Unless you really have to (no <h1> with a role="button", for example).

RT this! https://twitter.com/aardrian/status/454249201564532737

#ID24

Four Five Rules of ARIA Use

3. All interactive ARIA controls must be usable with the keyboard — keyboard users must be able to perform equivalent actions.

RT this! https://twitter.com/aardrian/status/454249253284483072

#ID24

Four Five Rules of ARIA Use

4. Do not use role="presentation" or aria-hidden="true" on a focusable element. If you do so, some users will never be able to focus.

RT this! https://twitter.com/aardrian/status/454249297408585729

#ID24

Four Five Rules of ARIA Use

5. All interactive elements must have an accessible name (in progress). This may come from a visible (text on a button) or invisible (alt text on an image) property.

As of May 19: http://rawgit.com/w3c/aria-in-html/master/index.html#fifth-rule-of-aria-use Accessible name: http://www.w3.org/TR/wai-aria/terms#def_accessible_name

#ID24

HTML/ARIA Don’t

• <div onclick="DoThing();">Do a thing.</div>

I see this all the time.

#ID24

HTML/ARIA Don’t

• <div onclick="DoThing();" tabindex="0">Do a thing.</div>

I see this a bunch, too.

#ID24

HTML/ARIA Don’t

• <div onclick="DoThing();" tabindex="0" onkeypress="DoThing();">Do a thing.</div>

Excluded bits like if(event.keyCode==32||event.keyCode==13)DoThing();

#ID24

HTML/ARIA Don’t

• <div onclick="DoThing();" tabindex="0" onkeypress="DoThing();" role="button">Do a thing.</div>

ARIA roles to the rescue! Er…

#ID24

HTML/ARIA Do

• <button onclick="DoThing();" onkeypress="DoThing();">Do a thing.</button>

Or just start with the right element. http://www.karlgroves.com/2013/05/14/links-are-not-buttons-neither-are-divs-and-spans/

#ID24

HTML5 Elements

• Sectioning elements already have accessibility built in. Use them.• <header>• <nav>• <main> (one per page)• <aside>• <footer>• <form> (a search form)

This stuff is baked in!

#ID24

HTML5/ARIA Landmarks

• They don’t always have support in assistive technologies (AT), so use roles as well.• <header role="banner"> (once per page)• <nav role="navigation">• <main role="main"> (one per page)• <aside role="complementary">• <footer role="contentinfo"> (once per page)• <form role="search">

http://www.w3.org/WAI/GL/wiki/Using_ARIA_landmarks_to_identify_regions_of_a_page

#ID24

Generic Desktop Layout

<header role="banner">

<nav role="navigation">

<aside role="complementary">

<form role="search">

<footer role="contentinfo">

<main role="main">

#ID24

Generic “Mobile”

Layout

<header role="banner">

<nav role="navigation">

<aside role="complementary">

<form role="search">

<footer role="contentinfo">

<main role="main">

“Mobile” often means narrow screen in RWD, as well as this context.

#ID24

HTML5 Headings

• Use normal heading ranks to convey document structure.

• Don’t skip; go in order.

<h1><h2>

<h3><h4>

<h5><h6>

Fun fact: NCSA Mosaic 1.0 had provisions for an <h7>: http://blog.adrianroselli.com/2013/04/ncsa-moscaic-turns-20.html

#ID24

HTML5 Headings

• Document Outline Algorithm…• Is a myth,• Isn’t implemented in any browsers,• Should not be relied upon.

• Don’t be fooled by articles claiming otherwise.• Spec has been updated.• No SEO benefit for one over other.

http://blog.adrianroselli.com/2013/12/the-truth-about-truth-about-multiple-h1.html

#ID24

The New <div>itis

• <section>orrhea, <article> abuse.• These map to regions in page navigation order

(role="region").• Can overwhelm users of AT.• If it doesn’t get an <h#>, don’t use it.• If it shouldn’t be in the document outline,

don’t use it.

http://www.w3.org/TR/html5/sections.html#the-section-elementhttp://www.w3.org/TR/html5/sections.html#the-article-element

#ID24

Focus Styles

http://blog.adrianroselli.com/2014/06/keep-focus-outline.html

#ID24

Focus Styles

• Necessary for keyboard use,• Use in conjunction with :hover,• Check libraries for :focus styles.

It’s built in, just don’t mess with it.

#ID24

Focus Styles

https://twitter.com/aardrian/statuses/489837817129099266

#ID24

Alternative Text

• Which is correct?• <img src="fox.png" alt="Photo of a fox reading

aloud from a book.">

http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html

#ID24

Alternative Text

• Which is correct?• <img src="fox.png" alt="Photo of a fox reading

aloud from a book.">• <img src="fox.png" title="Photo of a fox reading

aloud from a book.">

http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html

#ID24

Alternative Text

• Which is correct?• <img src="fox.png" alt="Photo of a fox reading

aloud from a book.">• <img src="fox.png" title="Photo of a fox reading

aloud from a book.">• <img src="fox.png" aria-label="Photo of a fox

reading aloud from a book.">

http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html

#ID24

Alternative Text

• Which is correct?• <img src="fox.png" alt="Photo of a fox reading

aloud from a book.">• <img src="fox.png" title="Photo of a fox reading

aloud from a book.">• <img src="fox.png" aria-label="Photo of a fox

reading aloud from a book.">• <img src="fox.png" aria-labelledby="FoxPic"> <p

id="FoxPic">Photo of a fox reading aloud from a book.</p>

http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html

#ID24

Alternative Text

• Use alt.• Longdesc links to more verbose alternative.

http://www.w3.org/blog/2014/03/wcag-techniques-for-image-text-alternatives/

#ID24

Alternative Text Decision Tree

http://www.4syllables.com.au/2010/12/text-alternatives-decision-tree/http://dev.w3.org/html5/alt-techniques/#tree

1. What role does image

play?

2. Does it present new

info?

3. What type of info?

Informative Yes

alt=""or

<a href="foo"><img alt="">Link</a>alt=""or

Use CSS

alt="descriptive identification"or

alt="short label" + caption

Pure

ly D

ecor

ative Se

nsor

y

No alt="label for link"

alt=“short alternative"or

alt="short label" + caption

alt="short label + location of long alternative"or

long text alternative on same or linked page

Long

/ C

ompl

ex

Shor

t / S

impl

eLink

#ID24

Resources

Unless you had questions, which you didn’t else you would have asked by now.

#ID24

Resources

• Web Accessibility and Older People:Meeting the Needs of Ageing Web Usershttp://www.w3.org/WAI/older-users/Overview.php

• Easy Checks - A First Review of Web Accessibilityhttp://www.w3.org/WAI/eval/preliminary

• How People with Disabilities Use the Web: Overviewhttp://www.w3.org/WAI/intro/people-use-web/Overview.htmlIn addition to the gems I’ve sprinkled throughout.

#ID24

Resources

• 2.11 ARIA Role, State, and Property Quick Referencehttp://www.w3.org/TR/aria-in-html/#aria-role-state-and-property-quick-reference

• 2.12 Definitions of States and Properties (all aria-* attributes)http://www.w3.org/TR/aria-in-html/#definitions-of-states-and-properties-all-aria--attributes

In addition to the gems I’ve sprinkled throughout.

#ID24

Resources

• a11yTipshttp://dboudreau.tumblr.com/

• Designing For The Elderly: Ways Older People Use Digital Technology Differentlyhttp://www.smashingmagazine.com/2015/02/05/designing-digital-technology-for-the-elderly/

• How to Write User Stories for Web Accessibilityhttp://www.interactiveaccessibility.com/blog/how-write-user-stories-accessibility-requirements

• Book Excerpt: A Web for Everyonehttp://uxmag.com/articles/book-excerpt-a-web-for-everyone

In addition to the gems I’ve sprinkled throughout.

#ID24

Presented by Adrian Roselli for Inclusive Design 24 #ID24

My thanks and apologies.

Slides from this talk will be available at rosel.li/ID24

Selfish Accessibility

#ID24