A11y LIfe


I’m back! This website was hacked, and I’ve been super busy with work and life; too busy to clean up the hackers’ mess and tighten security. During this down time, the site has alternated between an unstyled and unhelpful WordPress error (“There has been a critical error on your website”)…

Screen shot of unstyled critical error

… and a very simple maintenance mode message…

My website is currently down for maintenance. Please check back again soon. Meanwhile, if you're looking for accessibility stuff, try the University of Washington Accessible Technology blog

Prior to getting hacked, I was already sluggish in posting updates here, as most of my writing energy goes into the University of Washington Accessible Technology website, including the Accessible Technology Blog.

I’m inspired to write now though, in part to share my lesson learned: If you host your own WordPress site, pay attention to security. At a minimum, keep WordPress, and all plugins and themes, up to date. But there’s so much more that needs to happen to secure your site. Resources on this topic are plentiful, but one I found particularly helpful is The Ultimate WordPress Security Guide – Step by Step, updated in 2022 on

There’s another reason I’m inspired to write: To share the emotional experience of having no personal web presence for the first time since 2008. This was actually quite humbling. Does it really matter that I have no web presence? This site ain’t gonna live forever. If I will it to my kids, I think it’s unreasonable to expect them to maintain it, especially with so much work required these days to stay on top of web security. And even if they choose to do so, to keep their dad’s memory alive or whatever, it surely won’t continue to be around for future generations. Nor does it need to be. That’s what the Internet Archive Wayback Machine is for.

So why maintain a blog at all? My hope is to share my thoughts, experiments, discoveries, and insights. My words may not last forever, but I hope they’re contributing in some small way to the grand conversation. If something I say inspires a new idea in someone else, then that’s my legacy. We all contribute with every word we say, or every gesture, or every smile or hug.

I’m also inspired to write today because I have a couple of announcements, and at long last, I have a forum for posting them…

Announcement #1: Critical Able Player Update for YouTube Users

On or around Thanksgiving 2021, Google pulled the plug on the timed text API, without warning, which is what Able Player had been using to access caption text for videos hosted on YouTube. I’m not blaming Google; this was an undocumented API and I probably shouldn’t have been using it at all. But, this API offered full access to YouTube caption data, which made it possible to convert captions into an interactive transcript, and it gave users control over the font, size, color, background color, transparency, and position of the captions within Able Player. Now, with no access to YouTube’s caption text, all that’s possible in Able Player through more official APIs is to toggle captions on and off, or select a language if there are subtitles. The actual caption text though is beyond our reach.

What this means for you: If you’re hosting videos on YouTube and using Able Player to deliver them, Able Player 4.4 is a critical update. YouTube-hosted captions will no longer work at all in older versions of Able Player.

Also, it’s important to note that there’s a solution to this shortcoming: If you host your timed text files (captions, subtitles, audio description, chapters, or metadata) locally on your web server, you can still get full Able Player functionality, even if the videos themselves are hosted on YouTube. (This same problem, and solution, applies to Vimeo as well).

Announcement #2: Accessible March Madness 2022

It’s time again for the annual Accessible NCAA Tournament Bracket. I’ve been doing this every year since 2006. I still remember the conversation that started it all, during a break at a conference, two guys chatting about web accessibility and college hoops under a shady tree in the heat of an Arizona afternoon.

  • “A tournament bracket is a pretty visual thing.”
  • “Yeah, but it does have structure.”
  • “Could that structure be conveyed using HTML so it’s easy to track for a blind basketball fan?”
  • “Don’t know. I’ll see what I can do.”

Every March since then, I’ve dusted off my code, added a couple of new features, opened the gates, and waited for growing crowds of accessibility-minded users to fill out brackets and compete for bragging rights. If you’re not one of them, you should be! You have until tipoff of the first Round 1 game (Thursday March 17, noon Eastern) to complete your bracket.