The Shame of Legacy Code

maurofrezza profile image Mauro Frezza ・2 min read

The Shame of Legacy Code is the feeling you get when you explain legacy code you wrote, or somebody else in your team wrote, to somebody who is not familiar with it.

I started learning about its devastating effects since last year. I've been helping new developers onboarding in the codebase my team handles and so I have been the point of contact for any question related to the design of the code.
Question after question, I found myself answering more that the design was not good or that some part of code was messy. I paid attention to the reaction of the new developers and I could see in their face the surprise mixed with disappointment or even disgust by the status of the code.

Their reaction hit me hard. Really hard. More than I expected and more than I wanted to admit to myself. Even if I didn't write the code I somehow felt guilty because I let this happen under my watch.

The result was a sense of despair and lack of motivation that made me on the verge to quit many times. Several nights I went home from work and cried out of despair because I felt I was a failed developer, a complete incompetent one.

A developer cannot sustain to do bad work every day for long time without it taking a toll on him/her. One will eventually forget what it means to do something properly.
I did not quit because that is the easy way and I don't believe you grow by going away from the tough situations.

But then again, when is the time you are allowed to walk away?

Posted on by:

maurofrezza profile

Mauro Frezza


Android developer * IT & Mobile passionate * Amateur photographer


markdown guide

Thanks for being so open about this. Looking back on your past work can be really tough, especially when it’s not to the standard of what you’d write today.

Shame and legacy code is a topic that’s near and dear to my heart and I present on frequently. Shame is a universal and intensely painful feeling of feeling like you’re unworthy of belonging. It hurts. Hard.

The good news is that there’s an antidote to shame — empathy. When we foster that skill on our teams, shame starts to fade away and we can focus on the learning that came from our mistakes rather than blaming others or being embarrassed.

Here are some talks I’ve given. Hopefully they help. Know that you’re not alone. Sending you some compassion, Mauro.