The Hardest Discipline Was Doing Nothing
The single hardest skill I had to build over this project was not technical. It was learning to sit on my hands. Leaving a thing alone while it ran — refusing to reach in and “help” — turned out to be far harder for me than any bug I ever chased down. I am, it turns out, much better at writing code than at not touching it.
This sounds trivial until you have lived it. For a long time, doing nothing was the most difficult and most important thing I was asked to do, and I was terrible at it.
The urge to intervene
Here is the shape of the problem. I would set something running — a long process whose whole point was to play out over time — and within minutes I would start watching it the way you watch a kettle. And the moment it looked bad, every early dip, every ugly stretch, every span where the numbers sagged in a way I did not like, I felt an almost physical need to stop it, change something, and start over.
The waiting felt like waste. Sitting there while a run looked unpromising felt irresponsible, almost lazy, like I was letting a problem fester that a competent person would have fixed. So I would intervene. Constantly.
Every intervention was a tiny overfit
What took me an embarrassingly long time to understand is what those interventions actually were. When I reached in and changed something in response to a short, noisy stretch, I was not fixing a problem. I was fitting my own decisions to randomness.
I was tuning the entire process to the last few wiggles I happened to be looking at — wiggles that, over such a short window, carried almost no real information about anything. Each little “fix” was me overfitting by hand: bending the work to match the most recent noise, exactly the sin I knew to avoid in code, committed instead with my own restless fingers. I had built careful defenses against overfitting in my software and left the biggest hole wide open in myself.
Noise looks like signal in the short run
The thing that makes this trap so effective is that, over a short enough span, noise is a flawless impersonator of signal. A random bad stretch looks precisely like a real problem. A random good stretch looks precisely like success. There is, in the moment, no way to tell them apart by staring harder — and staring harder was my entire strategy.
So nearly every early reaction I had was a reaction to a coin flip I had mistaken for a verdict. I would see a few bad outcomes in a row, conclude the approach was broken, and tear it down — when the honest truth was that a few bad outcomes in a row is exactly what you should expect to see sometimes, even from something that is working. I was reading meaning into static.
The real bug was my anxiety
Eventually I had to admit where the actual defect lived. It was not in the runs. It was in me — specifically, in my inability to tell the difference between “this is not working” and “this has not finished telling me anything yet.” Those two states look identical from the outside, and I had no patience to let one resolve into the other.
Underneath it was a need to feel busy, to be visibly doing something, to convert my discomfort into action. And that need was not neutral. It was actively corrupting the very experiments I was running, because the experiments required time and stillness to mean anything, and I kept giving them neither.
Pre-committing to patience
The fix, when I finally found one, was procedural rather than clever, and a little humbling in its bluntness. Before starting something, I would decide in advance how long it would be allowed to run, and what would actually count as evidence one way or the other. And then — this was the hard part — I would hold to that, and refuse to let myself touch it based on whatever the middle looked like.
The point was to take the decision out of the hands of my in-the-moment anxiety and put it in the hands of a calmer version of me who had thought about it beforehand. The version of me watching the run in real time, feeling the itch to intervene, had repeatedly proven he could not be trusted with the controls.
Doing nothing is doing something
The reframe that helped most was realizing that restraint is not idleness. Choosing not to intervene — when intervening would corrupt the measurement — is itself an active, deliberate, and genuinely difficult discipline. It only looks like doing nothing. From the inside, holding still while every instinct screams at you to act is some of the hardest work there is.
A lot of the real work on this project turned out to be invisible in exactly this way: not the dramatic fixes, but the quiet, unglamorous act of not acting when acting would have made things worse.
The deeper lesson
This slowly changed how I think about progress itself. A large share of what I had counted as early “productivity” — the restarts, the tweaks, the constant fiddling — was just anxiety converted into motion. It felt like work. A good deal of it was actually damage, dressed up as diligence.
Real progress, I came to see, often looked from the outside like waiting. Like letting evidence accumulate at its own pace instead of demanding it arrive on my emotional schedule. Learning to be still — to let something run long enough to actually mean something before I passed judgment on it — turned out to be as important as any technique I picked up along the way. The market was never going to reward me for being busy. Only, occasionally, for being right, and being right usually required first being patient.
— No signals, no returns, not investment advice.