Radiant order of coders
Our world is shaped by intent. It is as fundamental to life on earth as the newton’s three laws of motion.
All actions begin with intent.
This fundamental concept is also what shapes a coders/programmers development of his craft.
Deriving from the works of one of the leading authors of our generation, who is writing extensively about intent and commands, i see parallels with what i do on day to day basis as a programmer.
All coders belong on one of the below mentioned levels and the intent of the programmer while writing the code defines his progression.
All coders must say the immortal words to progress to the next level and their intent must match the commands.
I will code to solve the use case.
The intent of programmers on this progression level is just to solve the use case above everything else. They are not concerned about readability, maintenance or performance of the code.
I will code with improved code quality.
The intent has shifted of programmers at this level towards things like better code readability, sonar suggestions are already second nature and there is a constant desire to improve even further. Things like code maintenance and design patterns have started to entice the programmer.
I will code to optimally utilize the hardware.
The programmers at this level are confident of solving the use case and maintain good quality code base. Now their intent has shifted towards better utilizing the underlying hardware and they are extensively optimizing tools like multi-threading, database thread pools, IO buffers etc. They are also doing extensive research on above mentioned topics.
I will write Clean Code.
This is the highest level a programmer can ascend to. The programmer is very concerned about writing code that is well tested, easy to read, easy to maintain and change requests are easier to implement. Clean Code is defined by Robert C. Martin “Uncle Bob” in his book Clean Code. Programmers at this level vividly follow industry leaders like Robert, Martin Fowler and James O. Coplien to name a few.
Important: Progression to higher levels doesn’t mean that the programmer is leaving behind the old ideals and is more a case of accumulation of perspectives.
These are brief outlines of the progression levels and the programmer will understand them in more detail once he/she ascends to that level.
Strive to be a better programmer and the words will find you.