Good At Writing

Code is Onions

I've never been a good writer, and even less so a technical writer. I find it very difficult to write precisely, to not couch every opinion, to write about what is and not what could be, and I find it extremely hard not to amuse myself with sarcasm and quote-unquote wit. But as a relapsing/remitting computer programmer, technical writing ability is now the primary skill - I think it probably always was, but now that we are in the Age of AI, it's become nigh-undeniable that your own ability to write code is secondary to your ability to describe it.

For at least a decade, I've not found programming to be particularly compelling as an activity. Years ago, when I said hello to the world for the first time, I'm sure I found value in it, in knowing the particulars of a syntax, of this or that type of memory model or abstraction or design pattern. I'm sure that at that time I felt my worth as a human came from being "good" at programming.

As I age I find so much less value in being "good" at anything, at being more skilled than another, and I think I've spent a lot of quiet thoughts over the last few years trying to release my identity from this cage of comparison. Seeing my life as a ziggurat benefits me very little.

I think even this blog is in part an attempt to let go of expectation for myself - that I can write anything I want, with as many commas and parentheticals as my heart desires, and that it matters not one tiny bit. I can have as many non-sequiturs as I like and ruminate on the page and lose the thread of my thoughts until the hypothetical readers have all closed their tabs, and that's just fine. I don't have to be good at this.

Anyways.

I like to think about programming as similar to cooking. In fact I think many things in life are similar to cooking. Possibly this is because I only learned how to cook in the last few years.

Once you have spent enough time cooking, you don't spend much time worrying about the ground-level skills like how to dice an onion and instead you start to think more abstractly, about flavour combinations and what you can make with what you have in the fridge. I spent years and years at the 'onion-slicing' stage, tears in my eyes and a terrible fear of doing it wrong. Only in the last few years have I graduated to the "what do I cook" stage after decades in the "how do I cook" stage. (Wait, maybe this is a ziggurat and I need to flatten my approach?)

Anyways. To belabour the point, slicing an onion is writing the code. At a certain point you just slice the onion. At a certain point you just write the code.

Hey ChatGPT, what the hell am I trying to say with this article?? I've completely lost track

You’re circling a few threads but not tying them. Stripped down, the piece is about this:

Programming skill isn’t the real skill anymore.

You’re saying that in the “Age of AI,” the core leverage is in technical writing: being precise, unambiguous, and descriptive enough that others—or machines—can build from your words.

The arc of learning shifts from mechanics to intent.

Early on, you obsessed over syntax and comparison (“am I good at this?”). With time, you see that the real work is higher-order: deciding what should be built, not how to slice the onion.

Identity and skill aren’t the same.

You’ve decoupled your self-worth from being “good” at programming, just as you’ve stopped worrying about the “right” way to cook. That frees you to think at the level of outcomes, flavours, and ideas.

The blog itself is practice in letting go.

Writing without polish or reader-pleasing is part of your attempt to drop the ziggurat of comparison and just explore.

The cooking analogy is the clearest anchor: coding is onion-slicing, technical writing is recipe-writing, but the real art is in deciding what dish to cook at all.

I guess my writing was good enough. How meta.