MODX has started a campaign looking to crowdfund a more accessible manager, which you can read about here. In this follow-up post, we explain why modmore is not making a donation. And no, it's not because we hate people who rely on assistive technologies.
What is accessibility about, really?
There have been a lot of discussions within the modmore team about what the accessibility project achieves, and what its merits are. It is a step in the right direction and accessibility is rightly getting more attention within the community. Initiatives like empat.io show the importance of accessibility and real situations in the everyday life of people with for example a disability or simply bad eyesight, and it doesn't take much effort to realise that the MODX Manager is lacking in usability there.
But as long as the manager is built with ExtJS, getting full accessibility will always be tricky. There are a lot of dynamic actions, and the DOM gets rewritten and added to a lot thanks to the dynamic features it provides. This provides screen readers and the people behind them a serious challenge to understand what is happening where.
The accessibility campaign is, as we said, an important step in the right direction. There are real benefits to improving keyboard accessibility and contrast for those using assistive devices -- and for those of us who just like to use our keyboards. Those are improvements a theme can certainly make. However, the underlying ExtJS problem can't be solved with a simple theme.
Side-stepping the problem with a Theme
Although the accessibility project will offer some improvements via a theme, there are disadvantages to creating a whole separate them instead of doing it in core. By putting the improvements in a separate theme, you are both setting yourself up for maintaining a second manager that will need to be updated whenever the core theme is updated, and making accessibility a hidden opt-in feature for those who know how to install a manager theme. Does MODX really advance in that case?
While there are benefits to using a separate theme (for example, not having to go through the core contributing workflow and having more freedom to explore out of the box improvements), accessibility is meant to make information available for all. This is a principle issue with the accessibility initiative that put us off from contributing to the campaign directly. Hopefully, once the effort has been made to create the accessible theme, much of that theme will be able to be merged into core so the improvements will be available to all users -- without additional work and knowledge on their part.
What we are going to do
Instead of contributing to this particular campaign, we're investing in the accessibility of our own products for MODX. We believe it is as important for addons to be accessible as much as the manager itself. The manager can be uber-accessible, but if ContentBlocks doesn't work with a keyboard, it hasn't accomplished its goal.
We're already working with Imperavi, the developers of Redactor, on how accessibility can be improved within the WYSIWYG editor, and they've indicated there are planned improvements later this year. We've completed a high-level analysis of where we're at with ContentBlocks and MoreGallery (spoiler: lots of opportunity to improve), and are planning improvements in our next major releases of both projects, primarily focused on keyboard navigation and contrast.
Even though the accessibility crowdfunding campaign hasn't resulted in us giving a financial contribution, it has made us think about what we're doing and it definitely accomplished a goal there.
What are you going to do?
Despite our concerns about the accessibility project, we still think it is a better initiative than doing nothing. Accessibility is something that should concern us all, and we should think about it and look for ways to improve across all aspects of our projects. While we've decided to focus on our own projects first, everyone should consider how they can contribute to making MODX more accessible -- whether that's making a donation to the project, contributing code, or working on making their own extras more accessible.
What can you do to promote accessibility?