cd /news/artificial-intelligence/ai-assisted-technical-writing-when-t… · home topics artificial-intelligence article
[ARTICLE · art-64619] src=ae1020.github.io ↗ pub= topic=artificial-intelligence verified=true sentiment=· neutral

AI-Assisted Technical Writing: When to Stop

A developer used multiple AI tools including Claude.ai, Google Gemini, Perplexity.ai, ChatGPT, and Microsoft CoPilot to turn a C++ code comment into a blog post, but the process revealed a technical error in the original comment and led to an editorial dispute over the post's length. The developer found that technical disagreements could be resolved by compiling the code, while editorial disagreements required clarifying the piece's purpose, highlighting the need to distinguish between factual and stylistic feedback when using AI for writing.

read4 min views1 publishedJul 18, 2026

I had a comment in a C++ codebase explaining why a particular cast was written the way it was. The comment kept growing… and eventually it was longer than the code it was documenting. So I did what seems like the obvious modern move: I asked Claude.ai to turn it into a blog post I could link to instead, and pulled the explanation out of the code entirely.

I’d have thought that would have been the end of it. It wasn’t.

I showed the draft to Google Gemini for review. It found a real problem: not a style nitpick, an actual technical error. And Gemini proposed a fix.

But when I tried the fix, it didn’t compile. Which meant my original comment, the one I’d been confidently maintaining across code reviews for who knows how long, had been wrong the whole time. Nobody had caught it because nobody had actually tried to compile the counterexample.

So the article went back to the drawing board. Then I showed that version to more AIs: Perplexity.ai, ChatGPT, Microsoft CoPilot… and the article started to spiral. Each pass surfaced something the previous one had gotten subtly wrong or hadn’t considered. New names were coined for things that turned out to need distinguishing. A whitelist mechanism got added so a shortcut I’d deliberately chosen for its runtime characteristics could be marked “checked” rather than “assumed.” By the end it had gone from a comment, to a blog post, to something that reads like a lab notebook.

The article itself is here, if you want the technical specifics *(it’s a kind of insane C++ pointer-cast rabbit hole and not the point of

this post)*:

[https://ae1020.github.io/implicit-cast-vs-waypoint-cast/](https://ae1020.github.io/implicit-cast-vs-waypoint-cast/)

Here’s the part I think is actually worth writing down, separate from any of that: the disagreements in this process came in two completely different flavors, and I didn’t notice how different they were until I was deep into the second one.

The first flavor had a referee. When an AI told me “hey, I have a better idea”, and it wasn’t, a compiler settled the argument in about ten seconds. Nobody had to be persuaded of anything… the code either compiled and did the right thing, or it didn’t. Every technical dispute in this process eventually resolved the same way: not by which AI sounded more confident, but by going and checking.

The second flavor didn’t have a referee. Once the technical content was solid, I asked for opinions on the writeup itself, and got a real split. Some models (in particular ChatGPT and CoPilot) thought it was way too long (many AI are generally asked to summarize, after all). Claude.ai thought the length was earning its keep by showing the mistakes happening rather than just asserting the fixed conclusion. Nobody could compile their way to an answer about the length, because there isn’t a ground truth the way there is for “does this pointer get corrupted.” That’s not a factual question. It’s a question about what the piece is for. It turned out nobody (including me) had actually settled that before opinions started flying.

What broke the deadlock wasn’t more argument. It was going back and asking what the thing was supposed to accomplish in the first place. I hadn’t set out to write something that would win points for concision on a general audience – I’d set out to write something I could link from a comment, for the one person, someday, who opens that file and wonders why the cast is written that way. Once that was explicit, most of the length argument dissolved on its own. Some of it didn’t: a couple of the “this is too much” critiques turned out to be right on their own terms, about naming things you don’t need to name, not about length at all. Those parts I kept.

I think that’s the generalizable lesson, if there is one: when you can’t tell whether a disagreement is technical or editorial, that confusion is itself worth stopping and naming, because the two need completely different tools to resolve. One needs a compiler, or an experiment, or a fact. The other needs you to say out loud what you’re actually trying to do. That’s weirdly easy to skip when everyone in the conversation (human or AI) jumps straight to optimizing before anyone’s confirmed what’s being optimized for.

There’s no compiler for “is this done.” At some point you just decide, and move on.

So once technical accuracy had reached consensus, the revisions to the casting article stopped where I, (the human), decided. If you think it’s too long and the outcomes need summarization, just ask an AI. 🤖

── more in #artificial-intelligence 4 stories · sorted by recency
── more on @claude.ai 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/ai-assisted-technica…] indexed:0 read:4min 2026-07-18 ·