What steps are you taking TODAY to prevent today's code from becoming tomorrow's LEGACY APP?

twitter logo github logo ・1 min read

Every MONOLITH and LEGACY APPLICATION started out, just like today, as "the new technology".

The growth and decay is often slow and unnoticed. The pull to become an unmaintainable app is constant and unrelenting.

Without persistent intervention, today's tech WILL grow into tomorrow's LEGACY.

What steps are you taking TODAY to prevent today's code from becoming tomorrow's LEGACY APP?

=======

One thing that I am doing is creating CI/CD pipelines that enforce test coverage levels. I set a coverage level to prevent laziness in the future. If you add new code, you must also add new tests.

Sure the tests help, but writing code that is testable is the real benefit!

twitter logo DISCUSS (2)
markdown guide
 

Absolutely agree that the thinking required to write testable code is a huge benefit. And, you don't know how testable it is without the tests.

Enforcement can be a bit tricky -- the key is to get the desired mindset and behavior. Sometimes rules and enforcement can become a monster, and drive behavior that's compliant with the enforcement, without the necessary judgment (or understanding of the right mindset). Maybe an opportunity to start with some lightweight / nonthreatening checks, and view noncompliance as an opportunity to discuss and explore, rather than to reject transactions?

 

It is important a balance must be achieved for the enforcement. This is why it's up to the teams to decide their own rules.

Classic DEV Post from Feb 2

Progress Not Perfection

Most people want to make things perfect. Sometimes we evaluate the complexity of an upcoming goal or a problem. So, the fear to not complete it perfectly or "wrong" (Yeah, who are judges? πŸ€”) stops us even from trying.

JavaScript Joel profile image
Cofounded Host Collective (DiscountASP.net). Cofounded Player Axis (Social Gaming). Computer Scientist and Technology Evangelist with 20+ years of experience with JavaScript!