My first interaction with a personal computer came in the spring of 1983, while in 5th grade at Cedar Hill Elementary School in Warwick, Rhode Island. A Commodore VIC 20 was introduced into our math class and we got to play Hangman on it. That was all I ever remember doing in that brief introduction. There was no peek behind the door into the inner workings, no glimpse of computer code. I didn’t even know what computer code was.
The summer of 1983 was a kind of oasis summer for me. A transitionary summer. Our family would be moving from New England to Los Angeles late in the summer. My dad was out west looking for places to live, and we’d sold our house in New England and were staying up in New York with my grandparents for much of the summer (or so it seemed to me, my memory is a little fuzzy on this). But one thing happened that summer that ultimately led to the career I have today.
I went with my cousins to see War Games in the movie theater.
Aside from being a fun movie, I discovered for the first time that I computer could be controlled by writing programs to tell it what to do. It was a kind of revelation for me. Immediately after the movie, we returned to my cousin’s house. He had either a Timex Sinclair 1000 or a TRS 80; I can’t recall which. But what he did was show me how to program. Granted, we were both 11 years old, and our programs were very simple. He gave me an 11-year old version of “hello world,” something like:
10 PRINT "This is cool!"
20 GOTO 10
He also introduced me to the notion of variables with a program that went something like:
10 LET X = 1
20 PRINT X
30 LET X = X + 1
40 GOTO 20
That was all I needed. Well, almost. I think we spent a few hours at his computer, pretending to write a program to hack into NORAD, just as we’d seen in the movie. Of course, we didn’t even have a modem so we weren’t getting anywhere. But I was learning.
It wasn’t until well after we completed our move to L.A. that I got my own VIC 20 and began to expand my programming knowledge. I would pick up old computer magazines and type in programs that were hundreds of lines long (saving them on my tape drive) and trying to figure out how they worked. We moved from the VIC 20 to an Apple IIe and I learned more. I loved text adventure games, and I figured out how to write them myself. I think I had to look up how to implement a simple 2-word parser, but beyond that, the rest, including the world “map” was all on my own. I remember reading a book on programming called I Speak BASIC to My Apple.
In 9th grade, at Porter Junior High School2, the project I did in my computer class was to create a rudimentary flight simulator. It worked surprisingly good for a 15-year old without much experience in graphics. And it was all done in BASIC, which was really the only language I’d learned up to that point. (I’d learned a little LOGO in 6th grade, but never pursued it beyond what we did in class.)
In high school, I worked for a local pharmacy and loved the little DOS-based contacts program that the pharmacist used to keep track of customers. By then, I had my own IBM 286 machine at home, and I spent several weeks, writing my own version of that contact program before heading off to college the following fall.
I kept at it, and after three years of working in the dorm cafeteria in college, in the dish room, doing custodial shifts and serving food, my knowledge of programming got me into the office where I automated budgets and other processes for the cafeteria management during my senior year.
Three months after graduating from the University of California, Riverside, I landed a job in what is now called “IT” working at a corporate helpdesk. I quickly split my time, doing helpdesk troubleshooting, but also writing programs and expanding out beyond BASIC and Visual Basic. Today, almost 20 years later, I am the same company. I’m a senior member of our “applications” group, and while I don’t write as much code as I used to, I am fluent in more than a dozen programming languages from procedural languages like C#, Perl, PHP, Python, and Ruby, to more symbolic languages like Wolfram and LISP.
Twenty years at the same company doing a substantial amount of programming. That is a career, and it never would have happened if I hadn’t have discovered the BASIC programming language, and had the opportunity and freedom to play with it and figure it out for myself.
It should be no wonder to anyone that I will encourage and teach my kids to learn to write code.
Happy 50th birthday, BASIC!