Focus and Inspiration
FS: Your focus is astonishing. It seems that you're uniquely suited to this time and place.
John: Focus is extremely useful. As far as this specific time and
place, I do think software is an almost uniquely wonderful medium. But if
it wasn't here, I'd be some other type of engineer or some kind of
scientist. I could have a fine time working in any kind of hard science
Software is so wonderful in a unique way. The people who set up for a physics experiment spend a year of preparation time, tooling around doing things. And then you spend another year analyzing it. With software you can have an epiphany and just sit down and hash it out. You can make it happen right there. It's the most malleable media to be working in for any kind of intellectual pursuit. I do feel fortunate that I'm around in a time when all this is going on.
I can remember again when I was a lot younger, and I didn't have the computer I wanted. I had this frustration. I felt like I was "missing it." I felt like I should be writing these games, like the early Apple II games. I was genuinely frustrated because I felt like I was missing the golden opportunity. Of course at the time I didn't know that I was going to come in on the "later" golden opportunity.
You read the book "Hackers" by Steven Levy?
FS: Yeah it was a great book!
John: I read that as a teenager. At that third section I was like
"Goddamnit, I should be here!" Then about 10 years later, I thought back
about it: "you know, if there was a fourth section in that book, maybe I
would be in there!" That's a nice thought.
It was just interesting to see that. I honestly thought I was missing my shot when I was a lot younger, like it was a golden age in the early development on PCs, and I was really frustrated that I wasn't there.
FS: Do you think that it's the very act of programming and the very act of making your ideas into code that's inspiring for you? Or were there actual games that you can name that you were playing on the Apple II and PC early on that inspired you?
John: I can name off the games that I really liked at the time, but
programming in the abstract sense is what I really enjoy. I enjoy lots of
different areas of it
In the gaming industry, there are a lot of people that are specifically in it because they love games and they want to create things.
My love for programming is a more abstract thing. I'm taking a great deal of enjoyment writing device drivers for Linux. I could also be having a good time writing a database manager or something because there are always interesting problems. There are some things that are inherently more rewarding than others. Graphics and games are probably the most generally rewarding area of programming.
FS: How so?
John: Because you get really nice feedback. When you write a graphics algorithm, it draws a picture for you. While data can be rewarding in its own way, in general the human species is wired to respond much more strongly to visual things and things that have to be interpreted from symbols. So there's something fundamental there why it's a neat thing. But we do get to work on a whole lot of areas. I enjoy all aspects of it, but games have always been one place where there are challenging things and it has its own reward at the end, aside from the problem itself.
Early on I was really into the RPGs, like the Ultimas, the Wizardrys and all those things. Some of the very early games I wrote for the Apple II were basically Ultima ripoffs. I also loved all the straight arcade games, all the classic games.