Plan to pay technical debt
Khem Raj January 08, 2025 #metaThe very moment we write code for a project, we start collecting some sort of technical debt since some decisions start to be frozen in time and rest of project development will be dependent upon it.
Initial development of any project is fastest and that is also the period when groundwork for rate of technical debt is happening unknowingly. A choice of programming language, the community might be moving in a given direction which you are not following closely, decided to use certain IDE or tool, which is on its way to be EOL'ed as a better version has come along etc.
Therefore, it is very important to have a plan to address technical debt along with project plan from very beginning. As the project progresses, needed adjustments are made according to situations It becomes a living document for the life of project.
Some examples
Are you using Open Source components ?
You might need to have a plan to upstream your changes have a plan for upgrading the OSS component
Upgrading your host build OS ?
If you are using Linux for build systems, they have a life-time, a good plan would be to have a plan to upgrade your distro or use some container technology
Are you adding TODO
in your source code ?
TODO's
are usually direct additions to technical debt, at least they are called out. Monitor the number
and have a plan to address them.
Are there workarounds, duplicate code, some other common anti-patterns, have a plan to identify them and address them
And so on ...