When was the last time you asked yourself why you chose that architecture style or why you're using that specific library over another?
Software development is all about trade-offs. We are constantly making decisions for one thing and against another thing.
Small decisions we often make unconsciously. Big decisions we make consciously, but we often forget about why we decided as we decided.
For big decisions, make it a habit to document why you decided for one thing and against another. The documentation can be an email to someone, a page in your personal wiki, or a scribble in your paper notebook. Ideally, it's a structured register of decisions that the whole team has access to. The important part is that you know where to find the rationale of a decision.
Then, when (not if) the time comes when you or someone else is questioning the decision you made 6 months ago, you can look it up and check if the rationale from 6 months ago still holds. If it does, great! If it doesn't, you can revisit it (and no one can blame you for making the wrong decision, because you have clearly documented why you made that decision).
Did you like this nugget? Please let me know by clicking one of these links, so I can adjust my newsletter content.