Other blog posts
Why UX Matters

Why UX Matters


UX or User Experience, is a vast and multifaceted subject. It is much more than just visual design and aesthetics, it encompasses usability, accessibility, and how users feel when interacting with a product. When building software, UX plays a critical role in determining how enjoyably users can engage with the software.

In this article, we’ll explore why UX matters in software development and how it impacts end users. We’ll also touch on some UX principles and as a bonus, I have included tips from industry experts on how to improve collaboration between developers and designers.

What is UX?

Don Norman, co-founder of the Nielsen Norman Group, utilised the term User Experience in the 1990s to explain all the aspects of an individual’s interactions with the particular product(s) or service(s) of a company.

If we apply this definition to the context of software, it can be understood as the general experience that a user will have while interacting with the software in question, this will range from usability to emotional response. It can be very simple factors such as muscle memory in the placement of call-to-action elements but also more critical aspects, such as ensuring accessibility for users with disabilities. For example, an app with good UX allows users with visual impairments to navigate the interface with minimal effort and not having to seek help from a third-party.

People often get UI and UX mixed up. In a nutshell, UI or User Interface represents the visual elements such as buttons or any other interactive elements in an app, on the other side; UX relates to user’s feelings and emotions, or the non-tangible aspects.

Why does UX matter?

I’m pretty sure you have had a frustrating experience using an app or one of the terrible governmental websites at some point in your life. If not, think about that time when you were confused in front of a door that does not have a label to indicate whether you should push or pull it. Well, that is an example of bad design. It can extend beyond digital experiences and impact physical products as well. This is why UX matters.

UX as a practice brings solutions to such problems by focusing on usability, accessibility and user satisfaction. Through a series of research, planning and design, it will ensure that products are intuitive. A properly designed user experience will make interactions feel effortless and natural.

That being said, UX can also have a major impact on the business side of things. If you’re not Sonos and you want your mobile app to drive business success, you will want to place considerable emphasis on the UX. If an app has good UX then it will definitely have higher retention, better engagement and hence, increase revenue.

On the other hand, if an app is poorly designed with bad UX, it is bound to have higher bounce rates and will lead to user frustration. Some examples of backlashes caused by bad UX are; Snapchat’s redesign, Apple changing the Photos app UI or Duolingo’s redesign and of course the multiple UI changes that Instagram makes every week.

You might have noticed that app redesigns often lead to user dissatisfaction. This is mainly due to the fact that as humans, we find comfort in familiarity. When an interface we’ve grown accustomed to suddenly changes, it disrupts our muscle memory and forces us to relearn basic interactions. Even if the redesign is intended to improve usability, the initial reaction is often frustration.

5 UX principles to know

During my undergraduate studies, I did a course on UX Design. I found it extremely interesting. We used the book Universal Principles of Design. It contains an extensive list of design principles with very insightful examples, below are 5 principles that I found particularly thought-provoking.

  1. Chunking- If you are a developer, you might be familiar with the term Chunk - it refers to a unit of information in short-term memory. The same idea applies to the context of UX Design. Chunking can be used to make designs simpler. According to George Miller, most people can only remember a list of 5 words for 30 seconds. By breaking large pieces of information into smaller chunks, the human brain can process the data more efficiently. When designing software, this principle can be applied to navigation menus by grouping related items instead of cramming too many options into a single menu. (See Gestalt principles of perception and Five Hat Racks for more insights.)

  2. Consistency - As mentioned earlier, familiar interfaces are often the most successful ones. Familiarity can be achieved by ensuring designs are consistent; this will allow users to transfer their existing knowledge to new contexts. For example, most modern mobile camera app, regardless of the operating system, uses similar gestures; pinching in to zoom and pinching out to zoom out. These interactions quickly become part of muscle memory, which makes it effortless for users to adapt when switching to a new device. A physical example is road signs; in nearly all countries, the stop sign is red and octagonal. Even if you cannot read the “Stop” label, chances are you will still recognize it and know to stop. Consistency can also be applied to different screens/pages of an app, by having similar layouts or uniform styling.

  3. Picture Superiority Effect - A picture is worth a thousand words. I personally find it easier to understand programming concepts by looking at a diagram instead of reading a long paragraph. Recognition over Recall can play an important role in enhancing usability in software; recognition reduces cognitive load by allowing users to quickly identify familiar elements, whereas recall requires users to retrieve information from memory. This is why intuitive UI elements, such as icons and visual cues, can significantly improve the user experience.

  4. Forgiveness - A good design should naturally help users avoid errors. However, human error is unavoidable, and by improving forgiveness in a design, errors can be minimized. This can be achieved by ensuring Good Affordance and Reversibility of Actions. For example, when filling out a lengthy form, if a user makes a mistake, they should have the ability to undo it without having to start over. A good affordance in this case could be a clear or trashcan button within each input field or section respectively, and a reset button at the top of the form provides a visual cue that users can easily start over if needed, making the interface more intuitive and forgiving.

  5. Ockham’s Razor - This is one of the many principles that stress on simplicity. Unnecessary or redundant elements impact the efficiency of a design and should be minimized. When designing User Interfaces, every element should serve a clear purpose. Too many buttons, excessive text, or overly complex layouts can overwhelm users and make interactions less intuitive.

But I’m a developer not a designer…

You might think that UI and UX are solely the concerns of designers, but not entirely. While frontend developers work closely with designers, that doesn’t mean backend developers should ignore UX altogether. At the end of the day, you can write the best code, but if your end users struggle to interact with your software, it loses its value - a well implemented feature with bad user experience is still a bad feature.

Simple considerations like optimizing API calls for faster responses, structuring data efficiently to improve performance, and ensuring error messages are clear, all contribute to a better user experience. UX at the end of the day is a shared responsibility, and every decision plays a role in shaping how users interact with the product. I’m not saying every developer should be a UI/UX expert, but at the very least they should have a basic understanding of its implications and importance.

Improving collaboration between developers and designers

Below is a list of tips shared by my LinkedIn connections on improving collaboration between developers and designers.

Yangshun Tay (Co-founder, CEO @ GreatFrontEnd)
  1. Agree on design and product terminology beforehand.
  2. Align on design system, especially on the tokens.
  3. Have developers review designs frequently, highlighting potential issues before handoff.
  4. Minimize component overrides.
Md Jubaer Alam (Founder & Head of UX Design @ Focotik)
  1. Use constraints that align with front-end frameworks and avoid overly complex animations or layouts that are hard to implement.
  2. Use a Design System – A well-documented design system with reusable components helps ensure consistency and speeds up development.
  3. Provide Detailed Specifications – Clearly label spacing, typography, colors, and states for elements in design tools like Figma or Sketch.
  4. Share Interactive Prototypes – This helps developers understand transitions, hover states, and animations without having to guess.
  5. Organize Assets Properly – Export assets in the correct formats and resolutions, and optimize images for web or mobile performance.
  6. Be Open to Feedback – Work with developers to refine designs if certain elements are difficult to implement efficiently.
Mojisola Alegbe (Frontend Engineer)
  1. Get involved early in the design phase – Participate in brainstorming sessions and design reviews to provide technical insights and ensure feasibility before development begins.
  2. Establish a shared understanding of user needs – Maintain open communication with designers to align on goals, identify potential challenges early, and create a smooth, intuitive product.
  3. Use prototyping to bridge the gap – Build early models of the product to visualize the UI, gather feedback, and iterate on designs before final development.

Check out Mojisola’s article for more insights.

You can notice that they are all emphasizing the importance of clear communication, alignment, and mutual collaboration between developers and designers.

  • Consistency in Design Language – Using shared terminology, design systems, and detailed specifications ensures that both teams work towards a unified vision.
  • Early Involvement & Feedback – When developers participate in the design phase and review designs frequently, they can flag potential technical constraints and avoid last-minute surprises.
  • Efficient Handoff & Prototyping – Providing interactive prototypes, properly organized assets, and well-documented specifications helps streamline the development process and reduces misunderstandings.

At the core, successful collaboration comes down to mutual respect and an iterative approach where both designers and developers contribute their expertise to build seamless user experiences.

Why bother about UX when there is AI now?

The thing is, Artificial Intelligence is … well artificial, and that is exactly why UX still matters. Until we reach true Artificial General Intelligence, UX will remain a field where human intuition and empathy play a crucial role. Every individual is unique, and user experiences are shaped by subjective factors such as emotions, cultural backgrounds, and personal preferences.

While AI can optimize interfaces and automate certain aspects of design, it lacks the human touch needed to fully understand and cater to these nuances. UX is deeply rooted in psychology, ensuring that digital products are not just functional but also intuitive, accessible, and enjoyable to use.

Conclusion

In today’s competitive digital landscape, UX is more important than ever. By prioritizing UX, developers and designers can create products that not only meet user needs but also provide enjoyable and intuitive experiences. A well-designed user experience can lead to greater success for your product.


References:

  1. Figma (2023). UI Design vs UX Design: What’s the Difference? | Figma [2023 Guide]. [online] Figma. Available at: https://www.figma.com/resource-library/difference-between-ui-and-ux/.
  2. Kaplan, K. (2024). What Is User Experience (and What Is It Not)? [online] Nielsen Norman Group. Available at: https://www.nngroup.com/articles/what-is-user-experience/.
  3. Lidwell, W., Holden, K. and Butler, J. (2010). Universal principles of design. Gloucester, Mass.: Rockport.