Jon Daiello Product Designer 🦄

Journal

False Assumptions

for (var i = 0; i < internetUsers.length; i++) {
  myUsers.push( me );
}

Or if you prefer to see it a different way:

internetUsers.forEach(function() {
  myUsers.push( me );
});

Ok, so maybe the above code is a bit of a stretch, but as designers and developers this is often our default mode of thought. If you’re not a developer and you’re left scratching your head, hang in there and let me explain.

There is a major fault in the way this code define who the users are. In fact, instead of considering the true users it substitutes ourselves for every one of the users. It’s tempting to think that everyone who uses a product is just like me. It’s tempting to think that they understand me. We might even believe it’s safe to assume they think like me.

They think like me? Whoa. When you put it in those terms, the problem becomes clearly evident.

Tunnel Vision

If we’re not careful, our default assumptions can be dangerous. You can’t fault us though. We live our lives in our own skin every day. We think with our own brain 100% of the time. Our own perspective is all we know. Even if you talk to others and attempt to broaden your perspective, it’s still being filtered and interpreted by a lifetime of our own understanding. Everything we see, hear and do is absorbed into us. It does not overwrite our previous knowledge, it adds to it.

Whether you believe in nature or nurture, our brains operate in a pattern that is unique to us. You can group like minded individuals together, but they are not identical. Everyone is unique.

Everyone’s A Snowflake…

“Yeah, we know Jon. Everyone is a snowflake. No two are alike.”

Ok, maybe you do know, but do you consciously incorporate that knowledge in the various design layouts create and endless lines of code you write? This false assumptions that ‘everyone is just like me’ can destroy a project before it begins. It can rip apart relationships. It can ruin a lifetime of achievement.

But, it’s not the end. We can learn from it.

Broaden Your Perspective

Stop and evaluate how you think about the user for the project you’re working on. Are you envisioning yourself in their place? (Thinking like you, in your home, on your wifi, in your browser, at your stage of life, etc.) Sure, we can develop personas and build use cases. We can perform user research and conduct endless hours of testing. And, we should be doing these things. But there’s not substitute for people. Not just testers, but people. That’s who we’re designing and developing for.

Over the past few weeks, I have been enjoying listening to the memoirs of Robin Olds. If you’re not familiar with him, he was a legendary fighter pilot through several wars and eventually rose to high ranks in military leadership. As I listened to his personal perspective on wars, battles, dogfights, relationships, challenges and countless rebellious actions he took, I was struck with the difference in perspective he had. I could never fully come to understand the way he thought and the reasoning behind the decisions he made.

Even in his own story, he related the decisions of other to his own perspective. Most notably the change in perspective of his leadership. When Olds began his career he saw the military highly organized and considerate of the people (troops) involved focused on winning wars for the sake of preserving our freedom. By the time he left he had observed a dangerous shift to see the military as a sloppy, brute-force machine to achieve worthless goals. Even in the highest ranks of the military, perspective became a problem.

As we consider what our perspective is look around, ask other and do your best to interact with people. This world is full of people. These are the people that we are building the web for. When foolish assumptions are in the driver’s seat, it’s a recipe for disaster. These assumptions are like an electrical arcing wire in midst of spilled gasoline. The stakes are high. The consequences are great. The fate of the web is on the chopping block.

Bias Requires Assumption

How have I observed bias? By the dangerous assumptions we make every day.

Bias is made up of assumptions that we are unwilling to evaluate. No assumption should be sacred. There is nothing that we should guard so closely that we are unwilling to evaluate it. If we are unwilling to inspect the assumptions of ourselves or the project, then we are boarding a train without a driver. It’s imperative that we take time to consider the assumptions that make up our bias. Whether it’s a bias about programming languages, connection speeds, user personas, or even color preferences, nothing is sacred. Consider them, and ask others to help you consider them.

The Mightiest Offender

In my opinion, the biggest bias offender is connection speed. In suburban America, we’re spoiled with our fibre optics and public WiFi. We have it easy. In my experience, it’s the one that is ever pervasive. It’s everywhere. It’s in our 2x ready images, wasted lines of code, white space, excessive markup and poor server configurations. It’s a problem of Giga(byte) proportions and it’s costing everyone dollars.

For our users, it’s eating into their (no longer unlimited) data plans. It makes them want to give up. To close the tab. To wait until later, and then forget about that transaction.

For our clients, it’s thrashing away as their transfer caps and costs. It’s slowing down their servers. It’s causing users to bail. It’s lost profits. It’s increased hardware costs. It’s even a threat to crucial communication to customers.

As I began the journey of reworking my site, my first and primary goal was speed. I didn’t want one unnecessary line of CSS. I chose not to include a bulky JS library. I focused on saving my users time and money if they chose to visit my site. I admit, it’s still a journey and it’s not perfect. Over time I intend to continue evaluating the purpose and goals of my site. However, I have decided to wage war on performance. Every time I write a line of code, I consider the cost to the user vs. the gain. I have decided to love the people, by serving them through the code I write.

Conclusion

At the end of the day, our passions are different. Our lives are unique. The eyes we look through every moment are special to us. Don’t ever assume your bias is sacred. Every component of your bias is open to be challenged. Keep your assumptions in check. Re-evaluate them on a regular basis. Explain components you work on to the rest of your team and ask them to find the assumptions in your work.

Remember that you are working for people. You are building a web for human beings with emotions. You are serving them the web. Let’s agree to make it a great experience for them.