DEV Community

Yigit Konur
Yigit Konur

Posted on

A Deep Dive into the John Carmack's Interview w/ Lex Fridman

This document distills the wisdom of John Carmack from his landmark 5+ hour conversation on the Lex Fridman Podcast based on my notes + help of long-context LLMs like Gemini 2.5 Pro. All of his major statements have been diarized, transcribed, and conceptually grouped to create a definitive guide to his philosophy on programming, virtual reality, AGI, and the value of hard work.

Part I: The Foundations of a Programmer

This part explores the formative experiences and philosophies that shaped John Carmack's approach to work, problem-solving, and life, long before the fame of id Software.

Section 1: Origins and First Encounters with Computing

This section covers Carmack's initial fascination with computers, the scarcity of information that fueled his drive, and the core principles he developed from his earliest interactions with technology.

  • The First Program: Identity and Control

    "Yeah, I do. So I remember being in a Radio Shack, going up to the TRS-80 computers and learning just enough to be able to do 10 PRINT "John Carmack". And it's kind of interesting how, of course, 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 going to say? I'm going to 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."

  • Love at First Sight: The Magic of a Predictable Machine

    "It really was something that was one of those love-at-first-sight things, where just really from the time that I understood what a computer was... I mean, I remember looking through old encyclopedias at the black-and-white photos of the IBM mainframes with the reel-to-reel tape decks... It just felt like this magical thing to me, this idea that the computer would just do exactly what you told it to. I mean, and there's a little bit of the genie-monkey's-paw sort of issues there, where you'd better be really, really careful with what you're telling it to do. But it wasn't going to backtalk you, it wasn't going to have a different point of view. It was going to carry out what you told it to do. And if you had the right commands, you could make it do these pretty magical things."

  • Learning in an Age of Information Scarcity

    "For people nowadays, it can be a little hard to understand what the world was like then from information-gathering, where I would go to the libraries and there would be a couple of books on the shelf about computers, and they would be very out of date even at that point. Just not a lot of information, but I would grab everything that I could find and, you know, devour everything. Whenever Time or Newsweek had some article about computers, I would like, cut it out with scissors and put it somewhere."
    "My goals in the early days was almost always making games of various kinds... I had a couple of books that would teach me important things about it. I had one book that I could start to learn a little bit of assembly language from, and I'd have a few books on BASIC and some things that I could get from the libraries."

Section 2: The Core Work Ethic

This section outlines Carmack's unwavering philosophy on hard work, productivity, and personal discipline, which has been a constant throughout his career.

  • The Consistent 60-Hour Work Week and the 12-Hour Limit

    "I was never one of the programmers that would do all-nighters, going through work for 20 hours straight. It's like my brain generally starts turning to mush after 12 hours or so. But the hard work is really important. And I would work, for decades I would work 60 hours a week. I would work a 10-hour day, six days a week, and try to be productive at that."
    "To some degree, I had a little thing in the back of my head where I was almost jealous of some of the programmers that would do these marathon sessions... a part of me was always a little bothered that that wasn't me, that I wouldn't go program 20 hours straight, because I'm just... I'm falling apart and not being very effective after 12 hours. I mean, yeah, 12-hour programming, that's fine when you're doing that, but you're not doing smart work much after, at least I'm not."

  • The Absurdity of Arguing Against Long Hours for Critical Tasks

    "There was a comment that a gamedev made that... he was basically saying, 'Yeah, 40 hours a week, that's kind of a part-time job.' And if you are really in it, you're doing what you think is important, what you're passionate about, working more gets more done... The fictional example I would use was: imagine there's an asteroid coming to impact Earth... Do you want Elon Musk or the people working at SpaceX... to clock out at 5:00 because, damn it, they're just going to go do worse work if they work another couple of hours? And you know, it seems absurd."
    "But then when coronavirus was hitting and you have all of these medical personnel that are clearly pushing themselves really, really hard, and I'd say it's like, 'Okay, do you want all of these scientists working on treatments and vaccines... are they really screwing everything up by working more than eight hours a day?'... it's the truth. Working longer gets more done."

  • The Mythical "Work-Life Balance" and Avoiding Burnout

    "I do think that there's a wide range of people where different people have different needs. It's not a one-size-fits-all... I have literally never felt burnout... I've always had the flexibility to work on lots of interesting things. You know, I can always just turn my gaze to something else and have a great time working on that. And so much of that... is the ability to have multiple things to choose from and to use your time on the most appropriate thing... Switching between them has been real valuable."

  • The Fuel: Pizza as a Metric of Success and the Diet Coke Ritual

    "One of the things that I can remember being an unhappy teenager, not having enough money... I couldn't buy pizza whenever I wanted to. So I got rich, and then I bought a whole lot of pizza. Defining... like that's what being rich felt like a lot... And it's absolutely true that for a long time at id Software, I had a pizza delivered every single day. You know, the delivery guy knew me by name. And I didn't find out until years later that apparently I was such a good customer that they just never raised the price on me."
    "It would really be with Diet Coke. I mean, there still is that sense of, you know, drop the can down, crack open the can of Diet Coke, 'Alright, now I'm in business, we're getting to work here.' Still to this day, yeah. Probably eight or nine a day."

Section 3: The Purpose of Programming - User Value

This section focuses on Carmack's highest-level principle: that all technical work must ultimately serve the end-user.

  • The North Star: Everything Flows from User Value

    "So I just gave a long rant/lecture at Meta... and my biggest point was everything that we're doing really should flow from user value... We're solving problems for people or we're providing entertainment to people... we want to be providing a net value over what they could be doing, but instead they're choosing to use our products. And that's where, I mean it sounds trite or corny, but I fundamentally do think that's how you make the world a better place. If you have given more value to people than it took you and your team to create, then the world's a better place."

  • The Danger of Technical Pride

    "Being proud about a specific architecture or a specific technology or a specific code sequence that you've done—it's great to get a little smile, like a tiny little dopamine hit for that. But the top-level metric should be that you're building things of value."

  • Measuring Value: Metrics and Vision

    "I do usually favor, if you can get any kind of a metric, that's good, by all means listen to the data. But you can go too far there... When information is available, you should never ignore it. From actual users using the thing... there is value to having a kind of wholeness of vision for a product... You've got to believe that somebody that has 30, 40 years of experience, you would hope that they've got wisdom that the just-out-of-boot-camp person contributing doesn't have."

  • Real Users Over Fictional Personas

    "I tell people, 'Pay attention to them. Don't invent fictional users.' Don't, you know, make an Alice, Bob, Charlie that fits whatever matrix of tendencies that you want to break the market down to, because it's a mistake to think about imaginary users when you've got real users that you could be working with."


Part II: The Programmer's Craft - Tools and Philosophies

This part delves into Carmack's detailed technical philosophies, covering his views on programming languages, development tools, and the mental models required to build robust, high-performance systems.

Section 4: On Programming Languages

Here, Carmack dissects the strengths and weaknesses of various languages, revealing a deep, pragmatic understanding of their trade-offs for different tasks and team structures.

  • The goto Statement: A Misunderstood Tool

    "Back in the day, in BASIC programming languages, you didn't have proper loops... So you had no choice but to use gotos... They did tend to sort of degenerate into madness... But gotos aren't poisonous. Sometimes they're the right thing to do. Usually, it's because there's a language feature missing, like nested breaks or something, where it can sometimes be better to do a goto cleanup or goto error rather than having multiple flags, multiple if statements littered throughout things. But it is rare."

  • The C and C++ Family: The Core Toolkit

    "When I'm sitting down to do what I consider kind of 'serious programming,' it's still in C++. And it's really kind of a C-flavored C++ at that, where I'm not big into the modern template metaprogramming sorts of things. I see a lot of train wrecks coming from some of that over-abstraction."
    "I spent a few years really going kind of deep into... the historical Lisp world work, and the Haskell, and some of the functional programming sides of things... and I changed a lot of the way I write my C and C++ code based on what I learned about the value that comes out of not having this random mutable state that you kind of lose track of."

  • The Virtue of Simplicity (C, Go) vs. The Peril of Abstraction (Lisp)

    "There is this underappreciated aspect to [C]: it is so simple... if you know C, you can generally jump in someplace and not have to learn what paradigms they're using because there just aren't that many available... When Google made Go, a lot of the criticisms of that are, 'Wow, this is not a state-of-the-art language. This language is just so simple and almost crude.'... But it does seem to be quite popular as basically saying, 'This is the good things about C. Everybody can just jump right in and use it.'"
    "The people that are the biggest defenders of Lisp are saying how malleable of a language it is. That if you write a huge Lisp program, you've basically invented your own kind of language... The idea of that for one of these long-term, supported-by-lots-of-people [projects] kind of horrifies me... 'You can't touch this code 'til you educate yourself on all of these things that we've built on top of that.'"

  • The Indispensable Value of Garbage Collection

    "I think garbage collection is unequivocally a good thing for most programs to be written in... There is so much objective data on the vulnerabilities that have happened in C and C++ programs, sometimes written by the best programmers in the world... Nobody is good enough to avoid ever shooting themselves in the foot with that. You write enough C code, you're going to shoot yourself in the foot... It's only when you get into the tightest of real-time things that you start saying, 'No, the garbage collection has more costs than it has benefits for me there.' But that's not 99-plus percent of all the software in the world."

Section 5: The Art of Development and Understanding Systems

This section details Carmack's philosophy on the process of writing and understanding code, from the tools he uses to his principles on testing, debugging, and managing a codebase over time.

  • The IDE and Debugger: A Hostile Divide in Cultures

    "It still boggles my mind how hostile to debuggers and IDEs that so much of the kind of big money, get billions of dollars, Silicon Valley venture-backed funds are... so much of it is like emacs, vim for things, and 'we just assume that debuggers don't work most of the time for the systems.'... A debugger is how you get a view into a system that's too complicated to understand. Anybody that thinks, 'Just read the code and think about it,' that's an insane statement... You have to do experiments on the system."

  • The Debugger as a Constant Companion

    "For somebody that kind of grew up in gamedev, it's like they were running it in the debugger anyways before they even knew there was a problem... When I'm working on my C/C++ code, I'm always running it from the debugger... Many times, the first thing I do after writing code is set a breakpoint and step through the function. Now, other people will say it's like, 'Oh, I do that in my head.' Well, your head is a faulty interpreter of all those things there... It is a kind of companion, the debugger."

  • Static Analysis: A Humbling and Necessary "Ego Check"

    "I made a point to really go through and scrub the codebase using every tool that I could find. And it was eye-opening... We had a reputation for having some of the most robust, strongest code... But when I took this code analysis squeegee through everything, it was shocking how many errors there were in there... It was humbling... I reached the conclusion that anything that can be syntactically allowed in your language, it's going to show up eventually in a large enough codebase. Good intentions aren't going to keep it from happening... You have to be open to the fact that everything that you're doing is just littered with flaws."

  • Asserts and Static Limits: Codifying Your Worldview

    "My code I would say like 10 to 20% of my private code just for personal use is probably asserts... even if you have it right and you wrote the code right initially, then circumstances change... It's good to be informed when the world has changed more than you thought it would... I kind of like in many cases picking a number... and having an assert saying, 'Hey, you hit this limit. You should probably think, are the choices that you've made around this still relevant if somebody's using 10 times more than you thought they would?'... This code was originally written with this kind of worldview."

  • The "Speed of Light" Principle and Strategic Inefficiency

    "So much of my systems design and systems analysis goes around, 'You should understand what the speed of light is.' Like, what would be the best you could possibly do here? And it sounds horrible, but in a lot of cases, you can be a thousand times off your speed of light velocity for something and it can still be okay... often being efficient is not really the best metric."
    "It's always good to know what you could do... because sometimes there's discontinuities, like around user reaction times... if you get down to 50 milliseconds, then all of a sudden, this just feels amazing... So sometimes it's important to really crunch hard to get over some threshold. But there are broad basins in the value metric for lots of work where it just doesn't pay to even go that extra mile."


Part III: The id Software Saga

This part is a deep dive into the legendary history of id Software, from its scrappy origins to the creation of genre-defining games, detailing the technical innovations, creative processes, and human dynamics that defined an era.

Section 6: The Genesis of id Software

  • The Path to Softdisk and Meeting a Tribe

    "I was doing... hard-scrabble contract programming work... And the company that I was doing the most work for was a company called Softdisk Publishing... The most important thing for me was I met two programmers there, John Romero and Lane Roth, that for the first time ever, I had met programmers that knew more cool stuff than I did... It was not at all sure I was going to take the job, but I met these awesome programmers... I did kind of quickly decide, 'Yeah, I'll go take the job down there.'"

  • The "Gamer's Edge" Pressure Cooker

    "The company wanted to make a gaming-focused... subscription... 'Gamer's Edge'... and we dived in and it was fantastic, you have to make new games every month... That kind of rapid-iteration, pressure-cooker environment was super important for all of us developing the skills that brought us to where we eventually went to... Like in the history of The Beatles... that opportunity to craft all of their skills before they were famous was very critical to their later successes."

  • The PC Side-Scrolling Breakthrough and the "Copyright Infringement" Demo

    "The core thing that those consoles did... was this ability to have a massive scrolling world... PC games just didn't do that... The first way we did scrolling was what I called adaptive tile refresh... it was essentially five times faster... We stayed up all night and we basically cloned the first level of Super Mario Brothers... We titled it 'Dangerous Dave in Copyright Infringement'... we left a disc on the desk for John Romero and Jay Wilbur to see... and that was the point where they were like, 'We got to do something with this. You know, we're gonna make a company.'"

Section 7: The Games that Defined a Generation

  • Wolfenstein 3D: The Power of Perspective

    The Idea: "This exact same game experience, just presented in a different perspective—it could be literally the same game just with a different view into it—would have a dramatically different impact on the players."
    The "Startle Reaction": "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 just did not get that kind of startle reaction... Something in the back of your brain, some reptile brain thing, is just going, 'Oh, something just happened.'"
    The Tech: "Wolfenstein 3D was just absolutely rock solid. You know, nothing glitched in there... It was a ray casting approach... The other kind of key aspect was what I called 'compiled scalers,' where... I used a program to make essentially a hundred or more separate little programs that were optimized for... 'I will take an image and I will draw it 12 pixels tall.'"

  • Doom: Breaking the Grid and Unleashing Creativity

    The "Turing-Complete" Design Space: "A game like Doom... there's kind of a Turing-completeness level of design freedom that you get... Wolfenstein clearly sat on one side of... all the creative people in the world could not go and do a masterpiece just with the technology that Wolfenstein had... But it didn't take that much more capability... to get to the point where people still announce new Doom levels today."
    The Tech: "This was where I really started grappling with epsilon problems... when you have angled lines... The way the BSP trees work is it basically takes the walls and it carves other walls... that you can then for sure, from any given point, get an ordering of everything in the world."
    Modding by Design: "It was our first game that was designed to be modified by the user community... we had this whole setup of our WAD files... you could add it to your game without destructively modifying it."

  • Quake: The Ambitious, Stressful Leap into True 3D

    Overreach and a Key Lesson: "We bit off a lot... It was going to be really a true 3D engine... completely programmable... and the multiplayer was going to be playable over the Internet... If I could go back... it would have been to split those innovations up into two phases in two separate games. I would have split that into programming language and networking with the same Doom engine."
    QuakeC Language: "I built my own programming language... I don't regret having done it, but after that... Quake 3, I implemented my own C interpreter or compiler, which was a much smarter thing to do... But it allowed people to do magical things."

Section 8: Culture, Conflict, and the Hacker Ethic

  • The Hacker Ethic in Practice: Sharing and Releasing Source Code

    "So Steven Levy's book Hackers was a really formative book for me... it was about sharing information... not keeping it to yourself... it's not a zero-sum game... The big thing that I was able to do through id Software was this ability to eventually release the source code for... all of our really seminal game titles... The really hard pitch was to actually release the full source code for the games... The programmers generally did get that ethic bit where you wanted to share your code."

  • The Human Dynamics: The Split with Romero

    "I did push Romero out of the company... The original founding corporate structure of id Software really led to a bunch of problems. We started off with us as equal partners... And that did lead to a bunch of the problems where I was sitting here going, 'Alright, I'm working harder than anyone... but we're all equal partners.' And then I see somebody that's not working as hard... 'Alright, either everybody has to be contributing up to this level or they need to get pushed out.' That was not a great situation."

  • Retrospective Wisdom and Lasting Respect

    "I look back on it and no, we pushed people out of the company that could have contributed if there was a different framework for them... The modern kind of Silicon Valley, like, 'let your stock vest over a time period'... we knew nothing about any of that."
    "When I met him, he was the coolest programmer I had ever met... he was also kind of a polymath... so much of the stuff that was great in the games did come from him, and I would certainly not take that away from him... I just talked with him... this year... I do, you know, I wish almost everyone the best."


Part IV: Beyond Gaming - VR, Aerospace, and AGI

This part covers Carmack's work and thinking after the peak id Software era, focusing on his ventures into virtual reality, his relationship with the modern aerospace industry, and his current, all-consuming focus on Artificial General Intelligence.

Section 9: Virtual Reality and The Metaverse

  • The Core Vision: "Better Inside Than Outside"

    "My pitch was that it should be better inside the headset than outside. It's the world as you want it. And everybody thought that was dystopian... I don't get that mindset... If you can make the world better inside the headset than outside, you've just improved the person's life... Everybody can't have Richard Branson's private island, but everyone can have a private VR island."

  • Development Strategy: Destination-First vs. Capability-First

    "I still think that that's the right way to go to build the metaverse is you build something that it's amazing that people love... and you expand the capabilities of that... Me personally, I would have bet on trying to do entertainment-valuable destination first and expanding from there."

  • The Challenges of Big Company Development

    "$10 billion [a year on Reality Labs] was just a number that I had trouble processing. I feel sick to my stomach thinking about that much money being spent... I see all these cases... of how a third party that we're kind of competing with... they do work with a tenth of the people that we do internally... There's the small company can just go do it, while in a big company you do have to worry about... privacy or diversity and equity and safety... But I'm not willing to believe that we are within even a factor of two or four of what the efficiency could be."

Section 10: Aerospace, Elon Musk, and High-Stakes Bets

  • On Elon Musk's Technical Depth and Unappreciated Risk

    "I get irritated with is people that say it's like, 'Oh, Elon's just a business guy.'... He was really deeply involved in a lot of the decisions... he cared very much about engine material selection, propellant selection... I have a great deal of admiration that he was willing to throw himself so completely into that."
    The Mars Bet: "I made a bet... whether boots on Mars by 2030... I think less than 50% chance... Mars really is, more than is comfortable, a bet on Elon Musk. That is his thing, and he is really going to move heaven and earth to try to make that happen... Because if Elon went away and SpaceX went public and got a board of directors, there are more profitable things they could be doing than focusing on human presence on Mars."

  • The Nuclear Fission Opportunity

    "This so precisely feels like aerospace before SpaceX... Somebody should be going in really hard, Elon Musk-style, at fission, economical fission, not fusion... Fusion is an almost absurdly complex thing... Where nuclear fission is basically, you put these two rocks together and they get hot all by themselves. That is just that much simpler."

Section 11: The Ultimate Problem - Artificial General Intelligence (AGI)

  • The Choice: The Highest Leverage Point in History

    "I did come down to this decision between working on economical nuclear fission or artificial general intelligence... AGI... seems to me like this is the highest leverage moment for potentially a single individual in the history of the world... It is likely that the code for AGI is going to be tens of thousands of lines of code, not millions of lines of code... My bet is that I think there's less than six key insights that need to be made. Each one of them can probably be written on the back of an envelope."

  • The "Learning Disabled Toddler" Milestone

    "The example I give is if we get to the point where you've got a learning disabled toddler... that can still interact with their favorite TV show and video game and can be trained and learn in some appreciably human-like way... At that point, you can deploy an army of engineers, cognitive scientists... and you can do rollbacks and A/B testing... If you get to that point... I think that it's going to be a done deal."

  • Critique of Current AI and the Path Forward

    Not a "Being": "It's not a being. It's not close to a being that's going through a lifelong learning process... A living being is going to be something that's a continuous, lifelong-learned, task-agnostic thing... It's not learning the way humans learn."
    Embodiment is a Handicap: "No, it does not need to be embodied in the physical world... I think that anybody that is all in on the embodied aspect of it, they are tying a huge weight to their ankles. And I think that I would almost count them out."
    Consciousness is How the Brain Feels: "I think that Consciousness is kind of the way the brain feels when it's operating... I don't think there's anything deeply magical about it."

  • Getting Serious: Founding a Company as a Forcing Function

    "I literally just this week signed a term sheet to take some investment money for my company... I was going to take the Victorian gentleman scientist route... But what I was finding is that I was still not committing... It's not really bearing down on the problem. So I decided that I was going to take some investor money because I have an overactive sense of responsibility about other people's money... It's a huge forcing function, this investment."


Part V: Life, Philosophy, and Advice

This final part captures Carmack's broader views on life, including the lessons learned from martial arts, his direct advice for the next generation, and his refreshingly pragmatic take on the meaning of it all.

Section 12: Lessons from the Mat - Martial Arts and Humility

"It's a more motivating form of exercise if someone is crushing you... I did do wrestling in junior high, and I often wish that... I think it would have been good for me if I'd carried that on into high school... embracing the grind and that push that I associate with the wrestling team."
"The biggest benefit is in the humbling aspect when another human being kind of tells you that... you're not that special... And in the most extreme case, when you tap to a choke, you are basically living because somebody let you live... That is a closer brush with mortality than most people consider."

Section 13: Advice for Young People

The Two Paths: Depth vs. Specialization "My biggest point was that the path for me might not be the path for everyone... What I did was all about this knowledge in depth... to really understand them through and through... The whole world doesn't need that. Most programmers... need to do a little job that's been parceled out to them, be reliable... do quality work."
Preparation Meets Opportunity: "Be prepared for opportunities to present themselves... You're going to make more total progress if you say, 'I'm preparing myself with this broad set of tools, and then I'm being aware of all the way things are changing... and then looking for opportunities to deploy the tools that you've built."
"You Can Know Anything" and "Weaponized Curiosity": "You can't know everything, but you should convince yourself that you can know anything... any one particular thing, it was created and discovered by humans, you can learn it... It's like weaponized curiosity. You can deploy your curiosity to find... to kind of like make things useful and valuable to you, even if they don't immediately appear that way."

Section 14: The Meaning of Life

A Question He Doesn't Fret About
> "I know a lot of people fret about this question a lot, and I just really don't. I really don't give a damn. We are... biological creatures, a happenstance of evolution. We have innate drives that evolution crafted for survival and passing on of genetic codes. I don't find a lot of value in trying to go much deeper than that... I don't run into like states of depression or ennui... that winds up being a challenge and forcing a degree of soul-searching."

The Magic of Gradient Descent
> "It's been my experience that people that... don't focus on the here and now right in front of them tend to be less effective... It's like the magic of gradient descent. People just don't believe that just looking locally gets you to all of these spectacular things. That's been... the decades of looking at really some of the smartest people in the world that would just push back forever against this idea that it's not this grand, sophisticated vision of everything, but little tiny steps, local information, winds up leading to all the best answers."

Top comments (0)