David WalshSubscribe
From the helm

Meetings as an interface design problem

Cadence, agenda, attendees — these are UI choices. Treat them like one.

On this page
  1. Every meeting is an interface
  2. Cadence is latency
  3. Agenda is information density
  4. Attendees are the scope
  5. Familiar UI anti-patterns
  6. Redesigning a meeting
  7. Closing notes

Most teams design their meetings the way a first-year frontend engineer designs their first form: accept every field someone asks for, make them all required, and ship. The form gets used every day, by everyone, and nobody ever redesigns it — because it's just the form. A meeting is the form. A team's meetings are, collectively, the most heavily used interface the team has. They deserve the same care as any production UI, and they almost never get it.

Every meeting is an interface

A meeting is a tool the team picks up, repeatedly, to accomplish something: a decision, an alignment, a surfacing of risk, a negotiation, a handoff. Like any tool, it has a cost to pick up (scheduling, context-switching, preparation) and a cost per use (the hour, multiplied by the headcount). It has affordances — the things it invites people to do — and anti-affordances, the things it quietly suppresses. A standup affords status updates and suppresses deep debate. A design review affords critique and suppresses bystander commentary. Most meeting problems are problems of mismatched affordance: using the wrong tool for the job, or using the right tool wrong.

Once you see meetings as interfaces, the vocabulary of interface design transfers almost one-for-one. Cadence is latency. Agenda is information density. Attendees are scope. Length is interaction cost. The recurring entry on the calendar is a default, and defaults stick.

Cadence is latency

How often a meeting happens is a statement about how fresh the information it exchanges needs to be. A daily standup says the team needs a fifteen-minute polling interval on each other's state. A weekly review says the same team can tolerate a week of drift before it checks in. A quarterly planning session says the direction should not move faster than once every three months.

The trouble starts when the cadence doesn't match the underlying rate of change. A daily standup for a team working on a three-week milestone is mostly a forced daily rehearsal of the same status. A quarterly review for a product in its first ninety days of user feedback is a decision loop operating an order of magnitude slower than the signal. Teams feel this as "meetings are too frequent" or "we're flying blind", but the diagnosis is the same: the polling interval is wrong.

The right cadence is the one that matches the rhythm at which useful new information appears. If nothing has changed since the last meeting, the meeting shouldn't have happened. If a fortnight of change accumulates before anyone aligns, the meeting is too rare. Pick the cadence to match the signal, and be willing to change it when the signal changes.

Agenda is information density

An agenda is the information architecture of the meeting. A meeting without one is a form with no labels: the attendees will fill it in, but the shape of what they produce will depend on who types fastest. A good agenda does three things. It names the outcome — decide X, review Y, unblock Z. It allocates time to each item, honestly, against the rest of the meeting's length. And it says what needs to be true going in — the pre-read, the draft, the numbers — so the meeting starts at the point where synchronous time actually helps.

The common failure mode is the agenda as a topic list. "Q3 roadmap. Hiring. Incident review." Three items, sixty minutes, and no outcome named — which means the meeting's success is undefined, which means it cannot fail, which means it will run long and resolve nothing. An item without an outcome isn't an agenda item. It's a topic, and topics belong in a document, not a calendar.

Attendees are the scope

The attendee list is the meeting's access control and its scope simultaneously. Every person added is a voice that will have to be heard, a context that will have to be set, a perspective that will have to be reconciled. Every person left out is a decision made without them, a relationship that will need patching later, a piece of information that may not land in the room.

The instinct on most teams is to err on the side of inviting more. It feels inclusive. It also, quietly, destroys the meeting. A six-person decision meeting becomes a sixteen-person alignment meeting with no decision. The interaction cost roughly squares with the attendee count — not because the room gets slower, but because the permutations of who needs to agree with whom grow combinatorially.

Two useful defaults. First: the smallest group that can honestly make the decision is the right group. Everyone else gets the notes. Second: if somebody is invited as an observer, say so explicitly, and mean it. An unlabelled observer is a participant by any other name, and will act like one.

Familiar UI anti-patterns

A good way to audit a team's meetings is to look for the anti-patterns anyone shipping a product would recognise as bad:

  • The unlabelled form field. A recurring meeting with no agenda. Attendees fill it in with whatever was on their mind in the lift up.
  • The infinite modal. The meeting that was scheduled for thirty minutes, runs ninety, and blocks every other interaction on the screen.
  • The status dashboard implemented as a phone call. A standup that exists so a manager can hear what a written ticket would have said, more accurately, in less time.
  • The read-together. Fifteen people sitting in silence while someone walks a document at half the speed any of them could read it. A pre-read with a facilitator is a document; it does not require a meeting.
  • The everything-page. One recurring meeting that tries to cover status, decisions, demos, alignment, and morale. It does none of them well, because an interface that tries to do five things badly is worse than five interfaces that each do one thing well.
  • The default nobody designed. A thirty-minute Monday meeting that was set up in 2022 by someone who has since left, and which the team now attends because the calendar invite never expired.
A recurring meeting is a default. Defaults stick. Defaults should be designed.

Redesigning a meeting

The redesign process is the same as any interface redesign: name the job, observe the current tool, identify where it fails, ship a smaller version of a better one, measure whether it actually helped. A few concrete moves that almost always improve a bad meeting:

  • Write the outcome in the calendar title. "Decide staffing for Q3 launch" is a better title than "Q3 launch sync", and it does half the agenda's work before the meeting starts.
  • Default to thirty minutes.An hour is a Parkinson's-law problem in a calendar grid. If thirty minutes is not enough, that is useful information; it means the pre-read was insufficient or the scope was wrong.
  • Separate the decision meeting from the alignment meeting.Deciding with eight people is hard. Aligning eight people with a decision that's already been made is easy, and can often happen async.
  • Make a standing agenda that someone owns. If the meeting is recurring, someone is responsible for the agenda the morning of. If nobody is, cancel the meeting; it has no owner.
  • Retire recurring meetings on a schedule. Every recurring meeting should have an expiry date — three months, six months — at which point it stops unless renewed. Recurring meetings that survive this test are the ones the team actually needs.
  • Treat the first five minutes as loading state. If the meeting starts with "remind me what this is about", the pre-read failed. Fix the pre-read, not the first five minutes.

Closing notes

Meetings are the interface through which a team does most of its actual work. Every engineer who reflexively redesigns an internal tool that wastes two minutes a day would, if they looked at their calendar, find an interface that wastes two hours a day and has not been touched in two years. The tooling is the team's product for the team. It should earn the same scrutiny as anything else the team ships.

Cadence, agenda, attendees, length, recurrence — these are UI choices. They can be designed, measured, iterated, and retired. Treat them that way and the team will notice, quickly, that the week got wider without anyone working less.