User Experience is a concept that you could materialize in so many places. You could think about it and implant it while Coding functionality, Designing user interfaces, Marketing, Engineering, Selling, and so on…
Developer experience during coding and programming
The programmers don’t just sort the bytes in the computers. They use tools to create new tools. How fast the developers produce new software and of how well the new creation is implemented? A lot of times this depends on the underlying tool.
In the past going deeper was reaching the hardware limitations. Today, especially in Internet based applications, the end of the digging is limited by the underlying software. Too much software has been written in the past and the newer one must respect it. It is – being compatible.
End User / Customer Experience
The consumer is the king. Without users, there are no money, no business, no nothing. A lot can be done to satisfy the end users. I have written in the past an article about Professional Front-End and App Developers Tips and Hints – not for 2020 but for-ever. Some of the aspects for better user experience are:
- Load Indicators and Messages about what the app is doing.
- Prevent double submit with disabling buttons/actions.
- Load and display the small and light information first, put placeholders and then – load the more heavy content – giving better progressive user experience
- Cache offline resources for optimal second (and more) visit and for mobile users
- Load only the stuff that is able to be presented at one time and after that load more on the background. This Brings faster load and availability of the user for first action.
- Choose wisely Server vs Client vs Mixed centric content/data rendering approach.
What Input data is Correct
A hint about – what could be a correct input that will fulfill the happy path could be presented in several places. In source code documentation – this could be the java doc or the online specification. In User Interface cases – this could be implemented as label aligned above/below the input fields or as a gray placeholder that is cleared after user types in.
Why and What is wrong with the input, the hardware or software environment?
No matter what is the type of an app or how intelligent and smart is the User, the monkey behind the product or service or source code library must receive from the system smart enough requirements – what he/she must do to complete their task that a system is involved in.
How to fix a problem
When the user enters wrong input, the system should return clear and concise message where exactly is the problem and how to fix it. Many times the error message could include the input and have placed in the same context also some examples or intervals of correct value or values.
Time of Feedback from the Software
During coding – this is one of the features of the Integrated Development Environments. Coders nowadays are lazy as hints about variable names, functions, methods and more are auto-completed or suggested as they type.
At what point the user interface coder displays the error returned to the user? Better sooner, during initial typing, than at submit. This is better and more optimally archived with client side validations. Having validations at every small change also could minimize server validation and load.