Sometime around the age of 7, I began messing around writing code on a Commodore VIC-20.
To begin with, I was just programming simple things for quick reward: An endless loop of messages spewed to the screen to impress a friend. An animation of a stick figure climbing a ladder. Or whatever else I could write in BASIC within the 3.5kB of memory and the 8 on-screen colours that one of the 1970s first affordable home computers allowed me.
Just messing around and tinkering, but it planted a seed in my head…
I soon realised what I had in front of me was the ultimate universal toolkit, which I could use to build absolutely anything. Whatever it was possible for a computer to do, I could make it do it, given enough time and thought. Pretty quickly, programming wasn’t just a pastime for me, or something hard that needed effort and determination to learn: It was a doorway to a world full of possibilities.
This has been my fascination ever since and the reason I’ve devoted the intervening years to turning that tinkering into a profession. To me, the act of coding is just a stepping stone on the path towards building something real, for use in the outside world.
It still surprises me that many of the people I know think of coding and programming as boring, nerdy and uninteresting. Even back in school, I can remember a teacher I greatly admired for her love of her own science subject implying that computers, and programming, were boring and a worthless pursuit. She clearly missed the point and I can’t help wondering whether she still does all these years later, particularly given how computing and the Internet have since affected our lives.
Coding is only boring if you look on it as an isolated pastime in itself, with no aim. Like bashing away at a calculator with no intended use for the result. To an outside observer, writing code can seem tedious. But what you don’t see is what the coder has in mind and what they’re building… perhaps alone, perhaps with many others. Because it isn’t the code itself that’s interesting, but the plans for how that code will affect, assist or inform the outside world. The code is simply a part of the multi-layered medium used to achieve an end result.
Coding is (or should be) a means to a real-world end. We should always be building something. The inner details, the abstractions, the architecture and the technology itself are fascinating when being applied to real-world problems and opportunities.
And that is why coding captured my interest back in the 1970s, and why I’m still coding to this day.