Today is my 40th anniversary of programming a computer.
December 22, 1978: This day marked the first time I walked into a computer store, the first time I played a game on a home computer (or even touched one), and the very first time I wrote a computer program.
Of course, that very first program was pretty BASIC. 😉 I learned the concept of programming, line numbers, how to RUN and LIST a program, and (at least) my first two commands, PRINT and GOTO, on that same day.
The very next day, I learned (more) about variables, FOR loops, and number theory (mathematics, not programming), as I helped an MSU student debug his program, and then further experiment with it. We noticed that abundant numbers are often bounded on each side by primes, but this is not universal.
I urge you to read more about My First Programming Experience.
Computers were awesome!
A few years later, as I was on an airline flight, I took out my pen and paper and started writing a wishlist for the “perfect computer” for me, dreaming about what could be possible in the future. I envisioned lots of colors, crazy amounts of memory (like 64K!), and larger custom character sets, which idea gave way to (really out there) thoughts of individually addressable pixels at very high resolution (say, 640×400). At a conference, I saw a display with a “true color” screen image of an apple (fruit) at 1024×1024 and that blew my mind.
In the intervening years, I have had loads of milestones and accomplishments:
- January 13, 1982: founded Sophisticated Software Systems
- Summer 1982: had first professional programming job
- Late summer 1982: purchased very first computer, a Commodore VIC-20
- 1984: won the ComCon ’84 International Programming Competition
- 1984: started first full-time programming job with Michigan State University
- 1988: landed game programming job with Quest Software
- 1989: published first retail game product, Legacy of the Ancients
- April 22, 1990: self-published shareware game, Pacmania 1.10
- February 1, 1993: started as Senior Software Engineer at Spectrum Holobyte
- 1994: went full-time as an independent game developer
- 1995: incorporated business as SophSoft, Incorporated
- 1996: launched Digital Gamecraft for developing independent games
- 2002: Goodsol Development released Pretty Good MahJongg
- 2004: served as Chairman for the Association of Software Professionals
- 2007: created first Mac game, Pretty Good Solitaire Mac Edition
- March 27, 2013: A Little Solitaire became the #1 card game for iPad
- 2013: published first Digital Gamecraft title for iOS, Demolish! Pairs
- 2016: established and ran Advanced Concepts Group at DAQRI
- 2018: published an Android version of Demolish! Pairs
These are just a few of the major highlights, but none of these events made as much of a difference in my life as that day I walked into New Dimensions in Computing. Of course, there are a few personal milestones that really affected things as well, but most of these also happened within this time frame (more than 76% of my lifetime).
Today, I am back doing what I love: programming. Even when things are tough, I truly enjoy the development process and can get ‘in the zone’. When people would ask me what my favorite game was, I would often reply something like, “C++”. 🙂
Amazingly, I now have a stable of portable devices, each of which far exceeds my ultimate imagination for my perfect computer, and many of them blow away the visual capabilities of that screen that mesmerized me back in the early 1980s (and I never even considered the possibility of 3D rendering capabilities). My phone fits in my pocket yet is more powerful than my first PC, and my watch is more powerful than that first computer.