RIP Thomas E. Kurtz, Co-Creator of BASIC
My life would have been much different had I not been introduced to programming as a kid.
By Ryan McGreal
Posted November 20, 2024 in Blog (Last Updated November 20, 2024)
I just learned that Thomas E. Kurtz, co-creator of the BASIC computer programming language, died on November 12, 2024 at age 96. This really hit me emotionally, and I’ve come to realize it’s because my life would most likely be radically different if not for BASIC.
I was launched on the road to becoming a software developer at around age 13 in the mid-1980s when my mother came home from work with a Compaq Deskpro Portable computer. It came with two 5 1/4” floppy drives, a 40 MB hard drive and 640 KB of RAM and it weighed around 30 lbs.
I still have my old Compaq Portable because I can’t bring myself to throw out computers. It still turns on but the autoexec.bat file never runs. I think the hard drive might be pooched.
I was sort of hovering annoyingly around the perimeter as the tech set up the computer, and at some point he looked at me and said, “Hey kid, you wanna learn to program computers?”
I said, “Uh, sure?”
He handed me a small black plastic-bound three-ring binder containing a manual on GW-BASIC, the specific flavour of BASIC that shipped with the computer.
I started on page 1 and read through the book. As I learned each concept, I started writing programs that incorporated the fundamental constructs of most modern languages:
- direct mode vs program mode
- variables and data types
- if-then conditions
- FOR-NEXT loops
- WHILE-WEND loops
- reading from and writing to the file system
- sequential vs. random data access
- 25x80 ASCII graphics on the Hercules monochrome display
- program flow via the much maligned GOTO
- subroutines via the more civilized GOSUB-RETURN code blocks
- error handling via ON ERROR GOTO
I even made some rudimentary music (PLAY took letter notes whereas SOUND took frequencies in Hz) producing different pitches of the square wave beep our computer could emit.
And yes, my first program read:
10 PRINT "RYAN IS AWESOME!"
20 GOTO 10
Eventually I was creating elaborate if extremely derivative programs, including a text-based Dwarf cave adventure game in which I was determined to have the game remember all the locations your character killed monsters so they would still be there if you came back later. (I was particularly proud of having the corpses get incrementally more deteriorated each time you revisited them.)
Eventually I grew into adulthood and lost interest in programming. But in my late 20s I found myself in a position where my manager wanted an intranet site for our organization and I perhaps capriciously offered to build it.
I was also working part-time as a waiter and one of my coworkers was taking a web development course at a local college. I asked him how hard it was to build a website and he was really helpful, pointing me to some resources and giving me the basics of HTML.
One thing led to another and I ended up moving into a role in my regular job that had a web development component.
At some point I was asked to build a dynamic website and when I looked into the server running our website, I learned it supported something called Active Server Pages, or ASP.
Imagine my pleasant surprise when I found out the programming language for ASP was VBScript, which stands for Visual BASIC, scripting edition.
It was just a modern version of the language I had learned as a teenager!
Along the way, I also learned JavaScript and CSS, and once I started writing server code, I also learned SQL.
When a group of us decided in 2004 to start a local civic organization, I offered to build us a website. The very first version of Raise the Hammer was built in VBScript and the data was stored in an MS Access database (except for the article contents, which were stored in text files). We soon outgrew Access and upgraded to MySQL.
Once ASP became deprecated in favour of Microsoft’s new .NET application development framework, I decided to break from the MS stack and branch out to a cross-platform language called Python.
That was around 2009 and it turns out to have been a very good call, as Python has become a dominant language across various domains, including machine learning and AI.
So far I’ve enjoyed a wonderful career as a software developer, albeit self-taught, and it has given me incredible opportunities to learn things and build things and be a part of some amazing communities, organizations and projects.
I try to be mindful of the rare privilege of having more or less open access to a computer in my home starting in the mid-1980s. I don’t think I appreciated at the time just how unusual this was!
And reflecting on the death of Thomas Kurtz, I also have to acknowledge the privilege of being exposed to a high-level programming language specifically designed for ease of understanding and learning.
After all, BASIC stands for Beginners' All-purpose Symbolic Instruction Code, and true to its name, it really was easy for at least one awkward kid to learn.
May Thomas E. Kurtz, who changed the course of human history during his 96 years and has now undertaken the ultimate GOSUB with no RETURN, rest in peace.