Pular para o conteúdo

Casey Muratori: Surprises In Computer History And Where Bad Code Comes From

14 de setembro de 2026 · 1 h 58 min

Notas do episódio

Casey Muratori is a video game developer and programming creator also known for his talks about the history of software and computing. We talked about surprising parts he found while digging through computer history, where bad code comes from, and his career story.


• My ergonomic keyboard project I mentioned, you can follow along here: https://read.compose.llc/

• The Kickstarter page for it: https://www.kickstarter.com/projects/ryanlpeterman/compose-simple-ergonomics-beautifully-done


Podcast links:


• YouTube: https://youtu.be/jHLbL1Eg4gM

• Apple: https://podcasts.apple.com/us/podcast/the-peterman-pod/id1777363835

• Transcript: https://www.developing.dev/p/casey-muratori-surprises-in-computer


Thank you to this episode's sponsors for supporting my work:


• Jira by Atlassian: Get more work done with your favorite agents and models all in one place, check them out at https://jira.dev/

• WorkOS: makes your app Enterprise Ready with easy to use APIs to add SSO, SCIM, RBAC, and more in just a few lines of code, check them out at https://workos.com/


Timestamps:


(00:00) Intro

(01:08) Digging into computer science history

(04:08) What shocked him

(16:23) Dijkstra was depressed

(26:17) The personal side of goto considered harmful

(35:09) The anatomy of a 35 year mistake

(50:12) Clean code horrible performance

(58:33) How to write high performance code

(01:01:18) Where bad code comes from

(01:06:37) Why design docs before code is a bad idea

(01:09:20) The only unbreakable law in software engineering

(01:15:57) How he got into programming

(01:21:16) Why he didnt work in big tech

(01:30:44) Should you work at a startup early on

(01:34:52) What video game engineering is like

(01:39:57) Why preventing recursion is reasonable

(01:43:24) Is vibe coding bad for the industry

(01:50:17) Technical reading recommendation

(01:54:27) Advice for his younger self

(01:56:54) Outro


Where to find Casey:


• Website: https://caseymuratori.com/

• Newsletter: https://www.computerenhance.com/

• X/Twitter: https://x.com/cmuratori

• GitHub: https://github.com/cmuratori

• YouTube: https://www.youtube.com/@MollyRocket

• Bluesky: https://bsky.app/profile/cmuratori.bsky.social

• Twitch: https://www.twitch.tv/molly_rocket

• Handmade Network: https://handmade.network/m/cmuratori

• Wikipedia: https://en.wikipedia.org/wiki/Casey_Muratori


Where to find Ryan:


• Newsletter: https://www.developing.dev/

• X/Twitter: https://x.com/ryanlpeterman

• LinkedIn: https://www.linkedin.com/in/ryanlpeterman/

• Threads: https://www.threads.com/@ryanlpeterman

• Instagram: https://www.instagram.com/ryanlpeterman

• TikTok: https://www.tiktok.com/@ryanlpeterman


Referenced in this episode:


• The Root of the Root of All Evil: https://computerenhance.com/theroot

• The Big OOPS: Anatomy of a 35-Year Mistake: https://www.youtube.com/watch?v=wo84LFzx5nI

• Edsger Dijkstra's "Notes on Structured Programming": https://www.cs.utexas.edu/~EWD/transcriptions/EWD02xx/EWD249/EWD249.html

• Donald Knuth's "Structured Programming with go to Statements": https://doi.org/10.1145/356635.356640

• Edsger Dijkstra's "Go To Statement Considered Harmful": https://www.cs.utexas.edu/~EWD/transcriptions/EWD02xx/EWD215.html

• Ivan Sutherland's Sketchpad thesis: https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-574.html

• Clean Code, Horrible Performance: https://www.computerenhance.com/p/clean-code-horrible-performance

• Where Does Bad Code Come From?: https://www.youtube.com/watch?v=7YpFGkG-u1w

• The Only Unbreakable Law: https://www.youtube.com/watch?v=5IUj1EZwpJY

• Dijkstra letter's reference: https://medium.com/@acidflask/this-guys-arrogance-takes-your-breath-away-5b903624ca5f#.1rdj838x6

Todos os episódios de The Peterman Pod

Configurações

Exibição

Idioma

Define quais estações você vê primeiro na página inicial.

Histórico

As rádios e episódios ouvidos recentemente e suas últimas buscas ficam só neste navegador.

Avisos

Um aviso rápido quando um podcast que você segue tem um episódio novo. Desative podcasts individuais pelo sino na página deles.

Conta

Salve favoritos – no app e no site.

Atalhos de teclado

/
Abrir busca
Espaço
Reproduzir ou pausar
← →
No player: voltar 15 s, avançar 30 s (episódios) · na fileira: próximo bloco
↑ ↓
Na fileira: alvo dentro do bloco
Home / End
Na fileira: primeiro ou último bloco
Esc
Fechar janela ou menu
?
Esta visão geral
Tocando agora

Ir para a estação

A seguir

    Adicione episódios com “A seguir” – eles tocam depois do episódio atual.