Blog

  • Home /
  • Blog /
  • Book review: Working Effectively with Legacy Code

Book review: Working Effectively with Legacy Code

November 27, 2007

Working Effectively with Legacy Code

There is a reason that this book is on the recommend reading list of the ALT.NET Wiki. For some reason, I had this book lying around on my desk for almost a year before I started reading it. Since I finished reading it last week, I wished that I had read this book years ago.

The first question is: what is legacy code? Well, there are a lot of definitions going around, but legacy code is simply code without unit tests. We are talking about 99% of all the code bases on the planet. Should you read this book? Hell, yeah! The book teaches you a lot of dependency breaking techniques that you can use right away. The majority of the book describes these dependency breaking techniques and applies them to different scenarios with real-world code sample code mainly in Java and C++. Don't be scared! The most of it will also be applicable to your favorite .NET language as well. The last chapter (about 100 pages) is a nice reference to all the dependency breaking techniques.

I've seen my share of crappy legacy code over the past couple of years (some of which I wrote myself). Breaking down dependencies and get this code under test before adding new features is something you can start doing today. No more excuses of writing new code without unit tests. Pick up a copy of this book at your local dealer and read it from cover to cover. You will thank me later.

To wrap up this post, I want to share two quotes from the book that struck a nerve:

At this point in my career, I think I'm a much better programmer than I used to be, even though I know less about the details of each language I work in. Judgement is a key programming skill, and we can get into trouble when we try to act like super-smart programmers.

and

Programming is the art of doing one thing at a time.

Till next time

If you and your team want to learn more about how to write maintainable unit tests and get the most out of TDD practices, make sure to have look at our trainings and workshops or check out the books section. Feel free to reach out at infonull@nullprincipal-itnull.be.

Profile picture of Jan Van Ryswyck

Jan Van Ryswyck

Thank you for visiting my blog. I’m a professional software developer since Y2K. A blogger since Y2K+5. Provider of training and coaching in XP practices. Curator of the Awesome Talks list. Past organizer of the European Virtual ALT.NET meetings. Thinking and learning about all kinds of technologies since forever.

Comments

About

Thank you for visiting my website. I’m a professional software developer since Y2K. A blogger since Y2K+5. Author of Writing Maintainable Unit Tests. Provider of training and coaching in XP practices. Curator of the Awesome Talks list. Thinking and learning about all kinds of technologies since forever.

Contact information

(+32) 496 38 00 82

infonull@nullprincipal-itnull.be