humancode.us

Hidden Costs of Refactoring

February 16, 2018

Refactoring can help keep a mature codebase fresh. But refactoring can impose a hidden cost when you support multiple releases.

A security patch or feature that you want to cherry-pick to previous releases will not apply cleanly post-refactor. More significantly, your engineers must remember the old design as well as understand the new, to synthesize a patch that makes sense for the older branch.

This is not an argument against refactoring! But keep this hidden cost in mind the next time you hack an old codebase.