A broadside, for buildingClash Display Variable

MANIFEST

Software is designed whether you design it or not. Nine positions, taken on purpose.

wght
470Drag the axis. The masthead answers.
On defaults

Sweat the Defaults

The default is the decision most people never revisit. Ship the setting that serves the tired user at midnight, not the one that demos well on a stage. A good default is an argument you win without the user knowing there was one. Most of your product is defaults. Treat them like the product.

On speed

Latency Is a Feeling

A hundred milliseconds is a mood. Optimism lives under a tenth of a second; doubt begins near a full one. Nobody has ever described a fast product as fast; they describe it as good. Every frame you give back is a frame the user spends trusting you. Stop shaving numbers and start deciding how the thing feels in the hand.

On restraint

Delete the Feature

Every feature you keep taxes every feature you add. The roadmap is not a list of things to build; it is a list of things to defend. Subtraction is the hardest edit and the most honest one. If cutting it makes the product clearer, it was never load-bearing. Ship less, on purpose, and mean it.

On language

Copy Is Interface

Words are the most-used component you never designed. A button that says Submit and one that says Send invite are two different products. Nobody reads the manual; everybody reads the button. Write the sentence before you style the screen. Language is the smallest unit of trust you actually control, so spend it like it matters.

On beginnings

Empty Is a State

Design the blank screen first. The empty inbox, the zero-results search, the account with nothing in it: that is where every user begins and where the anxious one returns. A polished full state beside a barren empty one is a product that greets strangers coldly. Onboarding is not a tour. It is the first empty state, done with care.

On failure

Errors Deserve Grace

The error message is where your product meets the user at their worst. Blame no one, explain plainly, offer the next move. Something went wrong is a shrug in a lab coat. Name what broke, say what you are doing about it, and never make a person feel foolish for using the thing you built for them.

On motion

Motion Has Meaning

Animation is not decoration; it is punctuation. It tells the eye where a thing came from and where it went. Move something only to explain a change the user could not otherwise see. When motion means nothing it costs everything: a frame of doubt, a beat of nausea, a hint that nobody was paying attention.

On limits

Constraints Are the Brief

A blank canvas is not freedom; it is fog. The grid, the budget, the deadline, the single accent color: these are not what stop the work. They are what make it. Give a team infinite options and they ship the average of all of them. Narrow the field on purpose and watch the work turn sharp.

On shipping

Ship to Learn

A product in your head is a theory. A product in a stranger's hands is a fact. You do not know what you built until someone uses it wrong. Perfection is procrastination with better lighting. Launch the honest version, watch what breaks, and let reality edit the plan you were too proud to cut.

The objections, struck
Nobody reads manifestosDesign is what is left after the engineeringUsers cannot tell the differenceTaste does not scaleThere is no time for craftJust copy what already worksThe metrics never move for polishOpinions are not a strategyNobody reads manifestosDesign is what is left after the engineeringUsers cannot tell the differenceTaste does not scaleThere is no time for craftJust copy what already worksThe metrics never move for polishOpinions are not a strategy
A colophon

Why this exists

Most software is designed by accident. The screens people touch every day were rarely drawn by someone who cared; they accreted, one shipped compromise at a time, until the accident hardened into a habit and the habit into a standard nobody chose. A manifesto is a small act of refusal. It says: this was a decision, and here is the decision we would make instead.

We are not the first to argue that the person on the other side of the glass1Borrowed from the old newsroom idea that every line is read by a stranger who owes you nothing. Software inherited the stranger and forgot the debt. is real. We will not be the last. But arguments have a way of evaporating between sprints, and a broadside is harder to ignore than a comment thread2Comment threads optimize for the last reply. A broadside optimizes for the first glance and every glance after. Different medium, different memory.. Print it, pin it, disagree with it in the margins. A position you can point at is worth more than a consensus nobody remembers reaching.

Sign it

Type your name. It sets itself.

Your signature sets itself here.
3,142names, and counting