3 ms·
I’ve suffered from never-refactored codebases. And made people suffer from my refactoring. My company once decided to use dependency injection, everywhere, eve
by tarkin2 6y ago
I’ve suffered from never-refactored codebases. And made people suffer from my refactoring.
My company once decided to use dependency injection, everywhere, everywhere, and for anything. The code became a needlessly orchestrated nightmare.
Now any refactor to make my code solve a generic rather than specific problem — and I’m making the codebase bigger in code and number of files — gives me pause for thought.
The more abstract something is, the further away from specifics it is, and sooner or later specifics change, and those changes break your happy abstraction.
- gnusty_gnurc 6y agoI think it's important to make the difference between generic and intentionally designed. Just using an "abstraction" doesn't mean that your code is abstract, it may just not be a tangle of functions that were stringed together on the fly. At least for me, there's a clear point where I've coded something and find myself getting overwhelmed when making changes or trying to bridge the final gap to completion. That's when I step back and try to make sense of it and refactor.