惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
G
Google Developers Blog
有赞技术团队
有赞技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Blog — PlanetScale
Blog — PlanetScale
罗磊的独立博客
博客园 - 聂微东
V
Visual Studio Blog
博客园_首页
D
DataBreaches.Net
腾讯CDC
I
InfoQ
F
Fortinet All Blogs
量子位
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 【当耐特】
Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
云风的 BLOG
云风的 BLOG
月光博客
月光博客
Recent Announcements
Recent Announcements
MongoDB | Blog
MongoDB | Blog
C
Check Point Blog

The Universe of Discourse

George Orwell The road to epsilon-zero: Shortlex order also orders sequences of numbers The road to epsilon-zero: Productive programs and well-founded orders There are two kinds of theorems The road to epsilon-zero: Coin-moving games with no coins Seven books I keep close because I love them The road to epsilon-zero: Infinite Nim as a coin-moving game “Steph Curry: fluke or breakthrough” ten years later The road to epsilon-zero: Infinite Nim as a coin-moving game The road to epsilon-zero: Nim always ends, even with infinite ordinals The road to epsilon-zero: ordinals as nim-heaps Starting to understand epsilon-zero I owe my life to a 1913 road rage incident Deciphering basmala My 1992 view of the problems of computer programming in 1992 Egyptian fraction multiplication Update: Here I am at the Sagrada Família Egyptian fractions for 2/105 Programmers will document for Claude, but not for each other Did Ahmes find the best expansions for 2/n? How are John Waters movies like James Bond movies? Bo Diddley
Documentation is a message in a bottle
2026-03-05 · via The Universe of Discourse


Mark Dominus (陶敏修)
mjd@pobox.com


About me

RSS Atom

12 recent entries

Archive:

2026: JFMAMJ
2025: JFMAMJ
 JASOND
2024: JFMAMJ
 JASOND
2023: JFMAMJ
 JASOND
2022: JFMAMJ
 JASOND
2021: JFMAMJ
 JASOND
2020: JFMAMJ
 JASOND
2019: JFMAMJ
 JASOND
2018: JFMAMJ
 JASOND
2017: JFMAMJ
 JASOND
2016: JFMAMJ
 JASOND
2015: JFMAMJ
 JASOND
2014: JFMAMJ
 JASOND
2013: JFMAMJ
 JASOND
2012: JFMAMJ
 JASOND
2011: JFMAMJ
 JASOND
2010: JFMAMJ
 JASOND
2009: JFMAMJ
 JASOND
2008: JFMAMJ
 JASOND
2007: JFMAMJ
 JASOND
2006: JFMAMJ
  JASOND
2005: OND


Subtopics:

Higher-Order Perl Blosxom

Comments disabled


Thu, 05 Mar 2026

Documentation is a message in a bottle

Our company is going to a convention later this month, and they will have a booth with big TV screens showing statistics that update in real time. My job is to write the backend server that delivers the statistics.

I read over the documents that the product people had written up about what was wanted, asked questions, got answers, and then turned the original two-line ticket into a three-page ticket that said what should be done and how. I intended to do the ticket myself, but it's good practice to write all this stuff down, for many reasons:

  • Writing things down forces me to think them through carefully and realize what doesn't make sense or what I still don't understand.

  • I forget things easily and this will keep the plan where I can find it.

  • I might get sick, and if someone else has to pick up the project this might help them understand what I was doing.

  • If my boss gets worried that all I do is post on 4chan all day, this is tangible work product that proves I did something else that might have enhanced shareholder value.

  • If I'm tempted to spend the day posting on 4chan, and then to later claim I spent the time planning the project, I might fool my boss. But without that tangible work product, I won't be able to fool myself, and that's more important.

  • Conversely if I later think back and ask “What was I doing the week of March 2?” I might be tempted to imagine that all I did was post on 4chan. But the three pages of ticket description will prove to me that I am not just a lazy slacker. This is a real problem for me.

  • In principle, a future person going back to extend the work might find this helpful documentation of what was done and why. Does this ever really happen? I don't know, but it might.

  • I like writing because writing is fun.

A few days after I wrote the ticket, something unexpected happened. It transpired that person who was to build the front-end consumer of my statistics would not be a professional programmer. It would be the company's Head of Product, a very smart woman named Amanda. The actual code would be written by Claude, under her supervision.

I have never done anything like this before, and I would not have wanted to try it on a short deadline, but there is some slack in the schedule and it seemed a worthwhile and exciting experiment.

Amanda shared some screencaps of her chats with Claude about the project, and I suggested:

When you get a chance, please ask Claude to write out a Markdown file memorializing all this.  Tell it that you're going to give it to the backend programmer for discussion, so more detail is better. When it's ready, send it over.

Claude immediately produced a nine-page, 14-part memo and a half-page overview. I spent a couple of hours reviewing it and marking it up.

It became immediately clear that Claude and I had very similar ideas about how the project should go and how the front and back ends would hook up. So similar that I asked Angela:

It looks like maybe you started it off by feeding it my ticket description.  Is that right?

She said yes, she had. She had also fed it the original product documents I had read.

I was delighted. I had had many reasons for writing detailed ticket descriptions before, but the most plausible ones were aimed back at myself.

The external consumers of the documentation all seemed somewhat unlikely. The person who would extend the project in the future probably didn't exist, and if they did they probably wouldn't have thought to look at my notes. Same for the hypothetical person who would take over when I got sick. My boss probably isn't checking up on me by looking at my ticketing history. Still, I like to document these things for my own benefit, and also just in case.

But now, because I had written the project plan, it was available for consumption when an unexpected consumer turned up! Claude and I were able to rapidly converge on the design of the system, because Amanda had found my notes and cleverly handed them to Claude. Suddenly one of those unlikely-seeming external reasons materialized!

On Mastodon I keep seeing programmers say how angry it makes them that people are willing to write detailed CLAUDE.md and PROJECT.md files for Claude to use, but they weren't willing to write them for their coworkers. (They complain about this as if this is somehow the fault of the AI, rather than of the people who failed in the past to write documentation for their coworkers.)

The obvious answer to the question of why people are willing to write documentation for Claude but not for their coworkers is that the author can count on Claude to read the documentation, whereas it's a rare coworker who will look at it attentively.

Rik Signes points out there's a less obvious but more likely answer: your coworkers will remember things if you just tell them, but Claude forgets everything every time. If you want Claude to remember something, you have to write it down. So people using Claude do write things down, because otherwise they have to say them over and over.

And there's a happy converse to the complaint that most programmers don't bother to write documentation. It means that people like me, professionals who have always written meticulous documentation, are now reaping new benefits from that always valuable practice.

Not everything is going to get worse. Some things will get better.

Addendum 20260208

A corollary: You don't have to write the rocumentation yourself. You can have Claude write a detailed summary based on your ongoing chats about the work, and then you can edit it and check it in.

If you're good at editing, anyway. I wonder if part of the reason Claude is working so well for me is that I'm really good at editing and at code review?

[Other articles in category /tech/gpt] permanent link