Loving Legacy Code

06 Feb 2015

Yesterday I had the privilege of presenting my Loving Legacy Code talk at RubyConf Australia 2015 in Melbourne.

See slides and video.

A Quick Recap

My motivation for giving the talk was to share some ideas about how to learn to love legacy code more.

Rather than going into a detailed outline of what I spoke about, let me say that, in essence, I was encouraging developers and managers to approach the challenge of working with legacy code with helpful techniques and a good attitude.

Along the way I spoke about how to identify pain points, effective testing, refactoring towards simple design and tool support to help the fallible brains of developers.

But I guess I wanted the main takeaway message to be this:

Respecting the people who have been involved with, those who are currently working with and those who will in the future be affected by the codebase will make you feel better about the code.

The main reason for this post

Hopefully the ideas I shared provoked some in the audience to think more about how they might enjoy and gain satisfaction from the challenges of working with legacy code.

Unsurprisingly, the ideas presented weren’t all original!

So the main point of this post is to acknowledge those who have inspired and helped me and to provide links to resources that I drew upon for the talk.


I would especially like to thank and acknowledge my colleagues at Blake eLearning, especially Dan, Dave, Josh, Lachie and Martin, who did me the honour of listening to me practice my talk and gave valuable feedback. I would particularly like to thank Navin, who generously shared both his viewpoint about some specific legacy code and some more general insights.


I am continually grateful to those who have taken the time to write about issues relating to working with legacy code. Here are a few resources that I drew upon for my talk.

What’s next?

I’ve enjoyed the conversations that have been prompted by my talk so far. Hopefully they will inspire me to write and talk more about specific aspects of working with legacy code.

And, of course, improve my own capacity to love legacy code more.

Other posts

Previous post: Rails i18n Config Gotcha

More recently: The Merits of Explanation

© 2024 Keith Pitty, all rights reserved.