Instructure Blog


Voices of Instructure: Can You Affordance This?

We’ve all been there. As we reach out to open a door to enter a store, we’ve placed our hands on the horizontal bar, pushed, and slammed into it. Because we were supposed to pull on it instead. Only then do we notice the small sign telling us in plain English that we should “Pull” to open the door. Chagrined, we either walk away, having embarrassed ourselves with the loud thud of our body hitting the glass still reverberating through the store, or sheepishly walk into the store anyway.

The handle was clearly there, but its orientation and the visual affordance it provided led us to an incorrect conclusion about how to use it. It was still functional, but maybe not really usable.

This is a common problem when building accessible web applications. We often use the leftover parts we have that are mostly usable for users with differing abilities, but perhaps have some affordances that make for a functional, but not usable, interaction.

Some examples might be a list of 100 courses where the course title is prefixed with a label that says “Course” for screen readers. Is it functional? Sure. Is it a pleasant experience to use? Probably not. Or a small checkbox with a label that isn’t clickable. Is is possible to use that? For most of your users, sure. For aging users, or users with fine motor control issues? Not really.

This is where the combined efforts of a designer, development team, and thoughtful product owner come into play! Oftentimes there are existing tools for creating a truly usable and delightful experience. Occasionally, though, it’s time to look beyond what exists. 

This was something that came up as we were developing a drag and drop experience for a recent feature in Bridge. There are other screen reader compatible drag and drop components out there, but they tend to be clunky. So the decision was made to build one that provided a better experience. Is building our own always the right solution? No. Many times it isn’t. But when the affordance is important it’s time to take on the extra cost to add it.

People bumping into closed doors are not pointing out that a “Pull” sign needs to be added. They are pointing out that the experience needs to be changed to properly communicate what they are expected to do. High functioning teams recognize this, and assume the cost to produce truly accessible systems that serve all of their customers. Hopefully before anyone actually runs into any doors.


Daniel Sellers
Software Engineer