The Kernel · 12 March 2026

Naming events that survive a reorg

Notebooks and papers on a working desk

The first casualty of a reorganisation is not morale. It is the event called signup_v2_final. Someone meant well in a sprint, then left, and the next team treated the name as archaeology. App Analytics becomes a haunted house of versions.

In Event Taxonomy Atelier we ask students to name events as if the author will be uncontactable by autumn. That constraint kills most cute verbs. “Nailed it” is not a fact. “Order committed” might be, if you can point at the server write.

Object, then verb, then nothing else

Our house pattern is dull: a noun the warehouse already understands, a past-tense verb that happened, and properties that are dimensions rather than essays. order_committed with source and channel will outlive userDidTheThingFromHomeTab.

We refuse present continuous. “User is engaging” describes a mood. Moods do not survive a join. We also refuse numbering in the event name. Versions belong in a changelog, not in the string you will still be querying in 2029.

The glossary test

Print the event dictionary. Hand it to someone who ships features but has never opened the analytics tool. If they cannot circle the birthplace of each event — client, server, or derived — the dictionary is a wish list. Derived metrics do not get rows. They get queries, documented beside the figure they produce.

When a sitting inherits three sign-up events, we do not pick a winner by popularity. We pick the write that finance would accept, then deprecate the others with a date and an owner. Deprecation without an owner is how signup_v2_final is born.

If you want the longer practice, the atelier is the room. This note is only the vocabulary we insist on before week two.

← Journal index