Structure Beats Magic ← All writing

Structure Beats Magic

One Cockpit, the Type Is a Parameter

My Control Plane has 66 types of screen and one renderer. A new type is a row of configuration.

By Jaco van der Laan · 2026-10-17
One Cockpit, the Type Is a Parameter

The screen that started it

The screen I like best in my Control Plane is the one for a client meeting. It has a phase switch (prepare, meet, process), a numbered column of steps with sub-steps indented, and tabs underneath for the summary, files, questions and actions.

On 11 September I wrote down what I had been missing: that is not a meeting screen. It is a sequence with a lifecycle, and a trip fits it, and so does an epic or an incident.

The decision I wrote down was one cockpit, with the type as a parameter. A type says which phases it has, which tabs, and where its records live. The cockpit draws whatever the type says. A type is one entry in a configuration file, and a screen is that entry drawn by the same code.

What a type costs

On 11 September there were 13 types. Two days later 33. By 16 September 64. Today 66.

A runbook and an epic are worked through rather than presented, so their entry says phases: [] and the phase bar disappears.

This week two more arrived. Instructions came as one entry with seven kinds under it, each kind overriding only what differs: a handover has the statuses open, picked-up and done and no file tab. Templates came with their own entry and a list of rules for what counts as one. Neither needed a new renderer.

Where it still bites

One thing is not a parameter, and it showed. The back button. Each type needs a line in a small table that says where "back" goes, and a type without a line falls back to the Use Cases cockpit. In one round of new screens on 13 September, twelve of them opened with a back button to Use Cases, a list their user had never been on. There was no error and no test failed, because the fallback was valid code.

The comment I left in the code says a new type must get a line there. A rule that lives in a comment is a rule nobody checks, and I have not yet found how to turn it into a check.

Structure + Data + AI + Rules + Skills → Systems

← More writing Work with Jaco →