Writing

Essays on data engineering, applied AI, and the craft of building software, originally published on LinkedIn.

The Junior Developer Who Never Sleeps

The Junior Developer Who Never Sleeps

AI agents

Everyone wants to know what the AI agent is. Is it a genie that grants wishes, three at a time, each one warping in a way you didn't foresee? Is it the thing that comes for your jo…

The Tachometer and the Throttle

The Tachometer and the Throttle

Responsible AI / cost

The demo is always beautiful. Someone types a sentence, an agent whirs, and a week of work appears in ninety seconds. Everyone in the room does the arithmetic in their head: the sa…

The Philosophical Zombie in the Pull Request

The Philosophical Zombie in the Pull Request

Responsible AI / accountability

There is a thought experiment philosophers have kept in a drawer for decades called the philosophical zombie. The idea is precise and a little chilling: imagine a being identical t…

Every Pipeline Is a Promise

Every Pipeline Is a Promise

Data engineering craft

Ask most people what a data pipeline does and they'll tell you it moves data from here to there. Which is true, in the way that saying a wedding vow moves words from one person to…

The Second Law of Data

The Second Law of Data

Data engineering craft

The second law of thermodynamics is the one that ruins your day if you think about it too long. It says, roughly, that in a closed system entropy always increases. Disorder is not…

In Praise of the Boring Pipeline

In Praise of the Boring Pipeline

Data engineering craft

I want to say a word for the boring pipeline, because nobody else will. The boring pipeline gets no praise. It gets no praise precisely because it is doing its job, and the reward…

Git Is a Time Machine, and You Are the Historian

Git Is a Time Machine, and You Are the Historian

Git & dev practices

We talk about version control as though it were a safety net, a place to save your work so you don't lose it, and that's true and it's the least interesting thing about it. A safet…

Linting Is Spell-Check for Code. So Why Do We Resent It?

Linting Is Spell-Check for Code. So Why Do We Resent It?

Git & dev practices

Nobody argues with spell-check. You misspell a word, a red line appears, you fix it, and what do you feel? Nothing. Mild gratitude, at most. You do not experience the red line as a…

Why Do We Work, When the Machine Can Do It?

Why Do We Work, When the Machine Can Do It?

Work, meaning & craft

⚠️ Verify before publishing: any Camus line must be confirmed verbatim and correctly attributed. The closing idea below invokes the famous last movement of The Myth of Sisyphus; co…

Code as Composition

Code as Composition

Work, meaning & craft

⚠️ Verify before publishing: if you quote Wallace Stevens or any poet, confirm the line verbatim and correctly attributed first. This draft names poem titles (which is safe) but qu…