The First Entity Component System - An Interview with Marc LeBlanc
76K views · Jun 1, 2026 · Education
Comments · 215
@EPICtureGUY · 4 months ago
Glad Casey is finally letting us here to say thank you.
46
@Chud-Tungsten · 4 months ago (edited)
Casey, more like this please. Thank you.<br><br>More guys who were there, doing the thing, talking about how & why they solved game architecture problems in the golden age.
38
@javierolazaran7227 · 4 months ago (edited)
Casey's videos are the type of content that helps me keep the programming flame alive in the current state of the field.<br><br>I'm genuinely grateful for that.
209
@flyaruu · 3 months ago
That 'Big OOps' talk was the best I've seen in a long time
21
@gcewing · 3 months ago
"Mayday, mayday. My heap is fragmented, I need to land immediately."
15
@kRySt4LGaMeR · 4 months ago
2026 has been an incredible year in regards to Casey producing posting quality stuff. Not sure what changed but this is the type of stuff that I seek out in tech youtube :)
59
@ShreyasGaneshs · 4 months ago
so much casey content is the best thing thats happened in the ai era
202
@moonythm · 4 months ago
Casey's been on fire recently
64
@SeanTBarrett · 4 months ago (edited)
In the System Shock source code, in addition to objects having 1-byte class and 1-byte subclass, objects have a 2-byte ObjSpecID, indexing the "object-type-SPECific" (presumably) ID. Then there's a common header for every ObjSpec type, which includes both a back-pointer ObjID, but also 'next' and 'prev' ObjSpecID. So rather than iterating over the arrays, code in Shock iterated over a type-specific doubly-linked list of ObjSpecIDs, allowing it to skip around through a sparsely-allocated array. (There's a macro FORALLOBJSPECS that steps through such a linked list.)<br><br>typedef struct ObjSpec {<br> union {<br> struct {<br> ObjID id : 15; // ID in master list<br> ushort tile : 1; // look in tiled array?<br> } bits;<br> ObjSpecID headused;<br> };<br> union {<br> ObjSpecID next; // next struct in free or used chain<br> ObjSpecID headfree;<br> };<br> ObjSpecID prev; // prev struct in used chain<br>} ObjSpec;
157
@stunwin · 4 months ago
i was googling ECS videos yesterday, so i have no choice but to believe i caused this video
223
@cooperw839 · 4 months ago
Thanks for recording this! The 90s era of development to me stands as the golden age of technical achievement coupled with like, garage band authenticity and enthusiasm. Remains my biggest inspiration for game development even now.<br><br> Incidentally, Mahk was also guest on Warren Spector’s game design lectures, and it’s well worth seeking it (and the rest) out on YouTube.
18
@computersciencestudentriverbat · 4 months ago
The amount of care and attention to detail MAHK talks about is the exact type of mindset I want to have in my code. I'm just a student but I can already tell that this sort of thinking about solutions in a full and complete way is really why older games "feel" better. This goes beyond games too, I think this can be applied to a lot of different areas in and outside of software development.
25
Up next

High-performance Database Architecture - An Interview with Tyler Cloutier
Molly Rocket · 124K views

Casey Muratori on his "The Big OOPs" Talk
Software Unscripted Podcast · 54K views

The Thirty Million Line Problem
Molly Rocket · 323K views

Kent Beck: Software Engineering in the Age of AI | Prodacity 2026
Rise8 · 28K views

Why the Best Engineers Are Resisting AI the Hardest
Jeff Kolez · 22K views

The Only Unbreakable Law
Molly Rocket · 483K views

Why It Took Jonathan Blow 10 Years to Build His Most Ambitious Game Ever
Dan Allen Gaming and Jonathan Blow · 64K views

Casey Muratori – The Big OOPs: Anatomy of a Thirty-five-year Mistake – BSC 2025
Better Software Conference · 903K views

How the OS actually works
Ben Dicken · 305K views

What Is AI Doing to Math? [Wading Through AI - Episode 10]
Molly Rocket · 94K views

C wizard talks about programming as spellcraft, gatekeeping engineering, and software collapse
Based Academy and 2 more · 14K views

the true reason C++ always wins
LaurieWired · 968K views

Language Performance Comparisons Are Junk
The PrimeTime · 328K views

Robert Nystrom, Crafting Code | Rubber Duck Engineering | Episode #73
RubberDuckEng · 7.1K views

Handmade Hero Day 277 - The Sparse Entity System
Molly Rocket · 72K views

Why an ECS just ain't it - feat. Ryan Fleury
Randy LIVE · 27K views

Zig 2026: No-AI Policy, $670K Foundation, Left GitHub & Why Zig Isn’t 1.0 - Andrew Kelley Explains
JetBrains · 930K views

The Pit of Success - An Interview with Rico Mariani
Molly Rocket · 32K views

🚨🚨 Full Casey Muratori: Language Perf and Picking A Lang Stream 🚨🚨
The PrimeTime · 117K views

Maybe Programmers are Just Bad feat. Casey Muratori | 056
Backend Banter · 166K views

Design Discussion with Casey Muratori
Jonathan Blow · 103K views

Andrew Kelley: A Practical Guide to Applying Data Oriented Design (DoD)
ChimiChanga · 406K views

Intuitive Random Selection (with Marc LeBlanc)
Molly Rocket and Marc "MAHK" LeBlanc · 21K views

Inside the Mewgenics Codebase
Wookash Podcast · 18K views

Puzzle Game Water Rendering, discussion with Casey Muratori
Jonathan Blow · 105K views

How Fil-C Works
Wookash Podcast · 35K views