Rob Cook

Home | Donate

The impermanence of code


There are ten coding jobs on my CV. Thinking back on the effort, stress, and agonized decision making that went into all the code for those jobs, and I doubt much if any of it is still in use. In fact I know most of it isn't. A company wound down here, a takeover there, cancelled projects... much of this led to code being canned, replaced, or abandoned.

We spend a lot of our time worrying about scaling code these days. Will it scale? Should we use microservices? NoSQL or SQL? The hard truth is your code probably wont live long enough for these decisions to matter. How long is this needed for is a better question, if only it were possible to answer it!

Go with the simple architecture, the stack you're most familiar with, the obvious implementation. Wait until concerns such as scaling or performance actually become an issue before trying to deal with them. Chances are your code wont live long enough for it to matter. If it does, change it in light of the new requirements. Practice continuous coding, and count yourself lucky to be working on something worth fretting over!