I’m sure you know the feeling. It sucks. It’s really easy to start a project and get going but over time it’s just really really difficult to manage a growing codebase. In fact I’ll get 90% of the easy code done first and love it and then procrastinate the last 10% forever.
So how do you prevent this? What programming paradigms do you use? For me at least this is really a problem with giant OOP projects where it can get sticky between the classes and who is a delegate of what and who calls back to what.
How does anything ever get done in gigantic codebases for operating systems and planes for example? Maintaining a codebase of that size honestly sounds like a miracle.