Conversation between geeks and users
Every software application is a conversation between the geeks and the users, but they are actually programmers and guests. The programmers show and tell what they can do for their guests, and the guests tell the programmers to work on one or more of those tasks, for example to book a flight ticket.
The success of a software application depends on the quality of that conversation. You can compare it with the ones you may have in hospitality industry. We are dealing with human beings. We need to be polite. Our sentences (messages, labels, errors, etc.) should be clear all the time. Even the colours we choose should obey these principles.
The words, terms and phrases we use are very important; they should be easy to understand in order to avoid confusing the guests. Especially, writen conversations are challenging. We should eliminate misunderstanding or misleading. They say writen communication, for example emails, may look harsher than they are intended.
We should automate almost every task with minimum effort required from our guests. We should save them time.
If we do not aim for seeing happy guests leaving our software application, web site, mobile app, etc., then we may not see them again. Simple.