This goes for all forms of communication, all the time. Whether you're writing or speaking or having an informal conversation, relentlessly focus on your audience: what they think, what they know, and what they need to hear.
Think hard about your audience, and then think about them again.
Oh, also my soapbox topic is all documentation should have a line at the top explaining it like you'd explain it to your parents. "This cli tool was built in order to automatically run all tests in the suite, instead of manually like before." Etc.
Another benefit of this is that in a complex environment, this helps the user check that they have the correct manual, so they don't waste their time trying to absorb it for no good purpose, realizing only some time later that it was some other manual that they wanted.
> The whizbanginator facilitates workflows with reductive conflapitance. Here's some info about its release cycle and on call. Here are all of its configuration details, which will make you realize it does not actually solve your problems because we never told you what it was.
Im drawn to frameworks because without them I cannot implemented an automated way to address the problem of docs going out of date.
Do you know any framework/tool that would keep my drawings up to date? Maybe a pre-commit hook or github action that would check invariants in the code and fail to build without modifying the pictures?
Big yes. I think the 7A model is fully compatible with the likes of Diataxis, or with pragmatic initiatives such as The Good Docs Project [1].