What you write today, will be legacy tomorrow

marsicdev | 2016-10-10

All notes

If you have ever worked on an already started project, then you know what legacy code is. And you also know that you can find almost anything in there. But this is a normal process tied to software development.

Working with legacy code is about taking a tangled, opaque, convoluted system and slowly, gradually, piece by piece, step by step, turning it into a simple, nicely structured, well-designed system. In such big systems with tons of legacy code, patience is your best friend. Try to apply your ideas and improvements step by step, in small sections and most importantly, with the agreement from all your developer colleagues.

What you write today, will be legacy tomorrow.

We shouldn’t blame the legacy code and their authors, since most probably you would have written the same at the time that code was written. The developers, the languages, the patterns and methodologies evolve, and thanks to that legacy code we can learn and improve our software.

If we are always complaining about Legacy Code and about how hard it is to add or change something in it, then let’s do something to improve it. Most of the time it may seem easier to just write 10 more lines to the existing code to add that new feature, but in the long run it is going to lead to more problems and bugs, and we will need to invest precious time fixing them.

Source: No more excuses

Related notes

We can admit our knowledge gaps

People often assume that I know far more than I actually do


Code organization

How you structure your code is a reflection on you and your work.


Quality software and clean architecture

We know that writing quality software is hard and complex. It is not only about satisfying requirements

software  architecture 

Code is data, and data is code

The data in your genes is code. The floor plans for your house are code.


Software Rewrite

In some ways, recreating a program is like remaking a movie — people have lots of expectations.