As the meme goes, "I don't know how to explain to you that you should care about other people." It's a good way to introduce this article a friend boosted earlier about the catastrophic state of website accessibility. Short version: it's worse than even cynical old me would have expected. And not because web developers haven't heard of WAI-ARIA: it turns out pages with accessibility markup are more likely to have issues.
How is that even possible? Not to speculate, but ARIA attributes are tricky to use right, and can't replace good old semantic HTML. And there was a time last decade when web designers would make every element a
div styled from CSS. When called out they'd ask, "what does it matter? looks all the same, doesn't it?" They were so surprised when I pointed out that web crawlers don't apply any stylesheets, and couldn't make sense of the result if they did. That all their "SEO" tricks (scare quotes very much intentional) don't hold a candle to this one thing Wikipedia is doing. What thing? I showed them the front page with styles disabled. Lo and behold, it looked almost unchanged. Still perfectly organized and readable. Some less important links were left for the end. Which is exactly where they logically belong if you're trying to read the content from top to bottom. As the original post says:
button element is important.
But that's just scratching the surface. Because, you see, most people don't actually need a screen reader. They are, however, begging for good contrast, or the ability to enlarge the text without making the page they're reading explode into a mess of broken little boxes scattered everywhere. Or in my case, scrollbars wide enough that a 40-year-old with a $10 mouse can actually hit them reliably.
At least desktop GUIs encourage applications to follow certain common guidelines, so people don't have to mentally switch tracks every time they Alt-Tab. Which is why many stick to software native to their operating system. But there's a snake in that Garden of Eden, too.
You see, at some point in the past few years, nerds decided that learning C++ or whatever is too much work, so instead they brought the web to the desktop. If you've been wondering why so much software of a newer generation uses gigabytes of RAM and barely crawls on relatively new PCs, that's because they're glorified websites, each wrapped in their own private copy of Chrome. (Hint: if the support website mentions Electron, that's what it means.) Worse, these abominations can't even be bothered to obey system settings. Not even colors and fonts, that they could pick up. It's just not automatic. Unlike, wait for it, in those native desktop GUIs I mentioned. Which, by the way, also have accessibility support by default. Go figure. And even so, programmers that do use them find ways to break stuff.
No wonder one of my two friends who suffer from low vision is often forced to use text-based applications instead. Not because he likes them, but because they're at least always in just one font, that he can always override.
How did we get here? I blame lazy boys who want to show off now and can't be bothered to "waste time" learning the fundamentals. Proud boys who think they know better than everyone else despite that, and drive in reverse in the wrong lane, yelling at the rest of us. Because of course. Or as per the original post:
[...] right now it feels like we’re an industry of overpaid, fly-by-night plumbers who have the luxury of saying they don’t believe in using wrenches.
Which isn't even an exaggeration. Did I ever tell you about the PHP guy who didn't trust functions, and recommended against using any? He was the lead programmer at a former employer. I lasted for all of five weeks, one of which was spent training my replacement.
Sure, startup culture also puts enormous pressure on programmers to deliver outright miracles yesterday. But you'll see the same attitudes in open source, where people supposedly love their craft, and don't have a boss, customer or investor breathing down their necks.
And now you know why "programmer" is a swear word among laypeople. No more excuses.