An associate recently remarked about a user interface … which interface [exactly] doesn’t matter.
You have to hate your fellowman to create interfaces that awful.
It is certainly just cause for indictments when you pay handsome fees to hire software to do a job for you. However, I don’t think it’s that simple. People who create poor UIs and UXs generally believe they are good. They honestly believe their creations are well-intentioned and perfectly suited for the task.
Poor outcomes are more likely because the developers are out of touch with the users of their solutions. Like many who claim to be software “engineers”, they are not engaging in deep user empathy which ultimately leads to unappealing solutions. These engineers are implementers who are insensitive and largely oblivious to the people who use these tools and most important - why they need solutions. They are unable to stand in the shoes of the users - they cannot create a mindful state that places them in a context of a given user’s skill and viewpoint of the tasks they want to perform or the macro-processes that they are codifying.
In my view, these “implementers” cannot work alone; they must be led and fed every element of the business and technical requirements with precision and detail. Such an investment is generally considered unaffordable and unnecessary; the developers should just know. But, they don’t.
This is as much a failure of the software company as it is the developers’ own lack of “user empathy”. User empathy is a fundamental part of building meaningful user interfaces. For some engineers, though, developing a highly sensitized capacity to inject the feelings and state-of-mind of a user can be challenging.
I have a name for this…
Empathy Design Disorder (EDD)
Joshua Dillon has exposed the deeper nuances of this problem and I can especially relate to his comments about Cognitive Empathy (CE).
… the act of understanding the perspective of a human actor by psychologically identifying with their mental model, point of view, or state of being. Cognitive Empathy provides design practitioners with an analytical model to identify with the psychology, thought process, and methods of human actors to better understand their world view and associated perspectives.
Just about anyone can build software. The important stuff is really hard.