10 ideas about writing documentation for your own projects

I messed up, but at least I’m getting a blog post out of this.

An anakin and padme meme: Anakin says he's working on a tricky project. Padme asks whether Anakin is making project notes so Part 2 will be easier. Anakin, as always, stuns Padme with his silence.

A big project I’ve been working on has two big milestones. Milestone 1 and Milestone 2 involve plenty of similar work. It took a lot of effort, trial and error to get everything right for Milestone 1.

“But at least,” I thought as I went through the debug / upload / curse / repeat cycles, “at least it’ll be easier for Milestone 2.”

Or would have been, if I’d made the right documentation notes, instead of the blob I’m looking through right now.

So here goes. 10 ideas about own project notes which are actually useful. Learn from this, laugh at this, commiserate if you wish…

Oh, and, future self, if you’re reading this, I know where you live. Do better.

1. It’s not “extra work”, it’s saving your future self’s time. I’m feeling this one right now. Adding 15 seconds every 10 minutes, back at Milestone 1, would have saved hours of head-scratching and desk headbutts now that I’m at Milestone 2. It’s so obvious.

2. Write for your future self, but on a really bad day. I know there were moments when I was totally cruising through the work, just going from one thing to the next, thinking, “YEAH! I’ve got this now, it all makes sense!” Well, it doesn’t any more, and also, I’m recovering from an injury, so I’m much more grumpy and everything takes more time. When you write the notes, don’t shy away from dumbing them down and breaking them down more than you need to. You’re one bad week away from having to rely on your past self’s kindness here.

3. “Rough but thorough” is better than “edited and laconic”. Listen, nobody’s giving you a book deal for this one. Write this for yourself. Write more than you need to, and if editing slows you down, forgo the edits.

4. But keep the bottom line tidy. I would have appreciated a separate section in my Milestone 1 notes, saying, “this is the finished workflow”, and then listing the steps. This would have been the part that changes, evolves, mutates, as I come across new snags and plot twists. So maybe edit this one so you don’t have to meander twice.

5. And put the bottom line up top. Don’t make your future self wade through everything to get to the key bits. Cut and paste them to the top of the document. Your current self “knows where the bit is”, your future self won’t.

6. Choose your buckets wisely. Where will you look, if you have to visit this place again? If you think the answer is obvious, make it obviouser still. Trust me, it won’t be obvious in a few weeks’ time.

7. Is audio the way to go? If your project mostly involves screen / keyboard work, then maybe you feel a mental block from having to commit to yet another open tab / window in which to type your docs. Make like Dana Scully and dictate stuff to yourself. It’s now easier than ever to have good quality transcripts appear in your folder in no time at all.

8. Have few flags and use them generously. It doesn’t make sense (to me at least) to go overboard with formatting and labelling if the project notes are just for me. But I’d probably appreciate at least these two signals: “this is what really stumped me” and “this is what worked really well”. Make them easy to use (bold and italic, green and red if you can do colour, or keyword / mic taps if you’re dictating).

9. Enable auto save. Quitting time. You shut down your laptop. Windows is saying something about unsaved files. Yeah yeah whatever, you uploaded all that stuff, just shut down already. And that, my friends, is how a day’s worth of notes gets lost from your .txt file. Auto-save or GTFO.

10. Don’t censor or filter yourself. If you think something is too mundane to put in your own notes, or if you’re holding back from noting down just how much of a clusterf*ck a situation is - think about your future self again. They’re the only person you’re writing this for. It’s only kind to signal these things to them: yeah, this part is actually supposed to go smooth, don’t get paranoid. Or: yeah, I know, it was just as messed up before and eventually it will work, so keep at it.

Now if you’ll excuse me, I have a wheel to re-invent.

Written on November 7, 2024