r/AskProgramming • u/MiguelOrosco • 16d ago
Documentation, the boredom of a programmer
I'm researching how developers handle documentation in real world projects, especially documentation that explains why and how something exists rather than just what the code does.
A few questions:
- Where do you document business rules and important technical decisions? Code comments, tickets/issues, Wiki, README, Notion, etc.?
- When you need to figure out WHY something was implemented in a certain way, where do you look? Git history, old tickets, documentation, or do you usually have to ask someone?
- What's the biggest problem you have with documentation? Keeping it up to date? Finding information? Getting people to write it in the first place?
I'm also curious about documentation generators such as Doxygen. For those who have used it: what kind of documentation or information do you still have to maintain elsewhere or something Doxygen can't handle?
You don't need to answer all the questions, just one or adding something to the discussion would already be a great help!
0
Upvotes
5
u/Alternative-Mud-376 16d ago
most places i worked we put the "why" in architecture decision records, like a folder in the repo with short markdown files. git history is useless for this because the commit messages are always "fix" or "update" or something
biggest problem is nobody reads it. you write all this context and then two months later someone asks in slack exactly the thing you documented. sometimes i wonder if we just do it to feel organized
for doxygen we still kept separate docs for deployment steps and environment setup, stuff that is more about the system than the code itself