SlideShare une entreprise Scribd logo
1  sur  60
Télécharger pour lire hors ligne
Walking Down the A11y Road
Lessons Learned from Working on
Accessibility of a Django Project
Radina Matic
radina@learningequality.org
@RadinaMatic
Radina Matic
- translator & technical writer
- open software & technology enthusiast
Web and Data Visualization at Rectory
Stats Office, University of Barcelona
Foundation for Learning Equality
radina.matic@ub.edu
radina@learningequality.org
@RadinaMatic
Why do we care?
Who benefits?
World Health Organization fact sheet from 2014
Disabled people in the world
(1000 millions)
People living in Europe
(742 millions)
Who benefits?
EU-Statistics on Income and Living Conditions from 2014
Millions!
People with disabilites?
EVERYBODY
Good for Business
- Benefits SEO
- Improves mobile access and overall usability
- Increases market share
- PR impact derived from corporate social
responsibility
- Reduces legal risk
Don’t put up fires
Plan accessibility
as early as
possible, don’t
wait for QA
Standards & Laws
- US - Section 508 (1998) & ADA
- 21st Century &
Video Accessibility Act (2010)
- European Standard on accessibility
requirements for public procurement of ICT
products and services (EN 301 549 - 2014)
- Web Content Accessibility Guidelines
(WCAG) 2.0 as ISO/IEC 40500 (2012)
Accessibility mishaps
make headlines (and courtrooms)
- National Federation of the Blind v. TARGET (2008)
- National Association of the Deaf (NAD) v. Netflix (2012)
- Google Books (2012)
- Harvard & MIT (edX) MOOCs (2015)
http://www.karlgroves.com/2011/11/15/
list-of-web-accessibility-related-litigation-
and-settlements/ (~230 cases up to 2015)
OFFER
ALTERNATIVES
DISCOVERABILITY
FEEDBACK
&
It's not you. Bad doors are everywhere https://www.youtube.com/watch?v=yY96hTb8WgI
Don Norman about “Norman Doors”
Document Structure
• Page language
Document Structure
• Title
(unique and
descriptive; H1)
• Page landmarks
(semantic HTML5
or ARIA)
Headings
Keyboard navigation
- Tab & Shift Tab through all the links
- Arrow keys through menus
- Skip-to links on top (first element after <body>)
Define visible focus state!
:focus {
outline: 0;
}
Keyboard navigation
Keyboard navigation
Images - The elusive ALT attribute
- alt=“?????”
- DESCRIBE the image
convey both content and functionality
- Do not put text inside images (localization)
- Decorative images – empty alt=“”
Links and Forms
Links
- Concise
- Descriptive
Click
More
Here
Forms
-Labels
-Fieldsets for grouping
-Tabbing order
Color & Contrast
foreground vs. background
3:1 for large text
4.5:1 for smaller text
{% if settings.DEBUG %}
<script type="text/javascript" src="{% static 'js/tota11y.min.js' %}"></script>
{% endif %}
Color & Contrast
OFFER ALTERNATIVES
Color & Contrast
OFFER ALTERNATIVES
Accessible Multimedia Players
Able Video Player - http://www.washington.edu/doit/videos/
OFFER ALTERNATIVES
Don’t Autoplay!
http://devtoolschallenger.com/
OFFER ALTERNATIVES
Let it play!
Screenreader-only output
Screenreader-only output
Heading level two clickable link
What is addition? What is
subtraction?
two
two hundred percent
Heading level two clickable link
Converting between fractions and
decimals
ten forty percent sixty percent
three hundred percent
Screenreader-only output
<div class="sr-only">{{_ "In this topic " }}</div>
<div class="progress-indicator {{vid_status}}">
<span class="sr-only">{{_ "there are " }}</span>
<div class="sidebar-icon">
<span class="progress-indicator content-counter">
<div class="sr-only">{{#unless n_pl_videos}}no{{/unless}}</div>
{{#if n_pl_videos}}{{n_pl_videos}}{{/if}}
</span>
</div>
<span class="sr-only">{{_ " videos." }}</span>
</div>
{{#ifcond vid_pct_started "<" 100}}
<span class="sr-only">{{_ "You are still working on " }}</span>
<span aria-hidden="true" role="presentation">{{ >{{vid_pct_started}}%</span>
{{/ifcond}}
{{#ifcond vid_pct_started "===" 100}}
<span class="sr-only">{{_ "You are still working on all of them." }}</span>
<span aria-hidden="true" role="presentation">{{vid_pct_started}}%</span>
{{/ifcond}}
Screenreader-only output
Heading level two clickable link
What is addition? What is
subtraction?
In this topic there are two
videos. You haven't started to
watch videos!
There are two exercises. You are
still working on all of them.
Heading level two clickable link
Converting between fractions and
decimals
In this topic there are ten
videos. Of those you have
completed forty percent. You are
still working on sixty percent.
There are three exercises. You
are still working on all of them.
A11y from the start
A11y from the start
- Include a11y requirements into the Usability
Style Guide
- Leverage the standard HTML5 semantic elements
- Take a11y into account when choosing the
libraries and frameworks
- Make accessible web components available from the
beginning
- Start including automated a11y tests as soon as
possible
<a v-link="link">
<content-icon v-if="kind" :kind="kind" :progress="progress">
</content-icon>
<img :src="validatedThumbnail" class="thumbnail" v-if="showThumbnail" alt="">
<div class="thumbnail" v-else>&nbsp;</div>
<h3>
<span class="visuallyhidden">{{ progress }} {{ kind }} </span>{{ title }}
</h3>
</a>
<template>
<img :src="src" :alt="altText">
</template>
<script>
module.exports = {
props: {
…
computed: {
altText() {
// TODO - I18N
return `${this.progress} - ${this.kind}`;
},
…
},
};
</script>
/content-icon/index.vue
How did we get here?
A11Y Pills & Passion
@LearnEQ Accessibility Pills
A11y Tools Repository
Accessibility is
a shared responsibility
http://www.w3.org/
community/wai-engage/wiki/
Accessibility_Responsibility_Breakdown
Put A11Y in your
dev team life
• A11y Pills & lots of passion
• Make accessibility a SHARED responsibility
• Start a Tools Repository
• Don't rely exclusively on checklists and
automated testing (Involve the USERS!)
• Accessibility is a process, not a project
problem (John B. Metz)
Resources
Guidelines
-Web Content (WCAG)
-User Agent (UAAG)
-Authoring Tools (ATAG)
-WAI ARIA: Accessible Rich Interactive
Applications
POUR principles
Information must be:
Perceivable
Operable
Understandable
Robust
General A11y Tools
WAVE Web Accessibility Evaluation Tool
http://wave.webaim.org/ (Firefox toolbar & Chrome extension)
OpenAjax Alliance (OAA) Accessibility Extension
https://addons.mozilla.org/EN-US/firefox/addon/openajax-
accessibility-exte/
AInspector Sidebar
https://addons.mozilla.org/en-US/firefox/addon/ainspector-sidebar/
Accessibility Evaluation Toolbar
https://addons.mozilla.org/en-US/firefox/addon/accessibility-evaluation-
toolb/
Automated A11y testing
pa11y - https://github.com/nature/pa11y
quails - http://quailjs.org/
Tanaguru - https://github.com/Tanaguru/Tanaguru
TENON - http://tenon.io
Document Structure-Tools
Juicy Studio Accessibility Toolbar
https://addons.mozilla.org/en-uS/firefox/addon/juicy-studio-
accessibility-too/
Jim Thatcher’s Favelets
http://jimthatcher.com/favelets/
NCAM Accessibility QA Favelet
http://ncam.wgbh.org/invent_build/web_multimedia/tools-
guidelines/favelet
Visual ARIA Bookmarklet
http://whatsock.com/training/matrices/visual-aria.htm
tota11y - an accessibility visualization toolkit -
http://khan.github.io/tota11y/
http://webaim.org/articles/gonewild/#alttext
http://accessibility.psu.edu/images/
http://ncam.wgbh.org/experience_learn/educational_media/desc
ribing-images-for-enhanced
http://diagramcenter.org/webinars.html
(resources for accessible images & math)
Describing images -Tools
Color & Contrast - Tools
Contrast Analyzer -
http://www.paciellogroup.com/resources/contrastanalyser/
Accessibility Color Wheel -
http://gmazzocato.altervista.org/colorwheel/wheel.php
CONTRAST-A-WEB - http://dasplankton.de/ContrastA/ Color Safe -
http://colorsafe.co/
WCAG Contrast checker
https://addons.mozilla.org/ca/firefox/addon/wcag-contrast-checker/
Color Palette Accessibility Evaluator -
http://accessibility.oit.ncsu.edu/tools/color-contrast/
Color Extractor Bookmarklet - http://accessibility.oit.ncsu.edu/tools/color-
extractor/ & http://accessibility.oit.ncsu.edu/tools/color-contrast-chrome/
Color Contrast Visualizer
http://www.stainlessvision.com/blog/projects/colour-contrast-visualiser
Writing
-Plain language
-Sentences up to 25 words
-Paragraphs up to 3-4 sentences
-Active voice
-Consistent vocabulary
-Bulleted lists
-Consistent format & navigation
Accessible Video Players
http://www.icant.co.uk/easy-youtube/
Web-Based Media Player Accessibility Comparison Table
Thank you!
Radina Matic
radina@learningequality.org

Contenu connexe

Tendances

Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!
Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!
Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!Parth Lawate
 
Front end developer responsibilities what does a front-end developer do?
Front end developer responsibilities  what does a front-end developer do?Front end developer responsibilities  what does a front-end developer do?
Front end developer responsibilities what does a front-end developer do?Katy Slemon
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Todaydavyjones
 
Rich and Beautiful: Making Attractive Apps in HTML5 [Wpg 2013]
Rich and Beautiful: Making Attractive Apps in HTML5 [Wpg 2013]Rich and Beautiful: Making Attractive Apps in HTML5 [Wpg 2013]
Rich and Beautiful: Making Attractive Apps in HTML5 [Wpg 2013]David Wesst
 
5 Reasons Why Your Website Is[n’t] a Native App (PrDC 2015)
5 Reasons Why Your Website Is[n’t] a Native App (PrDC 2015)5 Reasons Why Your Website Is[n’t] a Native App (PrDC 2015)
5 Reasons Why Your Website Is[n’t] a Native App (PrDC 2015)David Wesst
 
Apache Flex and the imperfect Web
Apache Flex and the imperfect WebApache Flex and the imperfect Web
Apache Flex and the imperfect Webmasuland
 
Building mobile applications with DrupalGap
Building mobile applications with DrupalGapBuilding mobile applications with DrupalGap
Building mobile applications with DrupalGapAlex S
 
Internship review
Internship reviewInternship review
Internship reviewPAWAN KUMAR
 
Client Building Functional webapps.
Client   Building Functional webapps.Client   Building Functional webapps.
Client Building Functional webapps.Arun Kumar
 
Introduction to Browser Internals
Introduction to Browser InternalsIntroduction to Browser Internals
Introduction to Browser InternalsSiva Arunachalam
 
Web Development for UX Designers
Web Development for UX DesignersWeb Development for UX Designers
Web Development for UX DesignersAshlimarie
 
Front end for back end developers
Front end for back end developersFront end for back end developers
Front end for back end developersWojciech Bednarski
 
Sergey Ilinsky Presentation Ample Sdk
Sergey Ilinsky Presentation Ample SdkSergey Ilinsky Presentation Ample Sdk
Sergey Ilinsky Presentation Ample SdkAjax Experience 2009
 
Chrome Extension Development - Adam Horvath, Google Technology User Group, Sy...
Chrome Extension Development - Adam Horvath, Google Technology User Group, Sy...Chrome Extension Development - Adam Horvath, Google Technology User Group, Sy...
Chrome Extension Development - Adam Horvath, Google Technology User Group, Sy...adamhorvath
 
HTML5: The Parts You Care About - 4/Nov/13 - PrDC Saskatoon, SK
HTML5: The Parts You Care About - 4/Nov/13 - PrDC Saskatoon, SKHTML5: The Parts You Care About - 4/Nov/13 - PrDC Saskatoon, SK
HTML5: The Parts You Care About - 4/Nov/13 - PrDC Saskatoon, SKDavid Wesst
 

Tendances (19)

Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!
Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!
Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!
 
Html5 Overview
Html5 OverviewHtml5 Overview
Html5 Overview
 
Front end developer responsibilities what does a front-end developer do?
Front end developer responsibilities  what does a front-end developer do?Front end developer responsibilities  what does a front-end developer do?
Front end developer responsibilities what does a front-end developer do?
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
 
Rich and Beautiful: Making Attractive Apps in HTML5 [Wpg 2013]
Rich and Beautiful: Making Attractive Apps in HTML5 [Wpg 2013]Rich and Beautiful: Making Attractive Apps in HTML5 [Wpg 2013]
Rich and Beautiful: Making Attractive Apps in HTML5 [Wpg 2013]
 
5 Reasons Why Your Website Is[n’t] a Native App (PrDC 2015)
5 Reasons Why Your Website Is[n’t] a Native App (PrDC 2015)5 Reasons Why Your Website Is[n’t] a Native App (PrDC 2015)
5 Reasons Why Your Website Is[n’t] a Native App (PrDC 2015)
 
Apache Flex and the imperfect Web
Apache Flex and the imperfect WebApache Flex and the imperfect Web
Apache Flex and the imperfect Web
 
Building mobile applications with DrupalGap
Building mobile applications with DrupalGapBuilding mobile applications with DrupalGap
Building mobile applications with DrupalGap
 
Internship review
Internship reviewInternship review
Internship review
 
Client Building Functional webapps.
Client   Building Functional webapps.Client   Building Functional webapps.
Client Building Functional webapps.
 
Introduction to Browser Internals
Introduction to Browser InternalsIntroduction to Browser Internals
Introduction to Browser Internals
 
Web Development for UX Designers
Web Development for UX DesignersWeb Development for UX Designers
Web Development for UX Designers
 
Front end for back end developers
Front end for back end developersFront end for back end developers
Front end for back end developers
 
Sergey Ilinsky Presentation Ample Sdk
Sergey Ilinsky Presentation Ample SdkSergey Ilinsky Presentation Ample Sdk
Sergey Ilinsky Presentation Ample Sdk
 
Chrome Extension Development - Adam Horvath, Google Technology User Group, Sy...
Chrome Extension Development - Adam Horvath, Google Technology User Group, Sy...Chrome Extension Development - Adam Horvath, Google Technology User Group, Sy...
Chrome Extension Development - Adam Horvath, Google Technology User Group, Sy...
 
HTML5: The Parts You Care About - 4/Nov/13 - PrDC Saskatoon, SK
HTML5: The Parts You Care About - 4/Nov/13 - PrDC Saskatoon, SKHTML5: The Parts You Care About - 4/Nov/13 - PrDC Saskatoon, SK
HTML5: The Parts You Care About - 4/Nov/13 - PrDC Saskatoon, SK
 
Booting up with polymer
Booting up with polymerBooting up with polymer
Booting up with polymer
 
WEB DEVELOPMENT
WEB DEVELOPMENTWEB DEVELOPMENT
WEB DEVELOPMENT
 
PPT
PPTPPT
PPT
 

En vedette

Web 2.0: perspectivas para a EAD
Web 2.0: perspectivas para a EADWeb 2.0: perspectivas para a EAD
Web 2.0: perspectivas para a EADEAD Amazon
 
Digitizing EFL materials 英語学習教材をディジタイズする
Digitizing EFL materials 英語学習教材をディジタイズするDigitizing EFL materials 英語学習教材をディジタイズする
Digitizing EFL materials 英語学習教材をディジタイズするParisa Mehran
 
Back to school, 2016
Back to school, 2016Back to school, 2016
Back to school, 2016Parisa Mehran
 
How history of International Relations affect our everyday lives
How history of International Relations affect our everyday livesHow history of International Relations affect our everyday lives
How history of International Relations affect our everyday livesMarvin Njau
 
The height of the Pilgrimages
The height of the PilgrimagesThe height of the Pilgrimages
The height of the PilgrimagesJ Luque
 
Curso de Moodle Tutorial Moodle Parte 2 de 5
Curso de Moodle Tutorial Moodle Parte 2 de 5Curso de Moodle Tutorial Moodle Parte 2 de 5
Curso de Moodle Tutorial Moodle Parte 2 de 5EAD Amazon
 
Curso de Moodle Tutorial Moodle Parte 1 de 5
Curso de Moodle Tutorial Moodle Parte 1 de 5Curso de Moodle Tutorial Moodle Parte 1 de 5
Curso de Moodle Tutorial Moodle Parte 1 de 5EAD Amazon
 
EU Food Regulation on Additives, Novel Foods and Food Contact Materials
EU Food Regulation on Additives, Novel Foods and Food Contact MaterialsEU Food Regulation on Additives, Novel Foods and Food Contact Materials
EU Food Regulation on Additives, Novel Foods and Food Contact MaterialsDaniele Pisanello
 
Looking at Innovations in Curriculum through the Lens of 21st Century Skills
Looking at Innovations in Curriculum through the Lens of 21st Century SkillsLooking at Innovations in Curriculum through the Lens of 21st Century Skills
Looking at Innovations in Curriculum through the Lens of 21st Century SkillsParisa Mehran
 
Minna no-nihongo-ngu phap-50_bai
Minna no-nihongo-ngu phap-50_baiMinna no-nihongo-ngu phap-50_bai
Minna no-nihongo-ngu phap-50_baiTung Nguyen
 
Mobinius Technology Infographics - Comparison Android vs. iOS
Mobinius Technology Infographics - Comparison Android vs. iOSMobinius Technology Infographics - Comparison Android vs. iOS
Mobinius Technology Infographics - Comparison Android vs. iOSMobinius Technology
 

En vedette (16)

Visanet 5 pgr cometeu crime
Visanet 5   pgr cometeu crimeVisanet 5   pgr cometeu crime
Visanet 5 pgr cometeu crime
 
Web 2.0: perspectivas para a EAD
Web 2.0: perspectivas para a EADWeb 2.0: perspectivas para a EAD
Web 2.0: perspectivas para a EAD
 
EE_Portofolio_2017
EE_Portofolio_2017EE_Portofolio_2017
EE_Portofolio_2017
 
Taller #3
Taller #3Taller #3
Taller #3
 
Claudia, suellen
Claudia, suellenClaudia, suellen
Claudia, suellen
 
historia inspiradora
historia inspiradora historia inspiradora
historia inspiradora
 
Digitizing EFL materials 英語学習教材をディジタイズする
Digitizing EFL materials 英語学習教材をディジタイズするDigitizing EFL materials 英語学習教材をディジタイズする
Digitizing EFL materials 英語学習教材をディジタイズする
 
Back to school, 2016
Back to school, 2016Back to school, 2016
Back to school, 2016
 
How history of International Relations affect our everyday lives
How history of International Relations affect our everyday livesHow history of International Relations affect our everyday lives
How history of International Relations affect our everyday lives
 
The height of the Pilgrimages
The height of the PilgrimagesThe height of the Pilgrimages
The height of the Pilgrimages
 
Curso de Moodle Tutorial Moodle Parte 2 de 5
Curso de Moodle Tutorial Moodle Parte 2 de 5Curso de Moodle Tutorial Moodle Parte 2 de 5
Curso de Moodle Tutorial Moodle Parte 2 de 5
 
Curso de Moodle Tutorial Moodle Parte 1 de 5
Curso de Moodle Tutorial Moodle Parte 1 de 5Curso de Moodle Tutorial Moodle Parte 1 de 5
Curso de Moodle Tutorial Moodle Parte 1 de 5
 
EU Food Regulation on Additives, Novel Foods and Food Contact Materials
EU Food Regulation on Additives, Novel Foods and Food Contact MaterialsEU Food Regulation on Additives, Novel Foods and Food Contact Materials
EU Food Regulation on Additives, Novel Foods and Food Contact Materials
 
Looking at Innovations in Curriculum through the Lens of 21st Century Skills
Looking at Innovations in Curriculum through the Lens of 21st Century SkillsLooking at Innovations in Curriculum through the Lens of 21st Century Skills
Looking at Innovations in Curriculum through the Lens of 21st Century Skills
 
Minna no-nihongo-ngu phap-50_bai
Minna no-nihongo-ngu phap-50_baiMinna no-nihongo-ngu phap-50_bai
Minna no-nihongo-ngu phap-50_bai
 
Mobinius Technology Infographics - Comparison Android vs. iOS
Mobinius Technology Infographics - Comparison Android vs. iOSMobinius Technology Infographics - Comparison Android vs. iOS
Mobinius Technology Infographics - Comparison Android vs. iOS
 

Similaire à Walking Down the A11y Road - Lessons Learned from Working on Accessibility of a Django Project

Responsive Websites
Responsive WebsitesResponsive Websites
Responsive WebsitesJoe Seifi
 
Beyond the Checklists - Demystifying Accessibility Testing and Implementation...
Beyond the Checklists - Demystifying Accessibility Testing and Implementation...Beyond the Checklists - Demystifying Accessibility Testing and Implementation...
Beyond the Checklists - Demystifying Accessibility Testing and Implementation...Radina Matic
 
Visualized Conference and jQuery Conference
Visualized Conference and jQuery ConferenceVisualized Conference and jQuery Conference
Visualized Conference and jQuery ConferenceKeiichiro Ono
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
A Gentle introduction to Web Development & Django
A Gentle introduction to Web Development & DjangoA Gentle introduction to Web Development & Django
A Gentle introduction to Web Development & DjangoPRASANNAVENK
 
Build 2017 - B8100 - What's new and coming for Windows UI: XAML and composition
Build 2017 - B8100 - What's new and coming for Windows UI: XAML and compositionBuild 2017 - B8100 - What's new and coming for Windows UI: XAML and composition
Build 2017 - B8100 - What's new and coming for Windows UI: XAML and compositionWindows Developer
 
Wordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The NextwebWordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The NextwebGeorge Kanellopoulos
 
Data and Business Team Collaboration
Data and Business Team CollaborationData and Business Team Collaboration
Data and Business Team CollaborationApple
 
Introduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS PractitionersIntroduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS PractitionersEmanuele Della Valle
 
Responsive Responsive Design
Responsive Responsive DesignResponsive Responsive Design
Responsive Responsive DesignTim Kadlec
 
Self Guiding User Experience
Self Guiding User ExperienceSelf Guiding User Experience
Self Guiding User ExperienceSri Ambati
 
Progressive web app PWA - il futuro del web
Progressive web app PWA - il futuro del webProgressive web app PWA - il futuro del web
Progressive web app PWA - il futuro del webAngelo Gino Varrati
 
WSO2Con-Asia-2014 : Build a Connected Business (final keynote)
WSO2Con-Asia-2014 : Build a Connected Business (final keynote)WSO2Con-Asia-2014 : Build a Connected Business (final keynote)
WSO2Con-Asia-2014 : Build a Connected Business (final keynote)Asanka Abeysinghe
 
WSO2Con Asia 2014 - Complete Your Corporate Jigsaw - Build a Connected Business
WSO2Con Asia 2014 - Complete Your Corporate Jigsaw - Build a Connected BusinessWSO2Con Asia 2014 - Complete Your Corporate Jigsaw - Build a Connected Business
WSO2Con Asia 2014 - Complete Your Corporate Jigsaw - Build a Connected BusinessWSO2
 
Inclusive Design: an Introduction to Accessibility - Radina Matic - DrupalCon...
Inclusive Design: an Introduction to Accessibility - Radina Matic - DrupalCon...Inclusive Design: an Introduction to Accessibility - Radina Matic - DrupalCon...
Inclusive Design: an Introduction to Accessibility - Radina Matic - DrupalCon...Radina Matic
 
MPhil Lecture of Data Vis for Presentation
MPhil Lecture of Data Vis for PresentationMPhil Lecture of Data Vis for Presentation
MPhil Lecture of Data Vis for PresentationShawn Day
 
夜宴43期《Auto Tools》
夜宴43期《Auto Tools》夜宴43期《Auto Tools》
夜宴43期《Auto Tools》Koubei Banquet
 

Similaire à Walking Down the A11y Road - Lessons Learned from Working on Accessibility of a Django Project (20)

Responsive Websites
Responsive WebsitesResponsive Websites
Responsive Websites
 
Beyond the Checklists - Demystifying Accessibility Testing and Implementation...
Beyond the Checklists - Demystifying Accessibility Testing and Implementation...Beyond the Checklists - Demystifying Accessibility Testing and Implementation...
Beyond the Checklists - Demystifying Accessibility Testing and Implementation...
 
Visualized Conference and jQuery Conference
Visualized Conference and jQuery ConferenceVisualized Conference and jQuery Conference
Visualized Conference and jQuery Conference
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design
 
A Gentle introduction to Web Development & Django
A Gentle introduction to Web Development & DjangoA Gentle introduction to Web Development & Django
A Gentle introduction to Web Development & Django
 
Build 2017 - B8100 - What's new and coming for Windows UI: XAML and composition
Build 2017 - B8100 - What's new and coming for Windows UI: XAML and compositionBuild 2017 - B8100 - What's new and coming for Windows UI: XAML and composition
Build 2017 - B8100 - What's new and coming for Windows UI: XAML and composition
 
Wordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The NextwebWordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The Nextweb
 
Data and Business Team Collaboration
Data and Business Team CollaborationData and Business Team Collaboration
Data and Business Team Collaboration
 
Introduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS PractitionersIntroduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS Practitioners
 
Responsive Responsive Design
Responsive Responsive DesignResponsive Responsive Design
Responsive Responsive Design
 
Self Guiding User Experience
Self Guiding User ExperienceSelf Guiding User Experience
Self Guiding User Experience
 
Progressive web app PWA - il futuro del web
Progressive web app PWA - il futuro del webProgressive web app PWA - il futuro del web
Progressive web app PWA - il futuro del web
 
WSO2Con-Asia-2014 : Build a Connected Business (final keynote)
WSO2Con-Asia-2014 : Build a Connected Business (final keynote)WSO2Con-Asia-2014 : Build a Connected Business (final keynote)
WSO2Con-Asia-2014 : Build a Connected Business (final keynote)
 
WSO2Con Asia 2014 - Complete Your Corporate Jigsaw - Build a Connected Business
WSO2Con Asia 2014 - Complete Your Corporate Jigsaw - Build a Connected BusinessWSO2Con Asia 2014 - Complete Your Corporate Jigsaw - Build a Connected Business
WSO2Con Asia 2014 - Complete Your Corporate Jigsaw - Build a Connected Business
 
Inclusive Design: an Introduction to Accessibility - Radina Matic - DrupalCon...
Inclusive Design: an Introduction to Accessibility - Radina Matic - DrupalCon...Inclusive Design: an Introduction to Accessibility - Radina Matic - DrupalCon...
Inclusive Design: an Introduction to Accessibility - Radina Matic - DrupalCon...
 
Start Your Project
Start Your ProjectStart Your Project
Start Your Project
 
MPhil Lecture of Data Vis for Presentation
MPhil Lecture of Data Vis for PresentationMPhil Lecture of Data Vis for Presentation
MPhil Lecture of Data Vis for Presentation
 
夜宴43期《Auto Tools》
夜宴43期《Auto Tools》夜宴43期《Auto Tools》
夜宴43期《Auto Tools》
 
Banquet 43
Banquet 43Banquet 43
Banquet 43
 
Building Web Hack Interfaces
Building Web Hack InterfacesBuilding Web Hack Interfaces
Building Web Hack Interfaces
 

Dernier

Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 

Dernier (20)

Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

Walking Down the A11y Road - Lessons Learned from Working on Accessibility of a Django Project

  • 1. Walking Down the A11y Road Lessons Learned from Working on Accessibility of a Django Project Radina Matic radina@learningequality.org @RadinaMatic
  • 2. Radina Matic - translator & technical writer - open software & technology enthusiast Web and Data Visualization at Rectory Stats Office, University of Barcelona Foundation for Learning Equality radina.matic@ub.edu radina@learningequality.org @RadinaMatic
  • 3.
  • 4.
  • 5. Why do we care?
  • 6. Who benefits? World Health Organization fact sheet from 2014 Disabled people in the world (1000 millions) People living in Europe (742 millions)
  • 7. Who benefits? EU-Statistics on Income and Living Conditions from 2014 Millions!
  • 10. Good for Business - Benefits SEO - Improves mobile access and overall usability - Increases market share - PR impact derived from corporate social responsibility - Reduces legal risk
  • 11. Don’t put up fires Plan accessibility as early as possible, don’t wait for QA
  • 12. Standards & Laws - US - Section 508 (1998) & ADA - 21st Century & Video Accessibility Act (2010) - European Standard on accessibility requirements for public procurement of ICT products and services (EN 301 549 - 2014) - Web Content Accessibility Guidelines (WCAG) 2.0 as ISO/IEC 40500 (2012)
  • 13. Accessibility mishaps make headlines (and courtrooms) - National Federation of the Blind v. TARGET (2008) - National Association of the Deaf (NAD) v. Netflix (2012) - Google Books (2012) - Harvard & MIT (edX) MOOCs (2015) http://www.karlgroves.com/2011/11/15/ list-of-web-accessibility-related-litigation- and-settlements/ (~230 cases up to 2015)
  • 15. DISCOVERABILITY FEEDBACK & It's not you. Bad doors are everywhere https://www.youtube.com/watch?v=yY96hTb8WgI Don Norman about “Norman Doors”
  • 17. Document Structure • Title (unique and descriptive; H1) • Page landmarks (semantic HTML5 or ARIA)
  • 19. Keyboard navigation - Tab & Shift Tab through all the links - Arrow keys through menus - Skip-to links on top (first element after <body>) Define visible focus state! :focus { outline: 0; }
  • 22. Images - The elusive ALT attribute - alt=“?????” - DESCRIBE the image convey both content and functionality - Do not put text inside images (localization) - Decorative images – empty alt=“”
  • 23. Links and Forms Links - Concise - Descriptive Click More Here Forms -Labels -Fieldsets for grouping -Tabbing order
  • 24. Color & Contrast foreground vs. background 3:1 for large text 4.5:1 for smaller text
  • 25. {% if settings.DEBUG %} <script type="text/javascript" src="{% static 'js/tota11y.min.js' %}"></script> {% endif %}
  • 28. OFFER ALTERNATIVES Accessible Multimedia Players Able Video Player - http://www.washington.edu/doit/videos/
  • 32. Screenreader-only output Heading level two clickable link What is addition? What is subtraction? two two hundred percent Heading level two clickable link Converting between fractions and decimals ten forty percent sixty percent three hundred percent
  • 33. Screenreader-only output <div class="sr-only">{{_ "In this topic " }}</div> <div class="progress-indicator {{vid_status}}"> <span class="sr-only">{{_ "there are " }}</span> <div class="sidebar-icon"> <span class="progress-indicator content-counter"> <div class="sr-only">{{#unless n_pl_videos}}no{{/unless}}</div> {{#if n_pl_videos}}{{n_pl_videos}}{{/if}} </span> </div> <span class="sr-only">{{_ " videos." }}</span> </div> {{#ifcond vid_pct_started "<" 100}} <span class="sr-only">{{_ "You are still working on " }}</span> <span aria-hidden="true" role="presentation">{{ >{{vid_pct_started}}%</span> {{/ifcond}} {{#ifcond vid_pct_started "===" 100}} <span class="sr-only">{{_ "You are still working on all of them." }}</span> <span aria-hidden="true" role="presentation">{{vid_pct_started}}%</span> {{/ifcond}}
  • 34. Screenreader-only output Heading level two clickable link What is addition? What is subtraction? In this topic there are two videos. You haven't started to watch videos! There are two exercises. You are still working on all of them. Heading level two clickable link Converting between fractions and decimals In this topic there are ten videos. Of those you have completed forty percent. You are still working on sixty percent. There are three exercises. You are still working on all of them.
  • 35. A11y from the start
  • 36. A11y from the start - Include a11y requirements into the Usability Style Guide - Leverage the standard HTML5 semantic elements - Take a11y into account when choosing the libraries and frameworks - Make accessible web components available from the beginning - Start including automated a11y tests as soon as possible
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43. <a v-link="link"> <content-icon v-if="kind" :kind="kind" :progress="progress"> </content-icon> <img :src="validatedThumbnail" class="thumbnail" v-if="showThumbnail" alt=""> <div class="thumbnail" v-else>&nbsp;</div> <h3> <span class="visuallyhidden">{{ progress }} {{ kind }} </span>{{ title }} </h3> </a>
  • 44. <template> <img :src="src" :alt="altText"> </template> <script> module.exports = { props: { … computed: { altText() { // TODO - I18N return `${this.progress} - ${this.kind}`; }, … }, }; </script> /content-icon/index.vue
  • 45. How did we get here?
  • 46. A11Y Pills & Passion @LearnEQ Accessibility Pills
  • 48. Accessibility is a shared responsibility http://www.w3.org/ community/wai-engage/wiki/ Accessibility_Responsibility_Breakdown
  • 49. Put A11Y in your dev team life • A11y Pills & lots of passion • Make accessibility a SHARED responsibility • Start a Tools Repository • Don't rely exclusively on checklists and automated testing (Involve the USERS!) • Accessibility is a process, not a project problem (John B. Metz)
  • 51. Guidelines -Web Content (WCAG) -User Agent (UAAG) -Authoring Tools (ATAG) -WAI ARIA: Accessible Rich Interactive Applications
  • 52. POUR principles Information must be: Perceivable Operable Understandable Robust
  • 53. General A11y Tools WAVE Web Accessibility Evaluation Tool http://wave.webaim.org/ (Firefox toolbar & Chrome extension) OpenAjax Alliance (OAA) Accessibility Extension https://addons.mozilla.org/EN-US/firefox/addon/openajax- accessibility-exte/ AInspector Sidebar https://addons.mozilla.org/en-US/firefox/addon/ainspector-sidebar/ Accessibility Evaluation Toolbar https://addons.mozilla.org/en-US/firefox/addon/accessibility-evaluation- toolb/ Automated A11y testing pa11y - https://github.com/nature/pa11y quails - http://quailjs.org/ Tanaguru - https://github.com/Tanaguru/Tanaguru TENON - http://tenon.io
  • 54. Document Structure-Tools Juicy Studio Accessibility Toolbar https://addons.mozilla.org/en-uS/firefox/addon/juicy-studio- accessibility-too/ Jim Thatcher’s Favelets http://jimthatcher.com/favelets/ NCAM Accessibility QA Favelet http://ncam.wgbh.org/invent_build/web_multimedia/tools- guidelines/favelet Visual ARIA Bookmarklet http://whatsock.com/training/matrices/visual-aria.htm tota11y - an accessibility visualization toolkit - http://khan.github.io/tota11y/
  • 56. Color & Contrast - Tools Contrast Analyzer - http://www.paciellogroup.com/resources/contrastanalyser/ Accessibility Color Wheel - http://gmazzocato.altervista.org/colorwheel/wheel.php CONTRAST-A-WEB - http://dasplankton.de/ContrastA/ Color Safe - http://colorsafe.co/ WCAG Contrast checker https://addons.mozilla.org/ca/firefox/addon/wcag-contrast-checker/ Color Palette Accessibility Evaluator - http://accessibility.oit.ncsu.edu/tools/color-contrast/ Color Extractor Bookmarklet - http://accessibility.oit.ncsu.edu/tools/color- extractor/ & http://accessibility.oit.ncsu.edu/tools/color-contrast-chrome/ Color Contrast Visualizer http://www.stainlessvision.com/blog/projects/colour-contrast-visualiser
  • 57. Writing -Plain language -Sentences up to 25 words -Paragraphs up to 3-4 sentences -Active voice -Consistent vocabulary -Bulleted lists -Consistent format & navigation
  • 58. Accessible Video Players http://www.icant.co.uk/easy-youtube/ Web-Based Media Player Accessibility Comparison Table
  • 59.