Writing, Again

The feedback loop

I started this blog in 2003, during what now feels like a golden age for blogs. This was before social media. I would write something, someone else would respond on their blog, and then a third person would join from theirs. RSS let us follow one another without gathering on the same site. Comments and trackbacks held the conversation together. I wrote that year that blogs were a better model for building community than mailing lists.

The blogging community was still small and tight-knit. I was early in my career and didn't have a large audience, but I could publish an idea and people would take it seriously enough to respond. Publishing meant entering a conversation. People corrected me, disagreed with me, added things I had missed and quite often took the idea somewhere better. On the blog's fourth anniversary, I wrote that "most of the motivation for writing here is the feedback loop."

When the feedback got shorter

I joined Twitter in February 2007. A month later I wrote "I Don't Get Twitter" (an opinion that held up for about three months). By June I was using it and writing about what it could become. A lot of the people I knew through blogs were there, and for a while it preserved some of the same feeling. The responses came faster, but the ideas got shorter.

By 2010, I could see what that had done to my writing. I had published almost 1,100 posts over seven and a half years, but more of the things I might once have worked through on the blog ended up as short, temporary updates. I announced that I was going to fix this by publishing one substantial article every month. The next post in the archive is from fourteen months later.

Only after I stopped writing publicly and often did I understand how much the writing itself had been part of the way I think. Publishing was a commitment to an idea. I had to stay with it beyond a few lines and make the argument clear enough for someone else to challenge. Knowing that response would come made me think harder before I published, and the conversation sharpened the idea afterward.

Writing for agents

Early ChatGPT was a conversation. The transcript was the workspace, and the model had only what I put there about the work. There was no repository, no draft on disk and no result it could inspect.

I learned to be careful about what went into that window. The answers were better when I explained the goal, the constraints and why I cared about the result. The immediate work was still a conversation, but I was learning to curate context by choosing the information that would help the model understand what I was actually trying to do.

Those conversations brought back part of the old blogging feedback loop in real time. I could put an idea into words, get a response and revise while the thought was still active. The response wasn't always right, but it made the idea concrete enough to react to. When the model misunderstood me, I could see what I had left unclear. That let me move through ideas and sharpen them much faster.

Local harnesses changed both the interface and the workflow. Goose and Claude Code were among the first I used extensively. The conversation now sat beside the repository. The agent could read files, change them and run the code. Plans, skills and standing instructions could live on disk instead of being rebuilt inside every chat. The model's attention was still bounded, but it could work from a much larger body of material.

The interface also gave the agent more ways to check the result. With a browser and the ability to read images, it could open the site, inspect a screenshot, make a change and look again. Tests provided another kind of feedback. Sometimes the agent misunderstood me. Sometimes it did exactly what I asked and produced the wrong thing. Now it could inspect that result too, make another change and check again.

The amount of available context kept growing, and curation mattered more. I had to decide what belonged in the current task, what should persist as an instruction and how to preserve the reason behind a decision. I've been building learning loops around that problem.

The loop still had a weakness. The models I used were often too agreeable. They helped refine the idea I gave them, but they didn't reliably challenge it or make me defend it. I wanted the feedback without losing the disagreement that made the old blogging loop useful — that turned into its own experiment.

Working with agents rewards the kind of writing I had stopped doing. I can explain the whole thought, follow the side paths, supply the history and keep going until the idea is actually clear. I don't have to compress the thought to make it travel.

The blog gave me somewhere to put a whole thought, and the people around it gave me a reason to keep sharpening it. Agents make that loop active again.

I still won't promise a cadence (the archive has heard that one before). I do want to reclaim the discipline and put more of these thoughts into the world. At the very least, the agents are going to read them.

WritingAI/ML