We all like to joke about how all “old” code is “bad code”, and even more when talking about our own. But I think it’s very rude to belittle other people’s code (even if it’s “old”), saying things like “this code is garbage” or something along those lines, just because it’s missing some style conventions or “good” patterns and practices.

I myself was guilty of that a few years ago, but I’ve learnt that every code has a context, a reasoning and some trade-offs behind it. No one writes “bad code” intentionally (well, assuming a professional environment).

[…] rather than criticising and assuming bad decisions, I should think back to what I knew at the time of making the decision and what I now know, at the time of criticising that prior decision. When thinking about that code I wrote six months ago along with the context in which it was written it became clear that it wasn’t an idiotic or bad decision, but a reasonable one at the time.

Something nice to remember during your next code review :D