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 you at all? As a freelancer, I've been on both sides of the legacy code spectrum. When I was a new developer I built new projects that got out of hand and I lost the clients. And as I matured as a developer I started getting hired to take over legacy projects.

I can tell you from experience that neither side of this scenario are fun, especially when the client brings up the dreaded topic of starting over versus refactoring.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.47.253