Perhaps we’ve all heard that you’re suppose to avoid using tables and Flash when designing your website, but do you know why? For a good answer, you really need to look deeper than tactical benefits, and consider more fundamental questions of accessibility.
A lot of times the end-consumers of our content are not consuming the content as we assume they are. For example, nearly a third of all visitors on some web applications are now using non-desktop devices (aka mobile) to consume the content. There’s also the issue of search engines trying to parse out what your content is, which you need to facilitate if you want decent rankings. There are also a number of vision impaired consumers using screen-reader tools (e.g. JAWS, NVDA, Window Eyes) to interpret the content and translate it to audio. The government actually mandates support for these screen reasons via Section 508. A lot of major companies follow it too.
So let’s revisit that initial question again with this context – can your mobile visitors, search engines, and vision impaired individuals access your content if its all wrapped up on binary Flash or Java files? Perhaps they can access content enclosed in nested HTML tables, but is it going to be a good user experience for someone on a browser?
When you begin to consider these challenges, you’re beginning to think about user interface architecture. Or put another way, how can you ensure that your interface is structured in a way that it is flexible and supportive of all those who access the content. And the mechanisms by which to facilitate your audience are pretty straight forward.
To build a well architected user interface that maximizes accessibility, consider these few steps:
Semantic HTML – HTML5 introduces semantic tagging for navigation, headers, footers, asides and articles. Proper use of these tags can considerably improve a machine’s ability to parse and interpret the content. Augmenting the HTML5 with Semantic Web tags such as RDFa or Microformats (aka Schema.org), further significantly improves machine accessibility, which again, is great for search engines and screen readers. It also opens the door to many other great semantic web applications of the future. So beginning to think semantically is a great habit to begin today.
And that’s it! Hopefully that provides a decent overview of why it is sometimes necessary to think of the user interface beyond simply what we see on our main computer screen, and beyond the latest technical bells an whistles. By being aware of how the content is being consumed and the challenges faced by certain users and machines attempting to access your content, you can quickly see the need to think a little deeper about how the interface is structured. And by following a few new guidelines as provided above, you can significantly improve accessibility for your web application. This will make your content more accessible for mobile devices, screen-readers, and search engines alike.