Chapter 28. Guide to Freelancing – Starting Over Versus Refactoring
As a freelancer or as part of an organization, you will come across many times where you make a decision on starting over versus refactoring on a legacy project. Over the years I have come across this issue more times than I can count.
The legacy scenario
Typically, the situation sounds something like this. I'll get hired by a client who has a legacy application. The application is usually a few years old and has been managed by a number of developers. I've discovered that usually the code project started out small, and it grew from there.
Somewhere along the way the application lost its way. Instead of using a scalable application design approach, the previous developer patched new features on and the codebase devolved into a convoluted mess. Eventually, every new feature causes another component to break and the client gets so frustrated he decides to hire me.
Does this scenario sound familiar to...