Why writing software is like working in your own bedroom

Photo by Tim Trad

“How can you possibly miss them?” asked my wide-eyed friend as he sat in the passenger seat of my car on the way to a concert. “It’s so crazy that you can miss such big design flaws like that.”

“It’s so crazy that you can miss such big design flaws like that.”

I had been describing a side-project I’d been working on. It was a local events app and I’d just been telling him about how often flaws in the app’s usability escaped my attention. So many UX and QA people (not to mention end users) must sometimes feel the same incredulity as my friend. “How did the developer miss this?”

Well, I’m hoping to give you a look into the life of a developer to encourage you to empathize and understand why we do. Sure, sometimes we might know there’s a problem and just be too lazy to fix it. But that isn’t the reason most of the time. Here’s the reason (drum roll)… are you ready?

We are working in our own darn bedrooms!!!!

(And I don’t mean that literally.)

Here’s what I do mean. My wife and I recently returned from a trip to Thailand. We got home, unpacked and I left a big blue suitcase open on the floor in front of our bedroom door for three months. Did I really just admit that? Yes. T-h-r-e-e months.

Why? Am I just a slob? Do I have something against tidying up? No! I swear that I did not see that big blue suitcase lying on the floor in front of me. Or rather, I saw but did not perceive it. For three months.

I subconsciously learned to avoid it every time I went in and out of the room. I learned not to expect our bedroom door to open all the way. I forget it had ever opened all the way. I even knew my way around that suitcase in the dark and successfully avoided stubbing my toe every time I got up in the middle of the night to use the bathroom.

I knew that suitcase just as well as the rest of my bedroom, and I noticed it just as little.

I knew that suitcase just as well as the rest of my bedroom, and noticed it just as little.

So it is with development. The applications we develop are our bedrooms. We know their ins and outs, their quirks, their layout. We could navigate through whatever flow we’re working on blindfolded.

This is why we need user testing! If my wife and I had sold the house and the new owners had walked into the bedroom, do you think they would have accepted the suitcase as just another feature?

No–but I did. So, next time you see a crazy design flaw come down the pipeline, remember: your developer friends are working in their own bedrooms.

(Originally published on Medium.)

Leave a Reply

Your email address will not be published. Required fields are marked *