A ny application from purely user perspective is only User Interface. This is not to say that business logic and code are not important.
This to say that applications which have intuitive User Interface are the one's loved by users. Users do not need manuals or training to use the same.
Businesses save time and energy required to train employees when User Interface s are intuitive. In Consumer Internet domain Website/ App gain consumer traction only on basis of user experience driven by User Interface.
Example of Failure: Google+ Complex UI
There can be much written about Google+ exclusive invitation strategy at start. There could not have been a more ridiculous strategy. It was as if a pub or a bar was setting condition that only few of your friends can come in while others have to wait outside.
Google+ was both a strategy and a design failure. In Consumer Internet a single application cannot be named which has succeeded and it required training s/ hints. Google+ UI could not be understood without hints available on their UI.
Design is like a Joke
If it has to be explained then it's poor. Consumers have options and their time is important. They do not have time to read hints/manual in order to use your product. Much has been written about Steve Jobs obsession with Design. It is said that he visited India and was impressed by simplicity here. This affected his perspective toward Design. Average user s does not like complexity or clutter.
UI Design is both Science and Arts. Users are pampered when they feel they are using a premium product. Perception of high quality comes from aesthetics. The effort that goes in building aesthetics for a UI is appreciated by users and perception of the product being premium is built in their minds.
UI Design Principles in short:
1.The structure principle.
It's about keeping related features together and unrelated features separate. Its logical arrangement driven by purpose of the application.
2.The simplicity principle.
Tasks should be simple to execute. If Microsoft Windows are successful today it is because of it simplifying user ability to perform tasks.
3.The visibility principle.
All options and material to perform a task should be visible without confusing user. Redundant option and extra information should be avoided.
4.The feedback principle.
Users need to be informed about their actions performed on UI giving feedback like 'You have submitted form successfully' or exact error message. If error can be shown while filling a field then its better.
5.The tolerance principle.
Users should be given option to correct only the field which had error rather than doing the task from start. Users should have option to go back to previous stage without losing their work.
6.The reuse principle.
Your design should reuse internal and external data which can be edited by user but this saves time of user. Pain of rethinking and remembering is reduced for user.