Large Codebase Challenges
This cluster focuses on the difficulties of maintaining large, complex, and aging codebases, including issues like accumulated cruft, poor modularity, onboarding new developers, and debates on whether large codebases indicate architectural failure or can be managed effectively.
Activity Over Time
Top Contributors
Keywords
Sample Comments
Sounds like a problem with your devs/architects/process than the language stack. It would create a mess out of Java or Go or Ruby too.
"hasn't been slowing me down" --> would it slow a new developer who approaches the code base? or 30-100 people who work on the codebase?
There are no large codebases - just insufficiently modular ones. :-)
in my experience, what happens is the code base starts to collapse under its own weight. it becomes impossible to fix one thing without breaking another. the coding agent fails to recognize the global scope of the problem and tries local fixes over and over. progress gets slower, new features cost more. all the same problems faced by an inexperienced developer on a greenfield project!has your experience been otherwise?
Most large codebases are terrible, and these facts are not unrelated.
there is a balance to be had here. oftentimes people make their own corner of the code because they are afraid, or their superiors are, of the scope of work which is actually about 3 hours of consistent work with good discipline and not the 17 years they imagine.millions of lines of code itself is a code smell. some of the absolute worst code i have to work with comes from industry standard crapware that is just filled with lots of do nothing bug factories. you gotta get rid of them if you wa
Absolutely true, the issue exists in many code-bases and organizations. And even trying to keep things decoupled will only help so much. A 10+ year old codebase which is mostly driven by new feature development will very often have accumulated so much cruft and workarounds that trying to make and further modifications is rather likely to break something else.
Known weaknesses such as vast and messy codebases? What's the action there? A full rewrite?
Its difficult to maintain large codebases period.
How does a code base become so cumbersome, without someone signalling that there will be a price to pay?