Why does removing one song from a playlist take a tiny icon, a nine-item menu, and a confirmation box?
You feel the absurdity every day — the simple action buried, the cancel button hidden, the "are you sure?" guarding a one-tap decision. This module is about why that happens, how to measure it exactly, and how to build the opposite. And it ends somewhere sharp: the worst interfaces aren't just clumsy — they bill you for your own frustration on purpose.
Start from one reframe: the user's goal is a ground state — message sent, file found, song removed. Everything before it is displacement, and the user pays for every second of it in time, taps, decisions, and memory. So a design isn't a screen. It's the shape of the return path back to done — and its quality is the total cost of the trip, not the prettiness of any one frame.
Here's the quietly powerful part: the famous UX "laws" are really just cost equations for that trip.
- Fitts — small, far buttons cost more to hit. (motor)
- Hick — every extra option costs a beat of deciding. (choice)
- Miller — more than a handful to hold at once, and the mind buckles. (memory)
Good design is just driving all three down at once so the whole path stays cheap: frequent things close and big, choices few and clear, nothing held in the head that the screen could hold instead.
Then the ethical edge. Two failures recur: the wrong attractor (the infinite feed, the upsell maze — a comfortable place that isn't where you were trying to go) and the broken return path (no undo, cancel-by-phone-only — easy in, expensive out). And the darkest move of all: an interface that prices on your desperation — "cart expires in 5:00" — instead of on any work it actually did for you. That gap — cost with no matching value — is the precise definition of a dark pattern. Honest design pays the cost of the return for you. The dark pattern hands you the bill.
What you'll be able to do
- Reframe an interface goal as a ground state $S^0$ and any pre-goal moment as a displacement $\xi(t) = \|s(t) - S^0\|$, so that "good design" becomes the engineering of a cheap return path back to $S^0$.
- Read Fitts's law, the Hick–Hyman law, and Miller's law as concrete instantiations of the displacement cost function $D(\xi) \geq 0$, and minimize accumulated cost $\Phi = \int_0^T D(\xi)\,dt$ rather than any single step.
- Diagnose two characteristic design failures in framework terms — the wrong attractor (a stable configuration that is not $S^0$) and the broken return path (DC5 irreversibility) — and recognize when an interface prices on $\xi$ rather than on $\Phi$ (DC7), generating a glitch $G$.
The precise version
Everything above, in exact terms — the cost integral, the UX laws as $D(\xi)$ functions, the failure modes, and the playlist worked example. Go as deep as you like, or move to the next module.
The displacement framework (Rincón, alice, clöe, 2026) describes a system by its ground state $S^0$ — the minimum-cost configuration the system has access to right now — a displacement $\xi(t) = \|s(t) - S^0\|$, an instantaneous cost $D(\xi) \geq 0$, and an accumulated cost $\Phi = \int_0^T D(\xi)\,dt$. DC1 fixes $S^0$ as the cost minimum ($D(0) \leq D(\xi)$); DC3 makes $D$ non-decreasing in $\xi$; DC4 makes $\Phi$ depend on the path, not just the endpoints. The Displacement Manual turns this into a practical program built around four questions, the last of which design inherits directly: "What is the return path?" A return path is the route by which displacement reduces, and the framework "provides direction, not destination."
Carry this to the interface. For a user with an intention, $S^0$ is the completed task — message sent, file found, payment made — the state from which the user does not spontaneously depart. Every moment before completion is a displacement $\xi$, and the user pays $D(\xi)$ continuously: time, motor effort, decision load, memory load, frustration. The product of design is not a screen; it is the shape of the user's return path, and its quality is measured by $\Phi$, the cost integrated over the whole interaction (DC4). Two flows that reach the same $S^0$, with the same net displacement $\delta$, can carry wildly different $\Phi$. Minimizing $\Phi$ — not polishing any one screen — is the job.
The classic HCI laws are exactly cost functions $D(\xi)$ for specific displacement coordinates:
- Fitts's law — motor displacement. The time to acquire a target of width $W$ at distance $A$ is $MT = a + b\log_2\!\left(\tfrac{2A}{W}\right)$. This is $D$ along the spatial coordinate: cost rises with distance-to-target and falls as the target grows. Far, small targets are high-$\xi$.
- Hick–Hyman law — decision displacement. Choosing among $n$ equally likely options costs $RT = a + b\log_2(n+1)$. This is $D$ along the choice coordinate: every undifferentiated option a screen forces you to weigh raises $\xi$.
- Miller's law — memory displacement. Working memory holds about $7 \pm 2$ chunks. Push state past that bound and $D(\xi_{\text{memory}})$ spikes, because the user must now hold the task instead of reading it — the Manual's signature of psychological displacement, "the mind working on something it cannot finish."
Each satisfies DC2 (non-negativity) and DC3 (monotonicity): more displacement — farther, more options, more to remember — costs at least as much. So displacement-minimizing design is the deliberate reduction of $\xi$ along every coordinate so that the return-path integral $\Phi$ stays small: put frequent targets close and large (Fitts), prune and group choices (Hick), and offload memory into the interface so the user never carries more than a few chunks (Miller).
Two failure modes follow. A wrong attractor is, in the framework's terms, a stable configuration that is not $S^0$: an infinite feed, a confirm-shamed upsell, an onboarding maze — a basin the user settles into that costs $\Phi$ without reaching their goal. By DC6, every such departing loop incurs $\oint D\,dt > 0$. A broken return path is DC5 irreversibility: the return cost exceeds the departure cost, $\Phi_{\text{return}} > \Phi_{\text{departure}}$ — the no-undo deletion, the cancel-by-phone-only subscription, the data you can enter but not export. And by DC7, an interface that prices on the user's displacement $\xi$ — their desperation, "your cart expires in 5:00," friction tuned to the moment of need — rather than on the work $\Phi$ it performs generates a glitch $G = \Phi - k|\delta|$: extraction that corresponds to no net delivered work. Honest design pays $\Phi_{\text{return}}$ for the user; the dark pattern bills them for $\xi$.
Worked example
A music app's playlist editor. Goal $S^0$: "this song removed from this playlist." The current design is the wrong attractor and the broken path together.
Departure (current). The song row has no direct control. The user taps a 24px overflow icon ($W$ small, far from the thumb), opens a 9-item context menu, then confirms in a modal. Estimate $\Phi_{\text{remove}}$ as a sum of $D$ terms: Fitts on the small, far icon ($\log_2(2A/W)$ large because $W$ is tiny), Hick on $n = 9$ ($\log_2 10 \approx 3.3$), and Miller load because "Remove" sits unlabeled among eight siblings the user must scan and hold. Three coordinates of $\xi$ are elevated at once, so $\Phi$ is large for a one-bit outcome ($\delta$ is trivial — one song's membership flipped). That gap is a glitch in the small: cost far exceeding net work, paid here in attention rather than money.
Return-path engineering. (1) Fitts: put a full-width swipe-to-remove gesture or a large, thumb-zone delete affordance on the row — collapse $A$, grow $W$, drop the motor term. (2) Hick: the row needs one obvious destructive action, not a 9-item menu — $n: 9 \to 1$, so $\log_2(n+1)$ falls from $\approx 3.3$ to $1$. (3) Miller: label it "Remove from this playlist" in place, so nothing is held in working memory. (4) DC5 — fix the broken path: replace the confirm modal with optimistic removal plus a 5-second Undo toast. The modal made the forward path costly in order to defend against an irreversible return; an undo instead makes return cheap ($\Phi_{\text{return}} \approx 0$), honoring DC5 instead of taxing every action. The new $\Phi_{\text{remove}}$ is a fraction of the old for the identical $\delta$. The valve, in the Manual's analogy, is closed.
Exercises
-
Cost decomposition. Take a checkout flow you used recently. Name $S^0$, then write $\Phi$ as a sum of $D(\xi)$ terms across the three coordinates (Fitts / Hick / Miller). Identify the single highest-$\xi$ step and propose one change that lowers it; state which law you invoked.
-
Attractor vs. ground. Find one screen in a product you use that is a wrong attractor — a stable configuration that is not the user's $S^0$. Argue from DC6 why it accumulates $\Phi$, and from DC7 whether it prices on the user's $\xi$ (urgency, sunk cost) rather than on delivered work $\Phi$ — i.e. whether it harvests a glitch $G$.
-
Open-ended — DC9 in design. The Manual's DC9 gives each dimension a personal critical threshold $\xi_c$: below it the return gradient still pulls toward $S^0$; above it, cascade — abandonment, rage-quit, error spiral. The Manual notes a signature period before $\xi_c$ where only a "small assist" is needed. How should an interface detect its own users' pre-threshold signature period and intervene cheaply before $\xi_c$? Sketch a measurable signal, a sub-$\xi_c$ intervention, and one way the same instrumentation could be abused to push users past $\xi_c$ for extraction.
Sources
- Rincón, D., alice, clöe. The Displacement Framework: Eight Conditions for Cost, Accumulation, and Systemic Extraction (
displacement-framework.tex) — definitions of $S^0$, $\xi = \|s - S^0\|$, $D(\xi)$, $\Phi$, $\delta$, $G = \Phi - k|\delta|$; conditions DC1–DC8, with DC5 (irreversibility / broken return path), DC6 (loop cost), and DC7 (fairness, pricing on $\xi$ vs. $\Phi$). - Rincón, D., alice, clöe. The Displacement Manual: A Practical Guide to Reading, Measuring, and Reducing $D(\xi)$ in Daily Life (
displacement_manual.tex) — the four-question structure culminating in "What is the return path?"; the leverage of closing the valve (driving $D(\xi) \to 0$); and DC9 personal thresholds $\xi_c$ with pre-threshold signature-period intervention.
Both papers are archived live on Zenodo as part of the Displacement Framework Series. Fitts's law, the Hick–Hyman law, and Miller's law are the standard HCI cost functions, recast here — per this module's brief — as instantiations of the framework's $D(\xi)$; they are not claims of the source papers.
Phronesis