I recently learned the term "code golfing." Code was clear to me. Golfing was not. In golf, they try to get the lowest score possible. Apparently, there are competitions where participants battle to solve a particular problem by writing as few lines of code as possible. Hence, code golfing. Inevitably though, they end up taking some shortcuts and wrangling code to get the smallest output.
Why am I telling you this?
It's not to share with you how much I hate golf. Although, I do. I can't bear golf. If there's something that can put me right to sleep would be a golf tournament. And it's not to dunk on code golfing either.
But it got me thinking.
Every metric, when pursued in a vacuum, will eventually become a vice.
I think of this as an under-optimisation, where you optimise one part of your product so much that you degrade the whole as a result.
Code golfers do it to the point where the source code can be so terse that it becomes just impossible to read and maintain. And there are more examples. We can take security. A system with "infinite" security is a brick. If no one can access it, even if it's secure, it’s also useless.
The same can be said about privacy. Privacy is a human right! Zero data collection forever! Hold on a second though! We need to collect some data to fix bugs and we can do our best to anonymise it and provide opt-outs.
But that's boring! That shit doesn't get a retweet and it wins no likes either. The extremist view wins hands-down, because it provides a very powerful soundbite, while the moderate view needs to be defended. It requires trade-offs. It requires knowing what the hell you're talking about in a specific case, not in a vacuum.
I think accessibility fits this bill very well.
Accessibility is one of the most morally charged areas of design. It's hard to argue against inclusion without sounding like a villain, which makes the one-liners particularly sharp. "Accessibility is a human right." Of course it is, no one is saying it isn't. But if we start seeing any discussion of budget or technical constraints as an act of intentional exclusion, we're in a vacuum.
It takes courage to be the person in the room who says they care about accessibility, but then looks at where the team is currently spending their resources while the core flows have been broken for a while now. They're looking to properly prioritise high-impact issues and solve the more complex esoteric issues in Phase 2.
Good for them, except now they're called out for denying people access to the product. In reality, they're just trying to ensure the company stays solvent enough to keep the product running for everyone. Perfect just became the enemy of good.
To me, it feels like the one-liners being thrown around are making it harder to have honest conversations about these kinds of trade-offs.