3 ms·
> Eventually is a tradeoff between the amount of time you invest in making the system comprehensible and the amount of time saved in debugging. Well said. > B
by jonahx 3y ago
> Eventually is a tradeoff between the amount of time you invest in making the system comprehensible and the amount of time saved in debugging.
Well said.
> But that's only after you've thrown down table stakes (unit tests, basic documentation, high-level modularization with loose coupling, preservation of critical invariants, etc.)
I would actually turn this on its head, because I would rather have a comprehensible system without those table stakes features than an incomprehensible system with them. Of course, there is a feedback cycle between unit tests/docs/invariants and comprehensibility, but I have worked in systems with pretty good tests that were still very slow to work in because of their complexity.
Imo everything comes second to comprehensibility. Without it you are hosed.