<?xml version="1.0" encoding="utf-8"?>
User control and freedom
Exercise

User control and freedom

Help users recognize and recover from errors
Exercise

Help users recognize and recover from errors

Error prevention
Exercise

Error prevention

Avoid vague commands
Exercise

Avoid vague commands

Placeholders
Exercise

Placeholders

Avoid double negatives
Exercise

Avoid double negatives

Error state
Exercise

Error state

Place destructive actions away from other actions
Exercise

Place destructive actions away from other actions

Exercise

Add inline validation in forms

Show an error message if necessary
Exercise

Show an error message if necessary

Errors in native apps
Exercise

Errors in native apps

Exercise

Saving progress

Typing confirmation vs. clicking a button
Exercise

Typing confirmation vs. clicking a button

Create helpful 404 pages
Exercise

Create helpful 404 pages

Fix grammar and rewrite
Exercise

Fix grammar and rewrite

Offering support at the point of error
Exercise

Offering support at the point of error

Place reset link close to the password field
Exercise

Place reset link close to the password field

Exercise

Keep the error state visible till fixed

Write clear and concise error messages
Exercise

Write clear and concise error messages

Provide input masks to avoid errors
Exercise

Provide input masks to avoid errors

Prevent errors from the start
Exercise

Prevent errors from the start

Meaningful error messages
Exercise

Meaningful error messages

Allow users to enter information
Exercise

Allow users to enter information

Make hints permanent
Exercise

Make hints permanent

Don’t make users feel bad
Exercise

Don’t make users feel bad

When to autosave
Exercise

When to autosave

Reset the password
Exercise

Reset the password

Use human language
Exercise

Use human language

Validate payment details
Exercise

Validate payment details

Prevent errors before they happen
Exercise

Prevent errors before they happen

Canceling or reverting changes
Exercise

Canceling or reverting changes

Keep the input in default state
Exercise

Keep the input in default state

What is an error message?
Exercise

What is an error message?

Exercise

Confirm intent to cancel

Notify that changes have been saved
Exercise

Notify that changes have been saved

Signal error after loss of focus
Exercise

Signal error after loss of focus

Tell users what went wrong
Exercise

Tell users what went wrong

Shape intersection
Exercise

Shape intersection

Predictive interfaces and anticipatory design
Exercise

Predictive interfaces and anticipatory design

Establishing ethical guardrails
Exercise

Establishing ethical guardrails

Exercise

Articulating model constraints

Designing for graceful AI failure
Exercise

Designing for graceful AI failure

Exercise

Unpredictability and edge cases

Avoid blaming labels
Exercise

Avoid blaming labels

Creating staging areas for AI outputs
Exercise

Creating staging areas for AI outputs

Action reversibility
Exercise

Action reversibility

Writing error handling prompts
Exercise

Writing error handling prompts

Destructive buttons
Exercise

Destructive buttons

Understanding AI safety nets
Exercise

Understanding AI safety nets

Exercise

Typography pitfalls