Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Tales of Accessibility Failures
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Eva Ferreira
September 19, 2022
Programming
240
0
Share
Tales of Accessibility Failures
Shift Conference, Croatia / September 2022
Eva Ferreira
September 19, 2022
More Decks by Eva Ferreira
See All by Eva Ferreira
Criptografía para enamorados 💖
evaferreira
0
14
Cryptography for lovers 💖
evaferreira
0
44
Bulletproof your Design system
evaferreira
0
74
Good intentions gone bad
evaferreira
0
290
Bulletproof your Design System
evaferreira
0
170
Tales of Accessibility Failures
evaferreira
0
83
La accesibilidad de todos los días - HackAcademy
evaferreira
0
160
Rescue the Dead Horse
evaferreira
0
160
De 45 a 85
evaferreira
0
120
Other Decks in Programming
See All in Programming
Sans tests, vos agents ne sont pas fiables
nabondance
0
140
「なんか〇〇ライブラリで脆弱性あるみたいなんだけど。。。」から始める脆弱性対応 / First Steps in Vulnerability Response
mackey0225
2
130
【ディップ|26年新卒研修資料】TDD実装演習
dip_tech
PRO
0
200
Import assertionsが消えた日~ECMAScriptの仕様はどう決まり、なぜ覆るのか~
bicstone
2
190
新規プロダクトを高速で生み出すハーネスエンジニアリング
seanchas116
3
200
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
4
470
いつか誰かが、と思っていた フロントエンド刷新5年間の実践知
kiichisugihara
1
280
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
1
110
20260514 - build with ai 2026 - build LINE Bot with Gemini CLI
line_developers_tw
PRO
0
450
なぜあなたのコードには「コシ」がないのか?〜AI時代に問う、最後まで美味しい設計と戦略〜 #phpconkagawa / phpconkagawa2026
shogogg
0
210
🦞OpenClaw works with AWS
licux
1
370
1人1案件のプロダクトエンジニア時代に、"プロセス監督"としてチャレンジしたこと
non0113
0
120
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
280
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
230
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
200
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
360
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
170
YesSQL, Process and Tooling at Scale
rocio
174
15k
Tell your own story through comics
letsgokoyo
1
920
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
810
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
260
Transcript
Tales of Accessibility Failures Eva Ferreira – Shift Conference, 2022
Hi, I’m Eva! Front-end Engineer at mabl Google Developer Expert
& CSSConf Argentina organizer @evaferreira92
Not another “This is how you do a11y” talk Accessibility
mistakes, failed assumptions and myths I mistakenly believed in. @evaferreira92
@evaferreira92 YOU DON’T HAVE TO LEARN FROM YOUR MISTAKES IF
YOU CAN LEARN FROM MINE
⚠️WARNING⚠️ This is a work in progress. I will, most
definitely, keep on messing up. @evaferreira92
A11y personas Understanding disabilities and assistive technologies
What is a disability? “Accessibility is for blind people”
Disability: A failed interaction between the environment and a person
with a medical condition.
Diverse group of people, a wide range of needs @evaferreira92
15% of world’s population. has a permanent disability. @evaferreira92
None
Simplest things tend to have the biggest impact. I went
ALL IN into aria and screen readers
I wrongly prioritized screen readers over keyboard navigation Begin your
a11y journey with simple and impactful changes. @evaferreira92
Simple, impactful • Color contrast • Semantics • Labels on
forms • Keyboard navigation Outlines 💅 Skip navigation links @evaferreira92
Outlines
@evaferreira92
https://www.sarasoueidan.com Use outlines on your focusable elements
https://developer.mozilla.org
Skip navigation links
None
Sometimes simple is not that simple “Code debt just called;
it wants your happiness back.” @evaferreira92
Prioritize Impact and easy to solve @evaferreira92
Impact, use common sense @evaferreira92
Easy to solve, depends on the codebase @evaferreira92
Prioritize • Big impact, easy to solve • Mix with
small impact, easy to solve Ideal for Fridays 💃 • Big impact, hard to solve • Small impact, hard to solve @evaferreira92
People mean well … Most of the time.
Aria-label all the things! The Infobae & the React Testing
Library stories @evaferreira92
@evaferreira92
@evaferreira92
@evaferreira92
@evaferreira92
Why?
@evaferreira92 https://webaim.org/blog/aria-cause-solution
“Every image should have an alt text!” @evaferreira92
Rules for alternative texts • The alt attribute is compulsory
• It can be empty if the image is decorative (alt=“”) • Do not be redundant • If it has an action, describe the action, not the image @evaferreira92
https://www.w3.org/WAI/tutorials/images/decision-tree
The SEO in the room And the story of how
every image had the same alt text. @evaferreira92
Testing correctly Having 98/100 on Lighthouse won’t save you.
None
None
Manual tests @evaferreira92
Manual tests • Axe Developer tools • WAVE • Keyboard
navigation • Screen readers @evaferreira92
What do we test? We test users’ stories. @evaferreira92
Can a user with [assistive technology] do [action]? @evaferreira92
Test users’ stories • Can a user with keyboard navigation
- create an account? • Can a user with a screen reader - add a product to the cart? • Can a user watch this video - using captions? @evaferreira92
Test for people. @evaferreira92
Automated tests @evaferreira92
WCAG • Set of rules created by W3C a long
time ago. • Standard in the industry • What gives the foundation for a11y laws all around the globe • Different success criteria depending on target audience, target country, type of company, etc. @evaferreira92
Of course, always aim for no errors. @evaferreira92
Automated tools • Axe by Deque • Lighthouse • Mabl
• Storybook add-on @evaferreira92
Automated tools • Add these to your pipelines • CI/CD
should fail when requirements are not met. @evaferreira92
The community & A11y ownership Team effort and gate-keeping
You cannot out-code bad design. Accessibility is a team effort.
No gate-keeping allowed. @evaferreira92
So, You made a mistake. What happens when you mess
up.
You try again! * Easier said than done @evaferreira92
None
Mistakes are: • Temporal • Localized • Changeable @evaferreira92
You don’t need to be always right. Aim for making
new mistakes instead of repeating old ones. @evaferreira92
You need to try, you need to care. @evaferreira92
Thanks! @evaferreira92