Realistic expectations of the user behavior of real users is far better way to develop software than ideal personas.
Unrealistic expectations regarding the user’s skills and commitment to use the software can lead to UX flows that alienate real users from using the software product. These issues can be overcome by getting to know the real users and creating a realistic understanding on users’ skills and commitment.
Additionally, if UX is not carefully planned out it becomes random, but still a pattern a user is supposed to somehow learn and adapt to. We’ve seen how these haphazard non-optimized UX patterns can get repeated and duplicated in the software user interfaces and product models.
Empathy and respect towards users calls for providing a UX outcome that recognizes the user as a real human, in a real time and place, with certain skills and limited resources to use the software.
When you can sympathize with the user, you do everything you can to fix their pain points. This includes accepting the user as a type of user they are, and their expectations for the user experience for the software. We should not build an ideal persona of a user that does not match reality.
Here is an insightful summary from Nielsen Norman Group (UX Research Institute) that emphasizes that users are real people with certain skills, attention level and a limited acquired knowledge:
In our SDLC cycle the UX/UI work carries through the entire process; from research to product prototyping; and from all layers of quality assurance to finalizing each development milestone. It is never too late to fix an UX bug or correct a wrong direction in UX flows, but it is better to address these UX issues early, before they start multiplying and living their own life, alienating users and jeopardizing their commitment to use the product.