June 28, 2009

The software industry stopped long ago counting how many horrific design interactions and incomprehensible user interfaces have been released. To some, it may seem that there is some black magic involved in releasing quality software – you never know what you are going to get. After all engineering claims it is working and marketing got all the features they asked for: “What’s the problem boss? It has all the features you requested. You can’t find out how to save a file? Check out page 734 line 24 of the manual.”

No wonder people get frustrated in using computers and software. They get discouraged, they get angry and sometimes they even get violent. This poor guy cannot take it anymore.

Why bad software?

Nobody is intentionally writing software that sucks, but designing good software is difficult. There are a lot of different of reasons and it could be the subject of an entire book, here are a few:

Engineers are often left in charge, but they are developers not designers. Coding is hard enough and is taking all their attention

Unreasonable deadlines. Can you guess what is sacrificed first: user experience or features?

Not understanding the audience. Who are they? How much complexity can they handle? What do they need?

Fortunately, there are a few principles a product manager can follow to make products more pleasant and less alienating. A good starting point is to show some respect to users. Would you hang out with people that don’t respect you? Probably not. Similarly, people expect software to be helpful, friendly and gentle. They don’t want to be abused by them.

Show some respect

Put yourself in users shoes. He is going to judge the software the same way he would for his friends:

Are you doing something without telling me? What are all those icons on my desktop and this new search bar in the navigator? I haven’t asked for those …

Don’t tell me about your problems. I don’t care why you crashed or how bad your code is. Either you work or you don’t, don’t expect me to fix you, I am not a doctor.

Why are you so confusing? You never do things the same way and use all those weird languages.How am I supposed to tell you what I want?

Why so much information? Just get to the point. I don’t need to know most of what you are telling me. Can I turn off all this noise?

Are you inciting me to make mistake? Why do you put this delete button next to the create button? Do you want to check how accurate my clicks are?

Do you think I am stupid? Why do you always ask for confirmation? I don’t want to repeat myself.

Why are you making everything so difficult? I simply want to upload this picture and share it with my friends. I don’t want to compress it, change the format, modify the colors, etc… you can take care of that for me.

Why can’t I change my mind? Yes I know I told you to delete that file, but I want it back now. So what?

Don’t you know me better by now? Why do you keep asking the same things? We have been working together for the last 6 months but you still don’t seem to know a thing about me.

Why are you so bad looking? This UI is so ugly, it is embarrassing. Do I need to keep looking at it every day?

You are not alone. Are you sucking all resources for yourself? You must learn how to coexist with others.

***
Don’t make your customers feel frustrated and angry. Ship software that is respectful of them.