I would say that if developers are hacking on an abstraction that is ill-suited to the task until the code base is a nightmare, they will take this advice and duplicate code until it's a nightmare.
The fact of the matter is every line of code that is written has an associated cost. Developers all too often pay that cost by incurring technical debt.
The fact of the matter is every line of code that is written has an associated cost. Developers all too often pay that cost by incurring technical debt.