Full Stack Fish Field Notes Craft

Craft

The robots moved my cheese

The dev job moved from writing every line of code to specifying what you want and judging the result. That shift made ambitious projects like Periodic Mole possible.

For most of my career, I spent far more time figuring out what to build than typing it in. The rest was reading the docs, following the team’s standards and the community’s conventions, and producing the code the slow way, line by line, until the feature existed and whatever tests we happened to write turned green. Over the last two years that slow production has become the model’s job, and a side project of mine shows how far that goes.

That project is Periodic Mole, a study site for high-school chemistry students, built on the idea that a kid who knows the elements as cold as their times tables walks into class ahead, and starts to enjoy chemistry instead of dreading it. So it teaches through small games that bake the chemistry in by spaced repetition, with an interactive periodic table at the center. The table draws all 118 elements, tints each one by chemical family, and folds from an eighteen-column grid on a laptop down to a readable list on a phone. Tap chlorine and a panel shows how it bonds, where it turns up in the games, and which concepts explain it.

The interactive periodic table on Periodic Mole, every element tinted by chemical family
Periodic Mole's interactive periodic table. Tap any element for how it bonds, where it turns up, and the concepts behind it.

A few years ago I would have hand-built every piece of that. The grid math, the family colors, the breakpoint where the layout gives up on columns, the panel that loads when you tap an element. Each was its own small pile of code to write, run, and fix. Multiply that across a whole app and a project this size would once have stalled at seventy percent, the interesting idea buried under weeks of plumbing. Now I describe the pieces instead. I tell the model what the table holds, the states it can be in, and what should happen when someone taps an element on a phone versus a wide screen. It produces the components, and I evaluate if they do what they should and if they are built as they should be.

Describing software well turns out to be harder than producing it by hand, not easier. Vague instructions get vague code. The questions that used to settle themselves while my fingers moved now have to be answered out loud, before anything exists: how a screen reader should announce a selection, whether the family colors carry meaning or are just decoration, what the phone layout does when the grid runs out of room. The skill moved up a level, from “how do I write this in TypeScript” to “what, exactly, should this do, in every case I can think of and a few I can’t.” Being able to articulate what I want, and why, has become a superpower.

And the model is confidently wrong often enough to require rigorous review processes and tooling to enforce standards. Ask one to color a periodic table and it will light up every family in a different bright hue, the whole grid glowing like a toy. That is the opposite of what this site needs, where the color has to mean something rather than just decorate, so the palette stays muted and deliberate. The code compiles either way. What it gets wrong is the judgment, and judgment is the part that did not get automated.

The Periodic Mole landing page: "Walk into chemistry already knowing your way around."
Periodic Mole: chemistry, learned by playing.

If you want to see what “specified, then corrected” actually ships as, the interactive periodic table is the place to start, and the rest of Periodic Mole is built the same way.

So the work redistributed rather than vanished. Less production, far more deciding and reviewing, and far more catching the screen that looks right and isn’t. The typing was never the hard part. It only ever hid how much of the job was judgment.

Our world has changed. Wishing the cheese didn’t move is pointless, we have to embrace what frequently feels like a brand new job. This revolution hasn’t resulted in less work. For most of us, it has resulted in staying up until midnight almost every night, trying new things, seeing the beautiful things we can build. The cheese moved. I’m trying to figure out where it went.

Read this as