When it comes to software accessibility — which means ensuring that all users can easily interact with your application, regardless of any visual, cognitive, or other limitations they may face — front-end developers may seem to hold the keys to the kingdom. They're the ones responsible for determining how an app appears to users, how it accepts input, and most other aspects of the end-user interface.
But that doesn't mean back-end developers — who manage things such as data storage, security, and other parts of an application that are "invisible" to end users — have no role to play in accessibility. On the contrary, there are a number of ways in which back-end programmers can help ensure that the apps they build and maintain are as accessible as possible to all users.
To prove the point, here's a look at five of the most important ways in which back-end developers can contribute to software accessibility.
1. Make Apps Easy to Localize
Software localization is the process of adapting software to fit the needs of users from different language groups and cultures. Localized software is more accessible software because it is easier for anyone to use, regardless of their backgrounds.
Related: 5 Tips for Inclusive Product Design
It's up to front-end developers to ensure that text, images, and other visual elements of an application appear in a localized format to the user.
However, back-end developers can help by ensuring that they make localization a primary consideration when designing back-end systems. It's much easier for front-end developers to localize applications when localization data is easy to store and access on the back end.
So, back-end developers should give careful thought to where localization is housed and how it's exposed. Don't just treat it as generic data that needs to be presented to the front end; make it a first-class citizen within the back-end application architecture.
2. Improve Performance
It's always bad if an application is not optimized for accessibility. It's even worse if the application performs slowly — as it might be due to poor back-end design.
For that reason, back-end developers can do their bit on the accessibility front by ensuring that applications are as stable and responsible as possible. Users shouldn't have to wonder whether the reason an application isn't doing what they want is because they couldn't make out the text and clicked the wrong button, or because the app is just slow.
3. Simplify Authentication
Back-end developers play a leading role in deciding how applications authenticate and authorize users. And in today's security-centric age, most back-end developers are primed to prioritize rigid log-in processes — like those that require multifactor authentication — above all else.
Making security a priority is certainly a good thing. However, from an accessibility perspective, it's important to find the right balance between security and usability for all users. Developers should, for example, avoid multifactor authentication processes that require users to listen to a phone call because some users may not be able to listen to phone calls. They should also make sure that, for instance, log-in timeouts are not so short that they become a problem for users who can't type 60 words a minute or who rely on assistive technology to enter text.
4. User-Friendly Error Handling
The last thing that users with accessibility challenges need is an app that dumps abstruse error messages onto the screen. But that's what happens when back-end developers don't do their part to implement user-friendly error handling.
In general, it should be the goal of back-end developers to ensure that users never see error messages. Those messages should instead end up in log files or other places where developers can view them but users are not encumbered by them.
Otherwise, users may think that warnings about things like database failures or application exceptions are something they need to worry about. That only exacerbates what is already a user-unfriendly situation, due to the application error.
5. Give Clear Error Messages
At the same time that back-end developers make sure users don't see errors, they should design error messages in ways that make the root of problems clear to other developers.
From an accessibility standpoint, this is important because clear error messages help developers avoid the temptation to blame the user when something goes wrong. Instead of complaining about users who don't know how to use their app properly, developers can focus on making their app work better for their users, no matter who they are.
Software Accessibility Is the Responsibility of All Developers
To be sure, the lion's share of responsibility for building accessible, user-friendly applications lies with front-end developers. But even if you work on the back end, you, too, have a role to play in software accessibility. Think about how your back-end architecture, as well as processes like authentication and error handling, impacts the accessibility of your application, and take steps to optimize the experience for all of your users.
About the authorChristopher Tozzi is a technology analyst with subject matter expertise in cloud computing, application development, open source software, virtualization, containers and more. He also lectures at a major university in the Albany, New York, area. His book, “For Fun and Profit: A History of the Free and Open Source Software Revolution,” was published by MIT Press.