I knew I wanted to work with computers from a very early age, but there were also a lot of other stereotypical geek aspects to my life growing up - phreaking, hacking (nobody called it “cracking” back then), rockets, bombs, and thermite (sometimes in not-so-smart combinations), sci-fi, comic books, D&D, arcades, etc.
I was sort of an amoral little jerk when I was young. I was arrogant about being smarter than other people, but unhappy that I wasn’t able to spend all my time doing what I wanted. I spent a year in a juvenile home for a first offence after an evaluation by a psychologist went very badly.
I went to a couple semesters of classes at the University of Missouri (UMKC), taking nothing but CS classes, but it just didn’t seem all that worthwhile. In hindsight, I could have gotten more out of it than I did, but I hadn’t acquired a really good attitude towards learning from all possible sources yet.
I dropped-out of college to start programming full time, but trying to do contract programming for the Apple II/IIGS post 1990 was not a good way to make money, and I only wound up with between $1k and $2k a month. Not having enough money is stressful, and I did some things I didn’t want to. I wrote a numerology program for a couple hundred bucks one time…
Softdisk publishing finally convinced me to come down to Shreveport for an interview. I had been doing contract work for Jay Wilbur and Tom Hall, so I knew there were some pretty cool people there, but meeting John Romero and Lane Roath was what convinced me to take the job. Finally meeting a couple sharp programmers that did impressive things and had more experience than I did was great.
After I took the job at Softdisk, I was happy. I was programming, or reading about programming, or talking about programming, almost every waking hour. It turned out that a $27k salary was enough that I could buy all the books and pizza that I wanted, and I had nice enough computers at work that I didn’t feel the need to own more myself (4mb 386-20!).
I learned a huge amount in a short period of time, and that was probably a turning point for my personality. I could still clearly remember my state of mind when I viewed other people as being ignorant about various things, but after basically doubling my programming skills in the space of six months, I realized how relative it all was. That has been reinforced several additional times over the seven years since then.
All the time from working at Softdisk, to founding Id and making the products we are know for has been pretty seamless for me. I have been learning as much as I can, working hard, and doing my best.
I know that most people won’t believe it, but a 100x increase in income really didn’t have that big of an impact on me as a person. It is certainly nice to be in a position where people can’t exert any leverage on you, but it’s definitely not the primary focus of my life. I get to drive a ferrari in to work, but my day to day life is almost exactly the same as it was eight years ago. I get up, go in to work, hopefully do some good stuff, then go home. I’m still happy.
John Carmack