So often we are confronted with the option of building or not building.
Staring at a line of code. Complete the syntax, writing in automatic.
How much coding is simply regurgitating the philosophy of the compiler writer?
Compilers turn an abstract higher-level language into a lower-level representation that is suitable for running on the hardware which underpins all computer devices.
Fundamentally we are shifting bits left and right and on and off. And every time we sit there with a blinking cursor, we are deciding what to flip. What bits to flip?
There are already so many combinations out there. There are so many combinations in there. Why add more? Why do we get obsessed with the new?
We are doing it to keep ourselves interested. It’s easier to write something new than it is to spend time understanding what has gone before. It’s easier to give up and press ‘New project’ than it is to see through our idea or design.
However, that is exactly what has happened to those that have written the editor you’re using. That is what happened for those that have written the browser you’re reading this on. That is what happened to those that have written the compiler that you use to build your code every day.
Every tower of code that we use is built on the mental effort of thousands, tens or hundreds of thousands of software engineers that came before you. They have all pushed that feeling of stopping completely and restarting something or throwing it away and thinking it useless or giving into the temptation of doing something else.
This is pure self-control. All the project management frameworks, meetings or production incidents, or distractions do not disturb it.
All creation is an act of will.
When you code. Mean it.