You know, I have to start by saying I’m not old. Although sometimes I feel old, especially thinking about my industry and the new breed of programmers. I guess you could say I’m a bit old school. I’m 46 now, but I started writing computer programs when I was just 9. My first computer was the Japanese equivalent of the Commodore 64, which I sort of borrowed from my brother. He got it for Christmas but didn’t use it much, so I took over. Plugged it into the TV and got hooked instantly.
We only had one game cartridge and the built-in BASIC programming language. The computer didn’t have long-term memory, so every time I turned it off, I’d lose my work. Imagine starting with a simple Hello World program and moving on to more complex code—all without any way to save it. I began writing out my programs on paper to save them and plan them. In a way, this manual process of copying code to paper helped me debug and enhance my programs.
In BASIC, line numbers are crucial, and you usually start numbering by tens for flexibility. This method taught me to code thoughtfully since there was no easy way to edit lines directly on the screen. Writing out code by hand became an intimate learning process where every mistake required erasing and rewriting—a slower but more thorough approach.
Reflecting on this now makes me wonder about today’s programmers. Many rely heavily on pre-existing code instead of writing their own from scratch. There’s something valuable in the discipline of creating code line by line without shortcuts or external help.
When I worked at IBM on server firmware with limited resources, every line of code had to be efficient and necessary. This kind of careful thinking seems less common today because modern technology’s abundant resources make programmers less mindful of efficiency.
I remember trying to explain algorithms to a roommate who attended a coding boot camp but didn’t grasp basic concepts like sorting algorithms. They seemed scared of the word algorithm, though it’s just a structured formula like in math (because it is).
Sorting names alphabetically might seem trivial now, but back when I started coding almost 40 years ago, it was a complex exercise requiring an understanding of how computers interpret letters as numerical values.
Today’s newer programmers may not appreciate these intricacies because they rely on high-level functions that handle these processes internally. This lack of deep understanding can lead to buggy and inefficient code.
Maybe it’s time for someone to teach these fundamentals again—not through formal education but from personal experience. What do you think?