By using custom, accessible, focus states, we can make websites much easier to use for people that navigate using the keyboard.
Set of posters to help people design accessible services
It is not uncommon for individuals and even entire organizations to rely on some third party platform to host all their thought-leadering. Medium is the common choice, but many use other platforms as well, such as LinkedIn.
While many argue that the reach is better and it is easier than self-hosting, few consider what will happen when their chosen platform goes away (or the platform chooses to purge you). After all, the web is littered with the corpses of platforms populated by content that you wrote and that we will never see again.
A look at the state of web accessibility today and how machine learning could help make a more accessible web for all
Steps To Reproduce
You must be running the latest version of Jetpack. If it’s not showing up in your updates, it will soon if you have it installed. I’ve run the update on my personal site, and got the following results when testing.
I searched for Jetpack’s sharing feature by typing the word “sharing” without quotes into the search box on the plugins/add new page. I specifically have this feature disabled. What came back is the following.
Aftere searching, and the page refreshes, the first thing I find on the page when navigating by headings after searching is “Jetpack: Sharing” at heading level three, just like every other search result on the page. Next, in the list below the heading with a link, (which normally contains a link to install the plugin and a link to learn more about it), I find a button labelled “enable”, followed by the traditional “Learn more” link.
Next, there’s a description of the feature:
Add Twitter, Facebook and Google+ buttons at the bottom of each post, making it easy for visitors to share your content.
The plugin author name follows directly after this, and in this case it’s Automattic.
Next is a graphic without alternative text, which I can only assume is the Jetpack logo or maybe the Automattic logo. No matter what it is though, so far the only thing distinguishing this from a standard search result is the replacement of the “install” link with an “enable” button, and this graphic. Otherwise it looks like a standar search result. Now onto the other very minor differences.
Under the graphic without alternative text, the following text appears:
Jetpack is trusted by millions to help secure and speed up their WordPress site. Make the most of it today.
Marketing copy complete with a call-to-action.
And now, for dismissing the suggestion. There’s some text that says “Hide this suggestion”, and although this appears to not be associated with any discernible element while using a screen reader, if you press enter on it, the suggestion disappears. However, your focus jumps down to the nex item in the list, past the heading to the end of the list with the two links, so you have to press shift-H to navigate back to the heading to find out what you’re even working with.
The focus management and alternative text issues are fixable, as is the semantics of the “Hide this suggestion” thing. However, all of this seems confusing at best, requiring me to pay extra attention to what’s going on on this screen. I spend a fair amount of time in the WordPress administration panel, and I expect that between plugins, themes, admin notifications, and WordPress in general, these screens are going to change. However, needing to pay extra attention to the plugin search screen so I can avoid accidentally enabling a Jetpack feature due to something that is definitely an advertisement dressed up to look like a search result is absolutely not OK. I knew what was coming, and I still needed to focus on what I was doing to a much more greater degree. Anyone who doesn’t realize they have Jetpack installed, (and this happens a lot considering that hosts install it automatically in a lot of cases), is not going to spend the bit of extra time to pay closer attention to what’s going on, and therefore will enable a feature, at which point they then will need to dig through settings to find where it’s buried once they realize they’ve enable something they don’t want, or God help them when there’s a conflict with something on their site, as their was with the Jetpack sharing buttons markup and the Microformats 2 markup on my personal site, which prompted me to disable the sharing buttons in the first place since I prioritize correct markup over whether or not someone can click something to share my post.
All of this looks incredibly shady, even with the consideration of the stated intentions behind it, and I find myself asking: who dictated the design and development requirements of this user experience? It may be designed to be visually separate from the rest of the search, I don’t know. I haven’t gone through the CSS. But it sure as hell isn’t very different markup-wise, and yeah, that makes me kind of angry. I suspect anyone who encounters this without knowing anything about it, or any of the humans involved, is going to be angrier, never mind feeling tricked, and I really think this was completely avoidable.
If a user searches for a plugin that has a feature that is already offered by Jetpack, the plugin will insert an artificial (and dismissible) search result into the first plugin card slot, identifying the corresponding Jetpack feature.
This is so far over the line of what’s acceptable and what’s not, it’s not funny. I’d be livid if any other plugin did this, and the fact that Automattic is doing it, combined with its incredibly large amount of influence over the WordPress ecosystem, is enough to make me seriously consider uninstalling Jetpack from every one of my sites. The WordPress dashboard and administration screens are already choked with advertisements and useless nags thanks to other plugins and themes. The fact that Automattic is essentially giving this a blessing is, I suspect, going to make this problem worse than it is. The web is supposed to be independent and decentralized. Automattic is supposed to be helping to ensure that an open, independent web survives, or at least that’s what its CEO appears to be leading us to believe. Driving an ecosystem to use the features of one plugin over everything else is an attempt at centralization, which is obviously in direct opposition to an open, decentralized web. Getting back to the accessibility question, while Jetpack does some of the things it does reasonably accessibly, does this mean that Automattic is going to put some extra muscle behind making sure that every one of its features are accessible? If you’re going to exercise undue influence over plugin search results, effectively cutting off the air supply of anything that may provide a Jetpack feature more accessibly, then you take on the responsibility of ensuring that accessibility is looked after. I think I already know the answer to these questions, but I decided to pose them just in case. You know, in case I happen to be dead wrong in my supposition. At the end of the day though, I’d rather Automattic just not game the plugin search results.