January 8, 2015 Blog

The Three Laws of Interaction Design

Taking a page from Asimov, I propose three fundamental laws that should govern every interaction we design. These rules ensure usability, clarity, and respect for the user.

The Three Laws of Interaction Design

In Isaac Asimov’s science fiction universe, robots are governed by three fundamental laws that ensure they serve humanity without causing harm. As interaction designers, we could use similar guiding principles—rules that help us make decisions when we’re deep in the weeds of product design.

Taking a page from Asimov, and drawing heavily from Jef Raskin’s brilliant book “The Humane Interface,” I propose three fundamental laws that should govern every interaction we design.

The First Law

A computer shall not harm your work or, through inaction, allow your work to come to harm.

This is the most fundamental principle. Users trust us with their data, their time, and their attention. We must not betray that trust.

Consider how GitHub handles repository deletion. When you attempt to delete a repository, GitHub doesn’t just ask “Are you sure?” They require you to type the full name of the repository before the delete button becomes active. This friction is intentional—it protects users from accidental destruction of their work.

GitHub delete confirmation

Apple’s Time Machine is another excellent example. By automatically backing up your entire system, it ensures that even when things go wrong, your work is protected. The computer is actively working to prevent harm through its own initiative.

The Second Law

A computer shall not waste your time or require you to do more work than is strictly necessary.

Every unnecessary click, every redundant form field, every confusing navigation pattern—these are all violations of the second law. The computer should be working for the user, not the other way around.

Stripe’s credit card form is a masterclass in this principle. As you type your card number, it automatically detects the card type and formats the number accordingly. It validates in real-time, preventing errors before they happen. The expiration date field auto-advances. Every interaction has been optimized to minimize the user’s effort.

Stripe credit card detection

Simple (the banking app) introduced the concept of “Safe to Spend”—showing users at a glance how much money they have available after accounting for upcoming bills and savings goals. Instead of requiring users to do mental math, the interface does the work for them.

Simple Safe to Spend

The Third Law

An interface should be humane; it should be responsive to human needs and considerate of human frailties.

Humans are not machines. We make mistakes. We forget things. We get confused. A humane interface acknowledges these frailties and accommodates them.

Amazon’s camera lens compatibility widget is a perfect example. When shopping for camera lenses, the interface shows you exactly which cameras the lens is compatible with. It anticipates your question and answers it before you even have to ask.

Amazon lens compatibility widget

The caps lock warning on password fields is another small but important example of humane design. Rather than letting users fail repeatedly without understanding why, the interface gently alerts them to a common source of error.

Caps lock warning

Applying the Laws

These laws, like Asimov’s, are hierarchical. The first law takes precedence over the second and third. The second takes precedence over the third. This hierarchy helps resolve conflicts in design decisions.

Should you add a confirmation dialog? It might violate the second law (extra step), but if it prevents data loss, the first law takes precedence.

Should you auto-correct user input? It might be helpful (second law), but if it changes something the user intentionally entered, it could harm their work (first law violation).

The beauty of having principles like these is that they give you a framework for making decisions. When you’re stuck between two design choices, ask yourself: which option better serves these laws?

Design, at its best, is an act of empathy. These laws are simply a codification of that empathy—a reminder that every pixel we push, every interaction we design, should be in service of the human on the other side of the screen.