The UK government's GOV.UK team writes about making public sector websites accessible, including testing with assistive technology and user research.
Commenters call it a good resource on building accessible websites, and note GOV.UK's YouTube player choice is accessible compared to most video players.
The only way I'm aware of today is to learn to use assistive technologies and use them on the right combinations of browser/OS/version. These are recommendations for common combinations. [0]
I've given the CI deal a good amount of thought. You'd have to go through the trouble of:
- Provisioning a Windows VM with specific versions of browsers (e.g. IE11) and AT (e.g. JAWS 17, the versions differ quite significantly)
- Writing an automation suite that is capable of controlling the browser and AT (Selenium probably does fine), but crucially interpreting the feedback from the assistive tool to check for correctness. This is tremendously hard. Either using some debugging APIs if any exist in the various assistive tools, or reading memory / reverse engineering using IDA, or capturing the audio output to the sound card and running it through speech recognition to figure out if what was said by the screen reader is what you'd expect. With something like Dragon Dictate you'd have to figure out how to trigger voice commands.
- Expose the VM using an API that you can call from your test suite
- `expect(jawsOutput).toBe("Type in two or more characters for results.")`
That's a potentially tremendously profitable SaaS offering (to the right companies), if someone can build it.
[0]: https://accessibility.blog.gov.uk/2016/11/01/results-of-the-2016-gov-uk-assistive-technology-survey/
Creating accessible websites is a pain. And doing it properly is expensive.
There's many screenreaders and they can get expensive. They also can have quirks of their own. UK government accessibility blog is a good resource on how to create accessible websites and forms[0].
I also tested accessibe.com's frontpage to see how accessible their own site is. For this test I used Google Chrome with Lighthouse[1] accessibility testing set to desktop. Lighthouse reported a score of 84/100 where bigger is better.
Some links don't have text, but an image with an alt text. Some text colors are not WCAG contrast compliant. The viewport maximum-scale is limited to 1, so the user cannot zoom on the website on a mobile device.
I also ran another accessibility checker called axe[2]. It reported 88 issues. Funnily enough, on the blog post they slammed icon fonts such as fontawesome or icomoon, and they themselves use icomoon without a screen readable text. Most of the issues were related to links not having discernible text, elements not having sufficient color contrast, and lack of landmarks on the page content.
[0]: https://accessibility.blog.gov.uk/
[1]: https://developers.google.com/web/tools/lighthouse
[2]: https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd
I've only skimmed through the Phase One report, but not surprised to see the UK government website (GOV.UK) mentioned.
The massive GOV.UK website is an excellent example of using open source to provide public services and information. An example service: the official government coronovirus dashboard - https://coronavirus.data.gov.uk/ Scroll down to the footer and there is a link to all the frontend source code on GitHub.
Information, not just source code, also benefits from being made open. For example, back in 2016, a UK government blog on accessibility shared a series of posters on designing for accessibility [1]. Many readers of the blog wanted to translate the posters. They were posted on GitHub and have been translated into Japanese, Estonian, Russian and many more languages: https://github.com/UKHomeOffice/posters/tree/master/accessibility/dos-donts
Finally, also equally important is open data: https://data.gov.uk/
[1] Dos and don'ts on designing for accessibility (2016): https://accessibility.blog.gov.uk/2016/09/02/dos-and-donts-on-designing-for-accessibility/
Accessibility (a11y) is an interesting and exciting topic, but it's exhausting to see yet another SEO guy to add his two cents about it. From a technical point of view, web a11y is almost exclusively about semantics or machine readability. There are two kinds of machines: web crawlers and screen readers for visually impaired humans. For whom would you like to work? You are not magically improving a11y by doing good SEO, you are magically improving SEO by doing good a11y. Stop listening to SEO consultants. Build good websites.
Recommendable a11y resources include the A11Y Project[1], WebAIM[2], the W3C[3], and GOV.UK[4]. The WAVE tool[5] and the Vox Media accessibility guidelines[6] are also really helpful.
--
[1] http://a11yproject.com
[2] http://webaim.org/intro/
[3] https://www.w3.org/TR/UNDERSTANDING-WCAG20/intro.html
[4] https://accessibility.blog.gov.uk
[5] http://wave.webaim.org
[6] http://accessibility.voxmedia.com
Absolutely. Take a look at [this list][gov-uk-list] of free alternatives to Dragon. The only good free alternatives they list are the closed source ones built-in to Windows and Mac. Or have a look at [this announcement][nvda-announcement] touting open-source work to integrate closed-source voice recognition engines with an otherwise open-source piece of accessibility software.
gov-uk-list: https://accessibility.blog.gov.uk/2018/09/27/assistive-technology-tools-you-can-use-at-no-cost/
nvda-announcement: https://www.afb.org/aw/19/4/15104
That doesn’t always work though. Some people need to adjust their colours for lower contrast, for example: https://accessibility.blog.gov.uk/2016/05/26/accessibility-and-me-marian-foley/ . Ideally sites would also work properly if the user changes the foreground and background colours to suit their needs.