Posts

Essay

Respecting User Preference

  • 719 words

I found myself in a conversation where someone mentioned how satisfying it was to be implementing features that respect user preferences. Someone responded to them asking, “How can that be satisfying?” The original person responded with, “‘Cos it’s accessible and caters to the user’s preferences,” which was then met by “Yes, but satisfying for the ones that need accessibility features then. Why would it be satisfying for you specifically?” 1

My contributions to the conversation in the moment weren’t wrong, but they were ill-formed. I agreed that respecting user preferences is very much satisfying but found myself struggling to articulate exactly why. That is what I’m attempting to address here.

It is satisfying because it gives users autonomy and agency. It is satisfying because everyone is different, and it is satisfying to see these differences catered to. It is satisfying because solving problems is satisfying. It is satisfying because it is nice to build something with care and attention to detail. It is satisfying because there is a visible impact from caring.

User Autonomy and Agency

At the core of everything accessibility-related, is giving users autonomy and agency. Putting the power to do into the hands of those who may otherwise be unable. To respect users by allowing them to do things by themselves, on their own terms, and in the way they wish to. Respecting user preferences allows users to do things as they wish. It gives them the power and control they deserve and makes everything more accessible.

Diversity

Humans are diverse. It is perhaps our best trait and gives us resilience, creativity, and variety in perspective. No two people are the same and will interact with situations differently. This is something to be embraced, not stomped out by rigid preferences.

There’s fulfilment in creating something that adapts to human diversity rather than forcing adaptation to a mould. Further, that which is designed for flexibility is more future-proofed than that which is not. It is proofing your work against changing needs and contexts, and there’s intellectual satisfaction in creating something that is adaptable rather than brittle.

Problem Solving

The benefits of problem-solving in respecting user preferences are twofold – you’re fixing human problems and technical ones simultaneously. There’s a particular satisfaction in solving problems that exist at such an intersection.

On the human side, people can have problems using apps, and being able to tweak and modify the experience to their needs can fix this. You’re solving the problems of other people. Is that not what building software is all about in the first place?

On the technical side, it isn’t easy to tailor one’s work to match what someone else envisions or needs. There is a rewarding challenge to be found in accurately translating someone’s preferences into reality while keeping everything intuitive and sleek. Solving a problem such as those that arise in particularly complex combinations of preferences can be satisfying, and I personally find it endlessly rewarding to learn and expand my knowledge.

Craftsmanship and Quality

There’s satisfaction to be found in good craftsmanship – building something with care and attention to detail. Respecting preferences is often a mark of quality software, showing that you’ve gone beyond mere functionality to consider the full user experience.

Visible Impact

There is a direct and observable positive effect on user interaction when you cater to how they’ve expressed they wish to be considered. It is exciting to watch your work fit to a user like a well-tailored suit. Giving users control lets them take the wheel and can lead to usage beyond one’s own expectations or intents. You can see your work take on a life beyond your original vision 2.

Respecting user preferences has direct impact – it isn’t abstracted away. It brings me joy to see a user embrace something I’ve made while it embraces them. That is satisfying.

Footnotes

  1. There is a complete other discussion to be had here about accessibility features and how they are for everyone, not just those who “need them.” Properly implemented accessibility considerations should make things better for everyone.

  2. This can also help foster a feedback loop. One implements preference options, sees how users engage with them, and then learns from that engagement to improve further. The most basic use for this obviously being defining the most ideal defaults.