(no title)
evilsnoopi3 | 2 years ago
Take, for example, a software engineering opinion that I hold dearly: “Good commit titles and descriptions, with sufficient description of why a change was made and notes on any non-obvious implementation decisions, are valuable and necessary.” This arises from my experiences trying to debug code in repos filled with commits titles ‘wip’ and ‘address feedback’ and ‘changes’ which inexplicably touch 5k LoC. I simply despise trying to divine what some past developer intended without any clue as to why; it is an epistemological impossibility even when sometimes the past developer is me. More over I am convinced this is necessary because I also have the experience of doing all the work to understand some spaghetti—using old issue tickets and git blame to slowly build a mental model of the codebase—finding the bug, changing it, and having the whole system violently reject my fix because what appears to the naive observer to be a bug is, in fact, intended behavior the system depends on.
What would convince me otherwise that spending time on writing good commits is not worth the time and effort? Either an impossible-to-execute-without-confounding-variables longitudinal study that measures developer happiness over time in code bases that do/do not emphasize commit message quality. Or I could have different experiences that lead me to not care. Like if I never had to maintain legacy code or if everywhere I ever worked had issue trackers filled with explicit technical details and motivations then maybe I wouldn’t care; but that’s not my experience so I do care.
I don’t know how you hack your way past the reality that there is not one perfect way to write maintainable software and even if there was nobody actually has time for that. So you have to chose what to prioritize and some of those priorities may become your personal cargo cult.
stevage|2 years ago
But my experiences are not yours. my projects are likely simpler, and I don't collaborate much. It would be dumb for me to follow your practices, and you mine.
evilsnoopi3|2 years ago