Jonathan Boccara's blog

The Legacy Code Programmer’s Toolbox is Out

Published February 1, 2019 - 0 Comments

This is it. My first book, The Legacy Code Programmer’s Toolbox, is out. It is available in electronic format:

legacy code programmer toolbox

If you don’t have more than 45 seconds to spare right now, watch this little video about the book:

What this book will bring you

If you are a working in the software industry and you’re dealing with legacy code, this book is made for you.

It is a condensed guide that will show you:

  • 10 techniques to understand legacy code,
  • 5 techniques to reduce the size of long functions,
  • the attitude to stay super-motivated with whatever code you get to work with,
  • how to use legacy code to improve your programming skills,
  • how to diagnose bugs quickly in code you don’t know well,
  • how to write useful documentation,
  • how to choose the refactoring projects that will make your life easier,
  • …and much more!

The book is packed with practical examples illustrating the various techniques it presents. My goal is to make your work more productive, your code better, and your life easier when you have to work with legacy code.

About the author

Why would I be legitimate to give you advice on how to work with code? I’ve been a developer for over 7 years, during which I worked my way up from Software Engineer to Principal Engineering Lead, and I had to work with legacy code at lot along the way. And over the past 2.5 years I’ve published two articles every week about writing good code, on Fluent C++.

A few years back, on my first day at work, like everyone I was super-motivated when I came in. I had no idea what legacy code was about. Now, more than 7 years down the line and having worked on more projects involving legacy code than I can count… I’m still just as motivated as on my first day, if not more.

Indeed, one of my mentors taught me early on the attitude to stay motivated with legacy code, and I share it with you in the book. Motivation is a big factor to make your life easier at work and, as a consequence, progress in your career.

As a team lead, I get to read a lot of code. It can be during code reviews, or to analyse existing code to plan for new projects, to help out another developer with their code, or just to debug a maintenance issue. Over time, I found I could read code faster and faster, and a part of the book is about my techniques to read legacy code and making sense out of it quickly.

And so on. In this book I share my techniques to be both efficient and happy while working with existing code, because my peers consider me the former and I consider myself the latter.

But there is only so much I’m able to share. If it was just this, the book wouldn’t have been what it is today.

A combination of experiences

The Legacy Code Programmer’s Toolbox wouldn’t have been the same without the awesome work of the 27 other software professionals working with legacy code that reviewed all or parts of the contents of the book.

Those reviewers, to whom I’m very grateful, pointed out where the text could be clearer, and suggested additions to the contents–be there about new techniques or new tools to try.

I probably spent as much time working on the contents I initially planned as integrating the additions suggested by my reviewers. This makes the book a unique combination of the experiences of many software developers.

And a big thanks to the great Kevlin Henney for writing the foreword of the book!

Testimonials

When the book was finished, I shared it with a few peers in order to get their opinion about it. Here is what they said:

This is a warm and reassuring book that will equip you to read, understand, and update legacy code in any language.

The advice is immediately actionable, and you can start to use it right after reading the chapters. The experience of the author is clearly hard-won; he generously shares it to save you a lot of trouble.

The material will leave you ready to take on whatever legacy code you encounter, with a smile on your face. I happily endorse it.”

Kate Gregory

Wow! I read the book in one day. For two reasons. First, it is quite entertaining. Second, it is even more enlightening.

Jonathan Boccara wrote a unique book about our day to day life as a professional software developer: Working with legacy code. He shows with many examples, how we should approach, understand, and improve legacy code if necessary.

You should read it, because Jonathan’s book will give you new, critical insight.”

Rainer GrimmModernesCpp.com

The Legacy Code Programmer’s Toolbox gives actionable advice about how to deal with the sometimes harsh reality of our work. You’ll learn how to understand and when to refactor legacy code, and what attitude keeps you sane and productive when facing legacy code.

This book is a great read for everyone: Junior developers wondering what is coming for them and how to face it, and seniors still wondering what could have been done differently when that old project came to a screeching halt.”

Arne Mertz – SimplifyC++!

As I read Jonathan’s book I found a lot of comfort knowing that it will be a lot easier for many developers coping with understanding & working with legacy code.

The book helps you get in the right mindset to deal with legacy code and explores various techniques and tools to help you along the way, with lots of carefully crafted code examples.

I enjoyed this book a lot and learned some handy tricks along the way. “Jonathan’s toolbox” just became my top recommendation on this subject.”

Victor Ciura

Let’s face it – legacy code is everywhere! We can complain or… make it our friend. And this is exactly what Jonathan is offering is his book.

With a vivid language, lots of examples and use cases the text will shift your attitude towards legacy code. You’ll be equipped with a lot of tools to make your daily job much fun and rewarding.”

Bartłomiej Filipekbfilipek.com

Ready to read the book? Check it out here: The Legacy Code Programmer’s Toolbox.

Don't want to miss out ? Follow:   twitterlinkedinrss
Share this post!Facebooktwitterlinkedin