The Dirty Secrets of Accessibility

103
1
yesterday
JeffreyThompson2
MVP Frequent Contributor
2 1 103

If you are an employee at a government agency in the United States of America, you are probably already aware and worried about a ruling by the Department of Justice that all of your web content needs to hit certain accessibility standards (WCAG 2.1 AA) by a certain date (April 26, 2027 for entities larger than 50,000 with another year given for smaller entities). Somewhere along the way, part of my job became "Accessibility Czar of ArcGIS Online" and I regularly help city staff understand the accessibility rules, coach them through testing, and send angry emails to people who are out of compliance. One thing I have seen time and again in these interactions, is that these staff members have a hard time getting started. I have considered writing this article before, but I've never been brave enough to do it for three reasons.

  1. The rulebook is long and highly legalistic. I simply cannot explain all the rules and it would be counterproductive for me to try.
  2. As my fame has grown, I have become increasingly aware of the Appeal to Authority Fallacy and wary of wading into broad, complicated subjects.
  3. I have some general concerns that this article will eventually be an exhibit in a court case.

So for anyone, especially any lawyers, reading this: The intent of this article is to give people with no experience in accessibility testing and compliance the confidence and principles to get started. It is not everything that I do. It is not everything you should do. This article should not replace anything your bosses or legal team is telling you. If you want to understand a specific rule, go read the rulebook or some other article about it. This article is a starting point, not the destination. Hopefully, that is enough moral and legal cover as I say..

Stop Worrying About The Rules

The rulebook is long, confusing, intimidating and full of jargon. If you try to read it you will be filled with so much fear and confusion that you will give up and won't even try. What I have been trying to get city staff to focus on, is not the rules themselves but the principles behind them. The specifics of the rules flow naturally from these concepts. Actually, it's maybe even better to design for specific people. Let's meet three characters, The Lady In The Sleep Mask, My Colorblind Dad, and The Guy With Dead Mouse Batteries, if these three people can use your website, you have checked most, if not all, of the rules in the rulebook.

The Lady In The Sleep Mask

It's almost bedtime and The Lady In The Sleep Mask needs to use your website. She cannot let any blue light in her eyes or she won't sleep tonight, so she is using a screen reader. A screen reader does what it sounds like it does, it reads the screen. It reads all the text. It also provides audio descriptions of stuff that isn't text, like pictures, maps and icons. The Lady In The Sleep Mask can't navigate around your site unless those descriptions are there for her. That is what Alt Text does. Make sure all your pictures have Alt Text and that it meaningfully describes the picture. Giving screen readers something to read is at least 80% of the game with accessibility.

My Colorblind Dad

Color blindness runs in my family. My dad, uncle and nephew have it. Color blindness is probably the most common disability in the world. (Red-Green is the most common variety, but there are other flavors.) So designing a system where safety critical information requires being able to distinguish between red and green would be a very bad idea and a major violation of ADA requirements.

JeffreyThompson2_0-1785528734311.png

As a kid, my job while riding in the car was to use my good X chromosome to help my dad read the lights. Of course, I wasn't always in the car with him...Yeah, these things terrify me.

Which brings me to the first principle of color design: Color alone must not be used to convey meaning. Once upon a time, I did an article comparing Experience Builder and the JavaScript API, as I wrote I put the positive points in green text (+) and negative one in red text (-). Those (+) and (-) were a deliberate accomodation for color blindness. If you could see color then the colors passed the meaning, but if you're My Colorblind Dad, this meaning was reinforced by the symbols.

The other big principle with color is that text must have enough contrast with it's background. You are a mapper, I'm sure you've thrown a label on a map and then panned it somewhere else and found it was unreadable. Use that experience. If you think "that's a bit hard to read", you're right and you need to do something about it.

The Guy With Dead Mouse Batteries

A guy just came to your site and all of a sudden his mouse isn't working. The batteries are dead and he doesn't have any spares. He still needs to be able to interact with everything on your site and read all the information he would be able to see if he wasn't The Guy With Dead Mouse Batteries. His keyboard still works. Using some combinations of Tab, Shift+Tab, Esc, Enter, Space Bar, and the Arrow Keys, he needs to be able to do everything that someone with a mouse could do and he can't get stuck somewhere he cannot get out of. He also needs an indicator on the screen so he knows what button he's about to click on (if he could click). It would also be confusing if his keyboard focus suddenly shifted to some other part of the application without it being part of a logical interaction that he set off or if navigating the page by pressing Tab didn't follow a reasonable pattern.

The Guy With Dead Mouse Batteries is really going to struggle using your...

Maps. How Could Maps Be Made Accessible?

It is my opinion, that a map is an inherently visual medium and could never be made 100% compliant with the letter of the law here. ESRI has some enhancements planned over the next couple updates to make map interactivity more accessible. Still, I dare you to write a text description that accurately describes the shape of Maryland. And that's just one small piece of information in your basemap. Even if perfection is impossible, we still have to try our best to make accommodations.

For The Guy With Dead Mouse Batteries, if you expect him to get information off a Popup, you need to configure an Action so he can trigger it from the Search Widget or something similar. It's probably better if he doesn't need use your map at all. Can he get all the information he needs with a Feature Info, List or Table Widget?  This is the really the best you can do for The Lady In The Sleep Mask, as well. As a presenter at DevSummit last year put it, "make your map decorative, not functional".

My Colorblind Dad might also struggle with your map if you forgot about him. Remember colors alone shouldn't convey meaning, so throw some labels on your map and your labels have to have enough contrast. Using casing around your label lettering usually does the trick here. Don't trust your color differentiating eyes here. Colors that seem nothing alike may look identical to My Colorblind Dad. ArcGIS Pro has color blind filters so you can see what different types of color blindness look like on your map. If you've already built your application, a good trick is to use grayscale mode. If it all still makes sense in these alternate colors, it's probably ok.

How are you supposed to make your application grayscale?

Use Accessibility Testing Software

There's a ton of software out there for scanning applications for accessibility problems. Use them. They are helpful. I've got this free Chrome plug-in.

The testing software should flag many common problems, like missing alt text and poor color contrast. But the testing software isn't all knowing either. I've had to warn several employees that they are in violation for how they were using auto-playing videos. The software doesn't test those rules and it's one that could cause real usability problems. Think of The Lady In The Sleep Mask. Is she going to be able to understand the screen reader, if there's another audio track playing at the same time?

The testing software should also scan for ARIA attributes. ARIA is the meta-text for helping screen readers understand what they are reading. You will often see accessibility testing software flagging for missing or inappropriate ARIA tags. When working with ESRI products, you usually don't have direct control over these ARIA properties.

So what can you do? More often than not, I believe the correct answer is to do nothing, because...   

Accessibility Testing Software Is Dumber Than Accessibility Software

Modern screen readers are sophisticated bits of technology trained on what actual websites are like. For example, I have used Heading 4 for all my sections in this post, by the letter of the law, I should be using Heading 1 through 6 in sequence, so these sections should be Heading 2s. The testing software is going to apply the letter of the law and say I failed, but no actual screen reader would struggle to understand this page just because the headings have the wrong meta label. (The lack of alt text on that traffic light would be a real problem, though.) A modern screen reader can smooth over a lot of mistakes like wrong heading levels and missing ARIA labels.

Furthermore, the actual rule is way more lenient than you might expect. It includes an explicit exception for minor technical violations that do not have a meaningful impact on actual usability. And here's where we get to the dirty secrets...

There's More Exceptions Than There's Rule In This Rule 

Other than the previously mentioned exception for minor violations, there are also exceptions for old content and infrequently used content. Furthermore, if you dig into the rule you'll see lots of words like reasonable and effort and planning. The point of bringing up these exception, of this entire post, is that the most important thing is that you try. Saying "I can't do it all, so I won't try" is not acceptable. Doing your best and coming up short is probably fine, legally speaking. (I'm not a lawyer, talk to your legal department.) You could argue that reading this post counts as effort towards accessibility. I don't think it'd be a winning argument, but you could try it.

But What Happens If We Fail?

It's April 27, 2027 and we still have work to do. The Justice Department is scanning our website and sending a $1,000 fine for every image that doesn't have alt text. No, that's not what's going to happen.

In order for the city to face some sort of actual punishment for non-compliance, some citizen with an actual disability would need to sue, there would be a legal battle to determine if the violation was actually meaningful, and then a judge would decide on a remedy. What would that be? We don't know. They would probably tell us to fix our website. Would we have to pay massive sums of money to the plaintiff? Possibly, but probably the actual payout would be less than the cost of hiring the lawyer, which is going to stop people from hiring the lawyer to begin with.

I believe the City of Arlington is making an genuine effort to get to 100% compliance because it's the right thing to do, not because we fear the rule. There are real people out there that are struggling to access your services and information. These rules are designed to make it easier. Use what you learned in Kindergarten. Be kind. Help others. Try your best. Do the right thing.

1 Comment
Contributors
About the Author
A frequently confused rock-hound that writes ugly, but usually functional code.