> And the people who made the brittle architectural decisions
Bitrot is unavoidable, unless code is rewritten from scratch. Complexity rises proportionally to the number of links, which is `n(n - 1) / 2`, where n is a number of nodes, or `n²/2` for large n.
It takes significant effort and lots of experience to beat n², to keep code simple. The easiest way to reduce complexity is just to rewrite code from scratch. The harder way is to drop some old nodes (concepts, files, database columns, cases, fields, steps, etc.) when introducing new ones, which may shock somebody who has no formal training in software engineering.
Bitrot is unavoidable, unless code is rewritten from scratch. Complexity rises proportionally to the number of links, which is `n(n - 1) / 2`, where n is a number of nodes, or `n²/2` for large n.
It takes significant effort and lots of experience to beat n², to keep code simple. The easiest way to reduce complexity is just to rewrite code from scratch. The harder way is to drop some old nodes (concepts, files, database columns, cases, fields, steps, etc.) when introducing new ones, which may shock somebody who has no formal training in software engineering.