Running Doom in TypeScript with Dimitri Mitropoulos

Running Doom in TypeScript with Dimitri Mitropoulos

Author: softwareengineeringdaily.com November 25, 2025 Duration: 1:01:25
Doom has seemingly been ported to every electronic device imaginable, including picture frames, lamps, and coffee machines. The meme of “it runs Doom” has become so widespread that it spawned the r/itrunsdoom sub-Reddit. Recently, Doom made headlines again for being ported to TypeScript. The project involved representing Doom entirely in TypeScript, three and a half trillion lines of types, 90 GB of RAM to run, and a full year to complete. Dimitri Mitropoulos is the engineer who carried out this heroic feat. He's also a developer at Vercel, the founder of Michigan Typescript, and a co-founder of SquiggleConf. Dimitri joins the podcast with Josh Goldberg to talk about what it took to pull off one of the most mind-bending TypeScript projects to date. Josh Goldberg is an independent full time open source developer in the TypeScript ecosystem. He works on projects that help developers write better TypeScript more easily, most notably on typescript-eslint: the tooling that enables ESLint and Prettier to run on TypeScript code. Josh regularly contributes to open source projects in the ecosystem such as ESLint and TypeScript. Josh is a Microsoft MVP for developer technologies and the author of the acclaimed Learning TypeScript (O’Reilly), a cherished resource for any developer seeking to learn TypeScript without any prior experience outside of JavaScript. Josh regularly presents talks and workshops at bootcamps, conferences, and meetups to share knowledge on TypeScript, static analysis, open source, and general frontend and web development. Please click here to see the transcript of this episode. Sponsorship inquiries: sponsor@softwareengineeringdaily.com

For anyone curious about how the code running our world actually gets built, Software Engineering Daily offers a clear and consistent look behind the curtain. This isn't about hype cycles or surface-level news; it's a deep, technical conversation with the engineers, architects, and thinkers who are shaping our digital infrastructure. Each episode focuses on a specific technology, practice, or problem, breaking down complex systems into understandable parts. You'll hear detailed discussions on everything from database architectures and programming language design to the organizational challenges of scaling teams and the real-world trade-offs made in production systems. Hosted by softwareengineeringdaily.com, the podcast serves as a reliable source for developers who want to stay informed and inspired, translating the rapid pace of technological change into substantive, lasting knowledge. It’s for professionals who believe that understanding the "how" and "why" is just as important as knowing the "what." By dedicating time to thorough exploration, this podcast provides context that shorter formats simply cannot, making it an essential resource for anyone building the future, one line of code at a time. Tune in to hear unfiltered insights from the people on the front lines, discussing the tools and decisions that define modern software engineering.
Author: Language: en-us Episodes: 100

Software Engineering Daily
Podcast Episodes
Angular with Jessica Janiuk [not-audio_url] [/not-audio_url]

Duration: 52:37
Modern web development faces several challenges, particularly when building scalable, maintainable, and high-performance applications. As applications grow, managing complex user interfaces, and ensuring efficient data h…
Context-Aware SQL and Metadata with Shinji Kim [not-audio_url] [/not-audio_url]

Duration: 41:37
A common challenge in data-rich organizations is that critical context about the data is often hard to capture and even harder to keep up to date. As more people across the organization use data and data models get more…
Modern Data Visualization with Robert Kosara [not-audio_url] [/not-audio_url]

Duration: 50:48
Data visualization is increasingly important as organizations prioritize data-driven decision-making. Tools that transform complex datasets into intuitive, interpretable visualizations are arguably just as critical as th…
A Conversation with Amazon CTO Werner Vogels [not-audio_url] [/not-audio_url]

Duration: 49:32
Werner Vogels is the Chief Technology Officer at Amazon, where he has played a pivotal role in shaping the company’s technology vision for over two decades. Before joining Amazon in 2004, Werner was a research scientist…
Redis and AI Agent Memory with Andrew Brookins [not-audio_url] [/not-audio_url]

Duration: 48:35
A key challenge with designing AI agents is that large language models are stateless and have limited context windows. This requires careful engineering to maintain continuity and reliability across sequential LLM intera…
Complex Workload Deployment with Will Stewart [not-audio_url] [/not-audio_url]

Duration: 40:33
Deploying and managing cloud workloads is a complex task that requires developers to handle infrastructure, scaling, CI/CD pipelines, and database hosting. Configuring and maintaining Kubernetes, ensuring smooth deployme…
Carbon and Modernizing C++ with Chandler Carruth [not-audio_url] [/not-audio_url]

Duration: 1:03:37
Carbon is a programming language developed by Google as a successor to C++, and it aims to provide modern safety features while maintaining high performance. It's designed to offer seamless interoperability with C++ whil…