This is a post from Robin Sloan’s lab blog & notebook. You can visit the blog’s homepage, or learn more about me.

Thinking about coding

August 31, 2025

In recent years, I have found myself less often in front of the computer, and one result is that I seem to spend as much time thinking about coding as I do actu­ally coding.

I’ve been working on a pro­gram­ming project this summer, one that’s coming together in a really cool way, and its devel­op­ment has been an odd and exciting experience. This week, I had an idea for an impor­tant revi­sion; I was super­busy with other work, but/and the plan percolated — on walks, while doing the dishes. Yes­terday evening, I had time to tinker, but my laptop stayed shut. Instead, I spent a couple of hours with a notebook. I con­tinued to think about my planned revi­sion as I fell asleep. I dreamed about it — or maybe the loop of thought just kept going, in a way that felt like dreaming.

This morning, I made coffee, finally sat down at my laptop, and … just did it, in one of the more robust, straight-through coding ses­sions of my life. And the plan that had crys­tal­lized in my imag­i­na­tion basically … just worked!

My pro­gram­ming style used to be very much “dive in, start typing, gen­erate errors, learn from them” and I still think that’s the cor­rect approach … but maybe I never real­ized there was an alter­na­tive? More likely, that alter­na­tive wasn’t yet avail­able to me, at my level of skill and/or patience.

I’m now con­vinced that thinking about coding, at a safe dis­tance from the computer, has pro­found value. I already knew this about writing, about fiction … feels nice to get here with code, too.

(There’s a sat­is­fying thread of con­nec­tion to pro­gram­ming’s history, the time before inter­ac­tive terminals, when there wasn’t even the option to “dive in”: only to think, and write your program — the whole thing — and turn in your punchcards, and wait your turn in the queue, and, finally, see the result … !)

To the blog home page