# data[].attributes.title
Shifting left, or: making accessibility easier by doing it earlier

# data[].attributes.blurb.html
Web accessibility is easier to achieve and maintain with the right tools. Some are useful to help you make the right choices, others can find certain problems automatically, often even before your product or page ships. In this talk, Hidde will tell us all about the tools to use to improve web accessibility.

# data[].attributes.slidedeck.data[].slides[].desc.html
👈Shifting left or: making accessibility easier by doing it earlier Hidde de Vries, Sanity online meetup, Online, 27 July 2022 @hdv

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Hi, I’m Hidde developer relations at Sanity + accessibility specialist sanity.io hidde.blog

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv accessibility, a brief intro

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Web accessibility to ensure people with disabilities can use our site/app

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Web accessibility to ensure people with disabilities can buy our product

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Web accessibility to ensure people with disabilities can use our service

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv 1-2% 4% blind/visually impaired colour blind ` OOGVERENIGING (1 IN 12 MEN, 1 IN 250 WOMEN) neurological conditions This concerns a lot of people 9% motor impairments 15% deaf/heard of hearing low numerate / low literate HOORWIJZER ALGEMENE REKENKAMER

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv A lot of people - zoom in web pages use high contrast modes have screenreader need audio/video transcribed do not use a mouse use voice recognition prefer reduced motion W3C/WAI, How People with Disabilities Use the Web https://www.w3.org/WAI/people-use-web/tools-techniques

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv assume less about how people use your product

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv What to test?

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv a11y standards + Best practices + (You’ll need all of the above) User testing

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv a11y standards + Best practices + (You’ll need all of the above) User testing

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv WCAG 2.1 w3.org/TR/WCAG21 WCAG: internationally implemented guidelines that provide a baseline for testing web accessibility

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv quick reference w3.org/WAI/WCAG21/quickref/

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv this is wcag thisiswcag.com

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv 50 Success Criteria* - about issues people with - disabilities face testable (some by humans, some by machines)

counting Level A + AA criteria in WCAG 2.1 EXAMPLES

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv a11y standards + Best practices + (You’ll need all of the above) User testing

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv How to test?

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual vs automated You will need both!

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual vs automated <img src=”50-percent-off” /> 50% off

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual vs automated <img src=”50-percent-off” /> Problem: there is no alt (machines can establish this) 50% off

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual vs automated <img src=”50-percent-off” alt=”25% off”/> f Problem: the alt does not re lect what image says (would require machine that can do OCR, most accessibility testing tools don’t) 50% off

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Manual testing Tests that most people on the team can do periodically

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual: page title Is there a title? Does it describe the page?

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual: keyboard
<details> <select> Can I get to all interactive elements? <input> <textarea> <a> <button>

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual: keyboard Can I see where I am? Leverage agile frameworks to provide a robust synopsis for high level overviews. Iterative approaches to corporate strategy foster collaborative thinking to further the overall value proposition. Organically grow the holistic world view of disruptive innovation via workplace diversity and empowerment. Bring to the table win-win survival strategies to ensure proactive domination. At the end of the day, going forward, a new normal that has evolved from generation X is on the runway heading towards a streamlined cloud solution. User generated content in real-time will have multiple touchpoints for offshoring.

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual: images Is the image the only thing in a link? The alt is now the link’s name.

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual: audio Is everything in the audio available as text?

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv “[podcasts] really boomed during the rst months of lockdown. As a deaf person, almost all of these podcasts are inaccessible to me because they don’t have transcripts or I have to wait weeks before they are available. ” fi Darice de Cuba, The Podcast Transcript Experimentation

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual: headings Do headings describe the section they’re a heading of?

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual: headings Is everything that looks like a heading marked up with a hx tag?
<div class=”text-5xl font-medium text-green-600”>Our products</div>

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual: zoom When you zoom in (up to 400%), does everything still work? text should not overlap text should not be cut o f all controls should be usable no horizontal and vertical scrolling f

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual: timing Are time limits over 20hrs or can they be turned o f? f You’ve been logged out automatically

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv manual: color modes Can everything be used with Windows High Contrast Mode on?

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv semi-automated testing Tests that remove some of the manual work so you can make decisions quicker

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Firefox dev tools - Visualise tabbing order

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Firefox dev tools - “no false positives” - integrates with existing tests - runs in major browsers and command line

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Firefox dev tools - Visualise tabbing order - Test Contrast, Keyboard and Text Labels on a page

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv fi Firefox dev tools - Visualise tabbing order - Test Contrast, Keyboard and Text Labels on a page - Simulate colour vision de ciencies / contrast loss

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv html validator validator.nu

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv wave wave.webaim.org

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv automated testing Tests you can run against a website automatically (eg in CI/CD)

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv automated testing Most of these integrate with your CI/CD and can export to interoperable data formats

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv automated testing

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv It’s easier when you do it earlier

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Find barriers in your site before it deploys

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv It’s easier when you do it earlier

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv It’s easier when you do it earlier Eg, pick a CMS that supports accessibility

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv It’s easier when you do it earlier Eg, pick a CMS that supports accessibility, check designs before building

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv It’s easier when you do it earlier Eg, pick a CMS that supports accessibility, check designs before building, check builds before merging

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv It’s easier when you do it earlier Eg, pick a CMS that supports accessibility, check designs before building, check builds before merging, check merged code before shipping, etc

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Wysiwym What you see is what you mean

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv colour contrast Get palettes from images

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv “Make it yours” https://www.sanity.io/blog/sanity-studio-v3-developer-preview

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Sanity Validation rules in Portable Text

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv Example: transition.tk Sanity Custom annotations

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv portable text Custom annotations https://kittygiraudel.com/2022/07/25/international-content-with-sanity-portable-text/

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv portable text Custom annotations https://kittygiraudel.com/2022/07/25/international-content-with-sanity-portable-text/

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv What? How? Manual checks Browser tools CLI tools When? f Accessibility standards Best practices User testing Early, eg with right CMS, auto checks etc O ten, during development Periodically, with audits and user tests

# data[].attributes.slidedeck.data[].slides[].desc.html
@hdv thank you! Questions? Contact/resources talks.hiddedevries.nl @hdv or hidde@sanity.io Typefaces Bungee by David Jonathan Ross (DJR) Rasa by Anna Giedryś, David Březina (Rosetta)

# data[].attributes.resources.data[].title
Involving users in web projects for better accessibility - W3C WAI

# data[].attributes.resources.data[].title
How people with disabilities use the web - tools and techniqeus - W3C WAI

# data[].attributes.resources.data[].title
Things to consider when doing usability testing with disabled people   - Frozen Rockets

# data[].attributes.resources.data[].title
The automated accessibility coverage report - Deque

# data[].attributes.resources.data[].title
The Podcast Transcript Experimentation - Darice de Cuba

# data[].attributes.resources.data[].desc.html
In which the GOV.UK folks compare different accessibility testing engines

# data[].attributes.resources.data[].title
Sanity blog: Make it yours: Studio v3 Developer  Preview

# data[].attributes.resources.data[].title
Kitty Giraudel: International Content in Sanity Portable Text