5 ms·
SPAs are inaccessible by default.
by my69thaccount 4y ago
SPAs are inaccessible by default.
- azemetre 4y agoCould you expand upon this? Do you mean the lack of routing or something else?
- my69thaccount 4y agoSPAs reimplement accessibility features in JavaScript to the best of their ability. This has created an arms race where screen readers need to execute JavaScript and use heuristics to determine what's on the a page. Everyone who down voted me is a total idiot.
- shitlord 4y agoI worked at a large tech company replacing an internal MPA website with a SPA replacement. The MPA website was built in the 2000s, it was unmaintainable, and it was generally duct-taped together. The SPA website was new, shiny, and build on the hottest technologies at the time. But screen readers had a hard time understanding the SPA. Where the MPA favored simplicity and used <select> elements for its dropdowns, the SPA used a custom component that consisted of <div> soup with some JS. It took considerable effort to make the SPA friendly to screen readers. I'm not convinced that the SPA architecture was the source of the problem. A MPA with <div> soup everywhere would have had the same problem. However, these sorts of issues seem to be more common in SPA than MPA. There might be some correlation between using SPA architecture and reckless overindulgence.
- wruza 4y agoEvery mainstream desktop ui framework out there has standard, evolving out-of-box set of controls and layout widgets that do not suck. Guess what, you can build Gtk, Qt or Wx app without wrapping inputs into stacks of divs, which aren’t there for layout. People even barely know how to create new controls or containers. The deepest container depth for a regular app is like 5-7 there, and that’s a complex layout already with bells and whistles. Web does suck a lot in this regard, so people reimplement this functionality in javascript and div soup, as the other commenter mentioned. While your statement is true, the idiots here are the web standards which stuck in 1990s and never realized that this “apps” thing everyone’s running around with for a decade or soon two is something more than a printable document with font sizes and empty fields split into sections and paragraphs. If web did care, it would at least add accessibility-only tags (or a separate structure like css does) denoting what’s where and how to interact with it or how to dumb it down to whatever plain set of controls would be there, if the web ui model didn’t suck. The stockholm syndrome it induced in software development is truly tremendous.
- zrobotics 4y agoAgreed. One of our employees is visually impaired, and it is shocking how many Spas are entirely incompatible with a screen reader and standard keyboard nav. With a MPA, most of the things that a screenreader needs come for 'free' just by being standard components. When everything is wrapped in JS and is slightly different for each page, it's frustrating. We have changed quite a bit of our software systems in the past 1.5 years, and I have dropped multiple vendors from consideration over accessibility. Many B2B SaaS salespeople just give you a blank look if you ask about usability for a blind user.
- oignon 4y agoHi zrobotics, I'm really interested about accessibility. Do you have some resources to recommend, even related to SPAs? Thanks