Artwork

תוכן מסופק על ידי Erik Onarheim and Kamran Ayub. כל תוכן הפודקאסטים כולל פרקים, גרפיקה ותיאורי פודקאסטים מועלים ומסופקים ישירות על ידי Erik Onarheim and Kamran Ayub או שותף פלטפורמת הפודקאסט שלהם. אם אתה מאמין שמישהו משתמש ביצירה שלך המוגנת בזכויות יוצרים ללא רשותך, אתה יכול לעקוב אחר התהליך המתואר כאן https://he.player.fm/legal.
Player FM - אפליקציית פודקאסט
התחל במצב לא מקוון עם האפליקציה Player FM !

DOOM.ts | Dimitri Mitropoulos | Ep 13

1:24:58
 
שתפו
 

Manage episode 477356992 series 3642378
תוכן מסופק על ידי Erik Onarheim and Kamran Ayub. כל תוכן הפודקאסטים כולל פרקים, גרפיקה ותיאורי פודקאסטים מועלים ומסופקים ישירות על ידי Erik Onarheim and Kamran Ayub או שותף פלטפורמת הפודקאסט שלהם. אם אתה מאמין שמישהו משתמש ביצירה שלך המוגנת בזכויות יוצרים ללא רשותך, אתה יכול לעקוב אחר התהליך המתואר כאן https://he.player.fm/legal.

This week on the pod, we talk to Dimitri Mitropoulos about building DOOM in the TypeScript type system. We walk through all the nitty gritty and explore this truly amazing engineering feat! We touch on things that Dimitri learned and discovered along the way, and how you might be surprised what you can accomplish by trying! In the news, Zod 4 Beta drops with awesome new features.

Chapters

  • (00:00) - Intro
  • (00:37) - SquiggleConf 2025
  • (01:00) - Personal News
  • (04:28) - Dimitri's Background and Michigan TypeScript
  • (08:35) - JSON Parser in TypeScript Types
  • (09:08) - Where do you start with DOOM in Types?
  • (10:01) - "DOOM" Complete
  • (13:57) - How do you run DOOM in TS?
  • (17:36) - Debugging an Emulator in TS Types
  • (19:22) - How does DOOM work?
  • (20:45) - Using Web Assembly
  • (22:49) - Understanding WebAssembly and TypeScript Integration
  • (24:59) - The Concept of Abstraction in Programming
  • (27:02) - Challenges in Implementing WebAssembly from the Spec
  • (28:59) - Ambiguities in Specifications and Their Impact
  • (30:40) - Debugging Techniques and Error Handling
  • (32:24) - Innovative Use of Overflow in Game Development
  • (35:40) - Insights Gained from TypeScript During the Project
  • (38:24) - The Complexity of TypeScript Types
  • (43:08) - Time Travel Debugging and Memory Management
  • (45:00) - The Most Challenging Aspects of the Project
  • (48:32) - Reactions to DOOM
  • (53:10) - The Dawn of TypeScript Go
  • (01:02:14) - Lessons Learned and Future Directions
  • (01:08:37) - Dimitri Says Goodbye!
  • (01:09:50) - News for the Week of April 7th
  • (01:14:42) - Community Posts
  • (01:17:39) - Secret of the Handbook
  • (01:19:07) - Cool Stuff from Erik
  • (01:19:51) - Debugging and Performance Optimization Techniques

Dimitri's Links

News Links

Excalibur Games

Sponsored by Excalibur.js
Excalibur.js is the friendly TypeScript game engine for making 2D web games. Use your TypeScript or JavaScript skills to make games! Excalibur comes out-of-the-box with everything you need to make web games, like physics, sprites, animations, sound effects, input, and particles. Design your assets with tools like Aseprite and Tiled, then load them natively using first-party plugins.

Music
Seahorse Dreams by Kubbi (Spotify)

Creators & Guests

  continue reading

28 פרקים

Artwork
iconשתפו
 
Manage episode 477356992 series 3642378
תוכן מסופק על ידי Erik Onarheim and Kamran Ayub. כל תוכן הפודקאסטים כולל פרקים, גרפיקה ותיאורי פודקאסטים מועלים ומסופקים ישירות על ידי Erik Onarheim and Kamran Ayub או שותף פלטפורמת הפודקאסט שלהם. אם אתה מאמין שמישהו משתמש ביצירה שלך המוגנת בזכויות יוצרים ללא רשותך, אתה יכול לעקוב אחר התהליך המתואר כאן https://he.player.fm/legal.

This week on the pod, we talk to Dimitri Mitropoulos about building DOOM in the TypeScript type system. We walk through all the nitty gritty and explore this truly amazing engineering feat! We touch on things that Dimitri learned and discovered along the way, and how you might be surprised what you can accomplish by trying! In the news, Zod 4 Beta drops with awesome new features.

Chapters

  • (00:00) - Intro
  • (00:37) - SquiggleConf 2025
  • (01:00) - Personal News
  • (04:28) - Dimitri's Background and Michigan TypeScript
  • (08:35) - JSON Parser in TypeScript Types
  • (09:08) - Where do you start with DOOM in Types?
  • (10:01) - "DOOM" Complete
  • (13:57) - How do you run DOOM in TS?
  • (17:36) - Debugging an Emulator in TS Types
  • (19:22) - How does DOOM work?
  • (20:45) - Using Web Assembly
  • (22:49) - Understanding WebAssembly and TypeScript Integration
  • (24:59) - The Concept of Abstraction in Programming
  • (27:02) - Challenges in Implementing WebAssembly from the Spec
  • (28:59) - Ambiguities in Specifications and Their Impact
  • (30:40) - Debugging Techniques and Error Handling
  • (32:24) - Innovative Use of Overflow in Game Development
  • (35:40) - Insights Gained from TypeScript During the Project
  • (38:24) - The Complexity of TypeScript Types
  • (43:08) - Time Travel Debugging and Memory Management
  • (45:00) - The Most Challenging Aspects of the Project
  • (48:32) - Reactions to DOOM
  • (53:10) - The Dawn of TypeScript Go
  • (01:02:14) - Lessons Learned and Future Directions
  • (01:08:37) - Dimitri Says Goodbye!
  • (01:09:50) - News for the Week of April 7th
  • (01:14:42) - Community Posts
  • (01:17:39) - Secret of the Handbook
  • (01:19:07) - Cool Stuff from Erik
  • (01:19:51) - Debugging and Performance Optimization Techniques

Dimitri's Links

News Links

Excalibur Games

Sponsored by Excalibur.js
Excalibur.js is the friendly TypeScript game engine for making 2D web games. Use your TypeScript or JavaScript skills to make games! Excalibur comes out-of-the-box with everything you need to make web games, like physics, sprites, animations, sound effects, input, and particles. Design your assets with tools like Aseprite and Tiled, then load them natively using first-party plugins.

Music
Seahorse Dreams by Kubbi (Spotify)

Creators & Guests

  continue reading

28 פרקים

כל הפרקים

×
 
Loading …

ברוכים הבאים אל Player FM!

Player FM סורק את האינטרנט עבור פודקאסטים באיכות גבוהה בשבילכם כדי שתהנו מהם כרגע. זה יישום הפודקאסט הטוב ביותר והוא עובד על אנדרואיד, iPhone ואינטרנט. הירשמו לסנכרון מנויים במכשירים שונים.

 

מדריך עזר מהיר

האזן לתוכנית הזו בזמן שאתה חוקר
הפעלה