John Carmack: Doom, Quake, VR, AGI, Programming, Video Games, and Rockets | Lex Fridman Podcast #309

John Carmack: Doom, Quake, VR, AGI, Programming, Video Games, and Rockets | Lex Fridman Podcast #309

Lex Fridman PodcastAug 4, 20225h 14m

John Carmack (guest), Lex Fridman (host), Narrator

Early fascination with computers and self‑taught programmingGame engine innovations in Commander Keen, Wolfenstein 3D, Doom, and QuakeProgramming languages, tools, and the hacker ethic (C/C++, Lisp, Python, JavaScript, debuggers, static analysis)Work ethic, productivity, and the trade‑off between optimization and shippingOpen sourcing game engines and the modding/community ecosystemVR, the metaverse, and constraints of hardware, UX, and big‑company structureArtificial general intelligence: timelines, architectures, and safety/ethics stance

In this episode of Lex Fridman Podcast, featuring John Carmack and Lex Fridman, John Carmack: Doom, Quake, VR, AGI, Programming, Video Games, and Rockets | Lex Fridman Podcast #309 explores john Carmack on coding, games, VR, AGI, and working obsessively hard John Carmack traces his journey from a self-taught kid obsessed with early computers to co-founding id Software and pioneering 3D game engines for Wolfenstein 3D, Doom, and Quake. He explains the concrete technical hacks and constraints that shaped these breakthroughs, from tile-based scrolling to ray casting and BSP trees, and how game feel and user value mattered more than technical purity.

John Carmack on coding, games, VR, AGI, and working obsessively hard

John Carmack traces his journey from a self-taught kid obsessed with early computers to co-founding id Software and pioneering 3D game engines for Wolfenstein 3D, Doom, and Quake. He explains the concrete technical hacks and constraints that shaped these breakthroughs, from tile-based scrolling to ray casting and BSP trees, and how game feel and user value mattered more than technical purity.

He contrasts old-school, low-level optimization with today’s abundance of computing power, arguing that deep systems understanding still matters when you’re pushing true frontiers such as VR, rockets, and AGI. Carmack also discusses work habits, the value of long hours, debugging discipline, and the importance of focusing relentlessly on user value rather than cleverness for its own sake.

In VR and the metaverse, he’s pragmatic: it will likely evolve gradually from specific, compelling applications—like Beat Saber or high‑quality remote meetings—rather than from top‑down, abstract platforms. Looking forward, he has now committed seriously to artificial general intelligence, betting that a relatively small amount of code and a handful of key ideas, built on today’s ML literature, could yield human‑level learning systems within about a decade.

Key Takeaways

Technical breakthroughs often come from exploiting hardware constraints, not ignoring them.

Carmack’s scrolling tricks for Commander Keen, ray casting in Wolfenstein 3D, and BSP trees in Doom/Quake all arose from carefully studying limited 80s/90s hardware and finding non‑obvious angles (like reusing text‑scroll hardware or wrapping video memory) to get 5–10x speedups.

Get the full analysis with uListen AI

Deep understanding across the whole stack unlocks outsized leverage.

He argues that real frontier work—VR on mobile, rockets, AGI—requires knowing hardware, compilers, low‑level code, and high‑level design so you can reframe the problem, not just micro‑optimize within existing abstractions.

Get the full analysis with uListen AI

User value should trump elegance, cleverness, and purity in engineering decisions.

From game design to VR products, he pushes engineers to measure success by whether users get more value than the effort and cost put in, not by how sophisticated architectures or abstractions look internally.

Get the full analysis with uListen AI

Hard, sustained work really does compound skill and output—if you can tolerate it.

Carmack describes decades of 60‑hour weeks, emphasizes sleep but rejects the idea that 40 hours is always optimal, and views intense effort as both how mastery is built and how big, improbable goals are actually achieved.

Get the full analysis with uListen AI

Tooling and discipline—debuggers, static analyzers, asserts—are non‑optional for serious systems.

He’s adamant that relying on “read the code and think about it” is delusional at scale; systematic use of debuggers and analysis tools revealed many serious bugs even in id’s famously robust engines.

Get the full analysis with uListen AI

VR’s success will likely come from focused, magical experiences, not abstract metaverse visions.

Beat Saber’s design—fixed position, controllers that only slice, short sessions—is almost perfectly tuned to VR’s strengths, suggesting that the path to a “metaverse” is through such highly compelling, concrete apps rather than generic 3D social platforms.

Get the full analysis with uListen AI

AGI may be surprisingly small in code but large in compute, and built from today’s ideas.

Carmack believes AGI could be tens of thousands of lines of code plus huge GPU arrays, built on a handful of still‑missing insights already foreshadowed in current ML literature, and expects “signs of life” within roughly a decade.

Get the full analysis with uListen AI

Notable Quotes

You weren’t inside the game… Some reptile brain thing is just going, ‘Oh, shit, something just happened.’ And that was one of those early points where it’s like, ‘Yeah, this is gonna make a difference.’

John Carmack

Being a servant to the user is your job when you’re a developer. You want to be producing something that other people are gonna find valuable.

John Carmack

Working longer gets more done. If you want to accomplish something, working longer and harder is the path to getting it accomplished.

John Carmack

The best programming language is the one that works, generally the one you’re currently using.

John Carmack

I am seriously going for the AGI side of things… This is potentially one of the most important things humans ever do.

John Carmack

Questions Answered in This Episode

How much of Carmack’s success came from raw talent versus his long‑hour, high‑discipline work style—and is that replicable for most people?

John Carmack traces his journey from a self-taught kid obsessed with early computers to co-founding id Software and pioneering 3D game engines for Wolfenstein 3D, Doom, and Quake. ...

Get the full analysis with uListen AI

Are we losing something important as modern developers rely less on low‑level understanding and more on high‑level frameworks and cloud services?

He contrasts old-school, low-level optimization with today’s abundance of computing power, arguing that deep systems understanding still matters when you’re pushing true frontiers such as VR, rockets, and AGI. ...

Get the full analysis with uListen AI

What are the ethical implications if AGI really is just “tens of thousands of lines of code” plus compute—who should own or control that code?

In VR and the metaverse, he’s pragmatic: it will likely evolve gradually from specific, compelling applications—like Beat Saber or high‑quality remote meetings—rather than from top‑down, abstract platforms. ...

Get the full analysis with uListen AI

Could VR truly make many people’s lives “better inside the headset than outside,” and what are the societal risks if it does?

Get the full analysis with uListen AI

How should large tech companies restructure so that a handful of “full‑stack” engineers can have Carmack‑level impact instead of being buried in bureaucracy?

Get the full analysis with uListen AI

Transcript Preview

John Carmack

I remember the reaction where he had drawn these characters and he was slowly moving around and, like, people had no experience with 3D navigation. It was all still keyboard. We didn't even have mice, uh, set up at that time. But slowly moving, going up, picked up a key, go to a wall. The wall disappears in a little animation and there's a monster, like, right there, and he practically fell out of his chair. It was just like, "Ah!" And games just didn't do that, you know? The games were the god's eye view. You were a little invested in your little guy. You can be like, you know, happy or sad when things happen, but you just did not get that kind of startle reaction that-

Lex Fridman

You weren't inside the game.

John Carmack

... something hits your face, something in the back of your brain...

Lex Fridman

Yeah.

John Carmack

Some reptile brain thing is just going, "Oh, shit, something just happened." And that was one of those early points where it's like, "Yeah, this is gonna make a difference. This is going to be powerful and it's gonna matter."

Lex Fridman

The following is a conversation with John Carmack, widely considered to be one of the greatest programmers ever. He was the co-founder of id Software and the lead programmer on several games that revolutionized the technology, the experience, and the role of gaming in our society, including Commander Keen, Wolfenstein 3D, Doom, and Quake. He spent many years as the CTO of Oculus VR, helping to create portals into virtual worlds, and to define the technological path to the metaverse and Meta. And now, he has been shifting some of his attention to the problem of artificial general intelligence. This was the longest conversation on this podcast at over five hours, and still I could talk to John many, many more times, and we hope to do just that. This is the Lex Fridman Podcast. To support it, please check out our sponsors in the description and now, dear friends, here's John Carmack. What was the first program you've ever written? Do you remember?

John Carmack

Yeah, I do. So, I remember being in a RadioShack going up to the TRS-80 computers and learning just enough to be able to do ten print "John Carmack." Um, I... And it's kind of interesting how, of course, I... You know, Kernighan and Ritchie kind of standardized "Hello World" as the first thing that you do in every computer programming language and every computer. But not having any interaction with the cultures of Unix or any other standardized things, it was just like, "Well, what am I gonna say? I'm gonna say my name." And then you learn how to do GOTO 10 and have it scroll all off the screen and that was definitely the first thing that I wound up doing on a computer.

Lex Fridman

Can I ask you programming advice? I was always told in the beginning that you're not allowed to use GOTO statements. That's really bad programming. Is this correct or not? Jumping around code, can- can- can we look at the philosophy and the technical, uh, aspects of the GOTO statement that seems so convenient, but is supposedly bad programming?

Install uListen to search the full transcript and get AI-powered insights

Get Full Transcript

Get more from every podcast

AI summaries, searchable transcripts, and fact-checking. Free forever.

Add to Chrome