Build Design Systems With Penpot Components
Penpot's new component system for building scalable design systems, emphasizing designer-developer collaboration.

UX Planet — Medium | Anton Nikolov
Making errors is an integral part of the way we humans live. We trip over when we are learning to walk and we press the wrong buttons when we use new UI. This fact is very unlikely to change soon.
As Designers we must have that in mind when designing. Our designs must be aimed at preventing errors happening. Design must minimize the negative impact of errors when they occur and provide a way to reverse them if possible.
Let’s take a look at some of the main error categories that we need to pay attention to, when designing.
Slips happen when you walk on ice. 🙂 In other words, when people perform an action and the result is not what was intended due to misstep.
A good example, are typos when texting on my phone and I’ve tapped the wrong letter because my fingers are chubby. Or, when I try to handle Instagram with one hand and want to reach the far corner action icon suddenly the base of my thumb presses the home icon.
Lapses are a brief failure of concentration, memory or judgement. In a world, where the average person has short attention span lapses are frequent type of errors. Most of the cases they happen due to distraction either in the user interface or in the environment the user is using our product. Other times is just due to the passage of time.
Example of a lapse, could be the failure to pay automatically my membership subscription because the system didn’t notify me that my credit card has expired. It could have send me an email to input my new card but it didn’t. Now, it’s my fault for not remembering it!
Mistakes occur when the user has incorrect knowledge or an incorrect assessment of a situation. This develops a mental model that leads to an error most of the cases. People are goal orientated and if the system/app does not provide them with correct information/guidance they do mistakes. Usually that leads to trial and error approach. Unfortunately also to not so good user experience.
For example, I’ve been tweaking my profile settings for 10 minutes. When I am finally done, I click on my profile to check out the changes only to find out that they were not saved and everything is lost. 10 minutes of my life lost forever!
“But slight mistakes accumulate, and grow to gross errors if unchecked.” ― Jacqueline Carey
So let’s see what can we do to design in a way that prevents such mismatches between the people’s expectations and our products.
Our designs must help people avoid errors and protect them from harm if errors occur. Here are a few strategies to achieve that.
Use the knowledge your users have of other products and designs to establish a baseline for your design. That’s why it’s a good idea to use already established usability patterns. Buttons should clearly communicate that they are buttons, doors should clearly indicate if you need to pull or push and etc.
Avoid assuming that your user knows how to use your product, user test it! Save the user from inputting incorrect information or clicking the wrong button. Design UI that communicates clearly what the purpose is and provides guidance for the user to complete her/his task.
Nike shoe configurator with preview of how the show looks
Allow users to compare where they are going before they make the final decision. Enabling the user to preview the changes that will occur is a powerful technique to prevent unexpected results.
For example, applying effects in Photoshop provides a preview option so the settings can be adjusted before the effect is applied.
UI image by Michael Hutchinson
To deal with short attention spans and lapses use clever alarms and checklists. Setting a reminder/alarm at the right time to inform the user that an action is required can provide your users with great UX and save them from errors.
Whenever possible, save the user from the trouble of keeping information in their short-term memory. Use task lists or checklists to eliminate the condition of remembering all the tasks that need to be done.
Remember, people use products in the real world which is full of distractions, especially valid for mobile apps. Make sure to design with the usage context in mind.
Sometimes, people don’t realize the red button they’re about to press means that everything goes to hell. Ask for confirmation in cases where making a choice can lead to a mistake or harmful result.
Confirmation window asking you if you really want to leave the page without saving your settings is a must if you don’t have auto save!
Use alerts when something is about to go wrong. Make sure the warning is clear and communicates useful and actionable information.
The power to undo is tremendous! Whenever possible design the product to forgive mistakes and allow the user to reverse any actions that led to them.
Whenever possible create a safety net. Version control, parachute systems and archive of the deleted folders in your cloud storage, all of these can be lifesavers (literally in some cases).
Designs that account for errors and are designed to be forgiving provide security and stability. Users are happy when they feel secure and safe. They can explore and use our designs without worrying or feeling dumb that they do all these errors.
Users enjoy using forgiving products and once they’ve experienced forgiving design they don’t settle for designs that don’t offer that.
Thanks for taking the time!
Tap or click the “︎❤” to let me know if you enjoyed the article.
Follow me on Twitter and here on Medium.
Previous design principle:
Design principle: Organizing information
Inspired by the book “Universal Design principles”.
Design principle: Error & Forgiveness was originally published in UX Planet on Medium, where people are continuing the conversation by highlighting and responding to this story.
AI-driven updates, curated by humans and hand-edited for the Prototypr community