Which is the most important aspect one should keep in mind, while writing a code for any application? This is quite a recursive question which any and every developer asks to himself/ being asked by others. From my personal experience, I realised today that MAINTAINABILITY is the key factor. The reason being, from my recent experience in looking at a very old codebase, OLD as in Code which was written 23+ years before. Sounds ridiculous right 😉 but you gotta believe this.
As a part of the technical analysis for my current assignment, I started looking at a few C++ codebase to understand the existing functionality and the business flows. I was astonished and dumstruck to see the initial creation date of this file. Pasted the excerpt from that file below:
01 06/01/89 Program initially written L. XXXXXX
I couldn’t resist my laughter when I realise that I was just an year and half old kid when this C++ code was written :). Neither I had ever imagined I would look into such old code base nor the author would have thought that this code would be alive for so many years and another developer would look at it for any modifications after decades :). But this is happening now!!! I should appreciate majorly two aspects here[not in any order though ]. One being the robustness of this C++ code which makes it run for years together and second being the author’s technical and programming skills; proper comments and explanations were given at required places which is making my life easier now to understand. I feel I am really lucky to have a look at such a legendary code 🙂 🙂
I am sure with the rate of evolution of technologies, we could never ever write any code which could sustain so long for decades together. Still, its important for all the developers to keep in mind how important it is to write a clean code, which is very well maintainable. You ll never know you might also get lucky to have your code revisted after decades and any day you would obviously expect your successor to appreciate you for the work you have done and nothing otherwise for writing a bad code 🙂
Though this could be a trivial thing, I thought this is worth sharing with my fellow developers too!!! Appreciate your comments/ suggestions.
Its all about work ethics man. When i was in POS, i happened to encounter many such practices, which made me a ‘decent’ developer back then. But, later on when i moved on to an ‘over hyped’ managed code base, i felt as if i was thrown into trash. Good thing – Thrash is now removed from my system. C++ always rockz!
“You expect your successor to appreciate your for the work you have done” nicely said. People do n’t even need to go that extent, if they can write in a way such that they themeselves can understand it after a few days, things would be even better 🙂
@mayil.. yeah that’s very well true 🙂 not many understand their own code after an year also !!!