Keeping a changelog by hand

· 1 min read

A generated changelog is a list of commits. A written one is a list of consequences: what a user can do now that they could not do before, and what they must change.

One line per change, for strangers

Write each entry for someone who has never seen the code. Say what changed and why it matters, in their words. Internal narrative — which gate was wrong, what confused whom — does not belong there.

Keep it as you go

An entry written the day of the change takes a minute. The same entry reconstructed a month later takes an hour and is worse.