Try the sample plan

All posts

Drawing a plan that doesn't move under you.

Why the Overview is laid out once and kept, why its columns aren't statuses, and the one thing on it that's allowed to move.

We drew the Overview twelve different ways before we settled on one. Some were timelines, some were swimlanes, one was a map of milestones. The one we kept looks like an engineering drawing, and the reason has less to do with taste than with a rule: the plan shouldn't move under your hand.

Columns are steps of waiting

Most boards make a column a status: To do, Doing, Done. Then taking a bite moves it across the board, blocking it moves it again, and the board you looked at a minute ago isn't the board in front of you now.

Our columns mean something else. Each one is a step of waiting. The first, Now, holds what can start today. Next holds what waits on one of those, then After that, and so on to the milestone. Taking a bite, leaving it or blocking it changes the box, not where it stands. A taken bite's corner piece lifts. A blocked one gets an orange edge, a hatch and the word "Blocked". The box stays put.

NOWNEXTMILESTONE Card vault stubcan start today Retry and idempotencyfrom Oct 15 Checkout betalikely Wed, Oct 28 Payments webhook handlerSam · ends Oct 13
Part of the sample plan's Overview. The critical path is the top row, always; the dashed line is the ready line, and left of it nothing is in the way.

The sheet is laid out once

When you open a plan, the drawing is laid out and then kept for the session. An ordinary move, a take, a leave, a new estimate, changes the box it's about and nothing else. Everything you'd memorised about where things are stays true.

There's one exception, and it's deliberate. The critical path is always the top row, so when a move changes the path, the new path's bites move up to it, and whatever hangs from them moves with them. Nothing else is reshuffled. The page takes you to the head of the drawing so you see the new path, and the sentence that describes the move says so.

One motion, and only one

When the path changes, the boxes that move travel to their new cells over 420 milliseconds, each a beat behind the last, and the lines ink in after them. That's the only animation on the drawing. Every other change is instant, or a short fade.

We held to one because motion is a claim. If everything slides around, nothing in particular moved. If one thing travels, you watch it and you know: the path changed, and here's where it went. With reduced motion turned on, the travel is skipped and a quiet mark stays on the box the move landed on, so nothing that was information is lost.

Undo puts it all back

Every move can be taken back, and Undo restores the move exactly: the plan, the log of what moved the date, every box's cell, and the place on the page you made the move from. A drawing that rearranges itself on undo isn't really undone.

When a teammate moves something while you're looking, their change settles in place. Their box changes where it stands; your view doesn't scroll and your focus doesn't jump. One quiet line under the plan says what they did.

Keeping it fast at the size real plans get

A drawing that stays put is easy with twelve bites. We test against a plan of five thousand. The first version of the layout grew with the square of the plan and took about half a second at that size, which is long enough to feel. We rebuilt it so it doesn't, because a plan that's slow to draw is a plan people stop opening.

None of this is visible when it works. You open the plan, everything is where you left it, and the only thing that moves is the thing that changed. That's the point.