Wikipedia defines Usability as the ease of use and learnability of a human-made object. “Ease of use” and “Learnability”. As software engineers, we often overlook these two things (which is why Nagarro has a dedicated department for User Experience to make sure our customers don’t suffer from this trait). The reason we overlook these things are very straight forward:
- Ease of use - well our level of understanding as well as skill when it comes to software is above the average software user. So for us, the software that we design is ‘easy to use’. It’s like saying that an airplane is easy to fly – if you are a pilot.
- Learnability – here our view is biased by definition – we designed it, so we don’t really need to learn it; we already know it. It is no wonder that we often forget that the software that we are designing has to be ‘learned’ by the end user – and so we should make it easy for them to learn it.
Much has been said about how to go about doing these two things – and this is not the topic of this post. The reason I am writing here is that sometimes the lack of usability (as defined above) comes back and hits you – and hits you hard. And then when you are in the end user’s shoes, you realize that usability is important; it’s very important. And as a software engineer, you should really pay attention to the usability of the application that you are developing.
Here’s what happened:
