DEV Community

Michael Cain
Michael Cain

Posted on

The Legacy Blues: How To Maintain Joy Doing Digital Janitorial Work

I am having a hard time staying motivated and doing good work on an app that I find boring with poor architecture. How do you find joy in doing the dirty work?

Top comments (3)

johnb21 profile image

You don't really get much joy from the work while doing it. However, you can take pride in your solutions to resolve the technical debt your project has. Even with legacy applications, you are capable of leaving your own mark on making the code base better.

Every developer loves the thought of new development. The reality is - most software development is maintaining and enhancing older code bases. Even game developers are tasked with creating new games using pre-existing code bases and frameworks.

kspeakman profile image
Kasey Speakman • Edited

If you find it boring and distasteful to do, then probably you are not a fit for that particular project. It is fine to "power through" that kind of work from time to time, and try to learn whatever you can from the experience. But if I found myself doing hated work exclusively, I would request another project or if all else fails look for a different job. After all, that could be exactly the work that someone else would be happy to do. (Maintainer personalities exist.)

Another possibility is to push for a rewrite of the app. But sometimes businesses want to "drive it til the wheels fall off" to maximize the up-front investment. And often, full rewrites end up no better than the original... the technical debt just moves to a different place. You might find some success with proposing a progressive rewrite, if the application can support such a thing. Meaning, you do a new app but it is integrated into the old one. At first, it just takes over a small part of the old app's functionality. Then you progressively move more pieces over to the new app. This is easier to do on the web, considering the way HTML works, but could be really difficult in other scenarios.

nerkmind profile image
Lewis Clarke

I'm actually facing the exact problem! (or I was anyway!) the code I was working with on this project was HORRIFIC. Honestly a total nightmare. I basically just hated life, I used to try and look at how much of an improvement I was making to the codebase and "the greater good"....Until last week I convinced my employer to let me re-write the whole thing in react :)

So the solution is, re-make it if you can. Bring it kicking and screaming into 2018! good luck, and if you want advice on convincing your employer feel free to PM me as I've been through the ringer doing that haha.