For those who are unable/unwilling to access Facebook:

John Carmack

Steve Jobs

My wife once asked me “Why do you drop what you are doing when Steve Jobs asks you to do something? You don’t do that for anyone else.”

It is worth thinking about.

As a teenage Apple computer fan, Jobs and Wozniak were revered figures for me, and wanting an Apple 2 was a defining characteristic of several years of my childhood. Later on, seeing NeXT at a computer show just as I was selling my first commercial software felt like a vision into the future. (But $10k+, yikes!)

As Id Software grew successful through Commander Keen and Wolfenstein 3D, the first major personal purchase I made wasn’t a car, but rather a NeXT computer. It turned out to be genuinely valuable for our software development, and we moved the entire company onto NeXT hardware.

We loved our NeXTs, and we wanted to launch Doom with an explicit “Developed on NeXT computers” logo during the startup process, but when we asked, the request was denied.

Some time after launch, when Doom had begun to make its cultural mark, we heard that Steve had changed his mind and would be happy to have NeXT branding on it, but that ship had sailed. I did think it was cool to trade a few emails with Steve Jobs.

Several things over the years made me conclude that, at his core, Steve didn’t think very highly of games, and always wished they weren’t as important to his platforms as they turned out to be. I never took it personally.

When NeXT managed to sort of reverse-acquire Apple and Steve was back in charge, I was excited by the possibilities of a resurgent Apple with the virtues of NeXT in a mainstream platform.

I was brought in to talk about the needs of games in general, but I made it my mission to get Apple to adopt OpenGL as their 3D graphics API. I had a lot of arguments with Steve.

Part of his method, at least with me, was to deride contemporary options and dare me to tell him differently. They might be pragmatic, but couldn’t actually be good. “I have Pixar. We will make something [an API] that is actually good.”

It was often frustrating, because he could talk, with complete confidence, about things he was just plain wrong about, like the price of memory for video cards and the amount of system bandwidth exploitable by the AltiVec extensions.

But when I knew what I was talking about, I would stand my ground against anyone.

When Steve did make up his mind, he was decisive about it. Dictates were made, companies were acquired, keynotes were scheduled, and the reality distortion field kicked in, making everything else that was previously considered into obviously terrible ideas.

I consider this one of the biggest indirect impacts on the industry that I have had. OpenGL never seriously threatened D3D on PC, but it was critical at Apple, and that meant that it remained enough of a going concern to be the clear choice when mobile devices started getting GPUs. While long in the tooth now, it was so much better than what we would have gotten if half a dozen SoC vendors rolled their own API back at the dawn of the mobile age.

I wound up doing several keynotes with Steve, and it was always a crazy fire drill with not enough time to do things right, and generally requiring heroic effort from many people to make it happen at all. I tend to think this was also a calculated part of his method.

My first impression of “Keynote Steve” was him berating the poor stage hands over “This Home Depot shit” that was rolling out the display stand with the new Mac, very much not to his satisfaction. His complaints had a valid point, and he improved the quality of the presentation by caring about details, but I wouldn’t have wanted to work for him in that capacity.

One time, my wife, then fiancé, and I were meeting with Steve at Apple, and he wanted me to do a keynote that happened to be scheduled on the same day as our wedding. With a big smile and full of charm, he suggested that we postpone it. We declined, but he kept pressing. Eventually my wife countered with a suggestion that if he really wanted “her” John so much, he should loan John Lassiter to her media company for a day of consulting. Steve went from full charm to ice cold really damn quick. I didn’t do that keynote.

When I was preparing an early technology demo of Doom 3 for a keynote in Japan, I was having a hard time dealing with some of the managers involved that were insisting that I change the demo because “Steve doesn’t like blood.” I knew that Doom 3 wasn’t to his taste, but that wasn’t the point of doing the demo.

I brought it to Steve, with all the relevant people on the thread. He replied to everyone with:

“I trust you John, do whatever you think is great.”

That goes a long way, and nobody said a thing after that.

When my wife and I later started building games for feature phones (DoomRPG! Orcs&Elves!), I advocated repeatedly to Steve that an Apple phone could be really great. Every time there was a rumor that Apple might be working on a phone, I would refine the pitch to him. Once he called me at home on a Sunday (How did he even get my number?) to ask a question, and I enthused at length about the possibilities.

I never got brought into the fold, but I was excited when the iPhone actually did see the light of day. A giant (for the time) true color display with a GPU! We could do some amazing things with this!

Steve first talked about application development for iPhone at the some keynote I was demonstrating the new ID Tech 5 rendering engine on Mac, so I was in the front row. When he started going on about “Web Apps”, I was (reasonably quietly) going “Booo!!!”.

After the public cleared out and the rest of us were gathered in front of the stage, I started urgently going on about how web apps are terrible, and wouldn’t show the true potential of the device. We could do so much more with real native access!

Steve responded with a line he had used before: “Bad apps could bring down cell phone towers.” I hated that line. He could have just said “We aren’t ready”, and that would have been fine.

I was making some guesses, but I argued that the iPhone hardware and OS provided sufficient protection for native apps. I pointed at a nearby engineer and said “Don’t you have an MMU and process isolation on the iPhone now?” He had a wide eyed look of don’t-bring-me-into-this, but I eventually got a “yes” out of him.

I said that OS-X was surely being used for things that were more security critical than a phone, and if Apple couldn’t provide enough security there, they had bigger problems. He came back with a snide “You’re a smart guy John, why don’t you write a new OS?” At the time, my thought was, “Fuck you, Steve.”.

People were backing away from us. If Steve was mad, Apple employees didn’t want him to associate the sight of them with the experience. Afterwards, one of the execs assured me that “Steve appreciates vigorous conversation”.

Still deeply disappointed about it, I made some comments that got picked up by the press. Steve didn’t appreciate that.

The Steve Jobs “hero / shithead” rollercoaster was real, and after riding high for a long time, I was now on the down side. Someone told me that Steve explicitly instructed them to not give me access to the early iPhone SDK when it finally was ready.

I wound up writing several successful iPhone apps on the side (all of which are now gone due to dropping 32 bit support, which saddens me), and I had many strong allies inside Apple, but I was on the outs with Steve.

The last iOS product I worked on was Rage for iOS, which I thought set a new bar for visual richness on mobile, and also supported some brand new features like TV out. I heard that it was well received inside Apple.

I was debriefing the team after the launch when I got a call. I was busy, so I declined it. A few minutes later someone came in and said that Steve was going to call me. Oops.

Everyone had a chuckle about me “hanging up on Steve Jobs”, but that turned out to be my last interaction with him.

As the public story of his failing health progressed, I started several emails to try to say something meaningful and positive to part on, but I never got through them, and I regret it.

I corroborate many of the negative character traits that he was infamous for, but elements of the path that led to where I am today were contingent on the dents he left in the universe.

I showed up for him.