The Vanilla TS Experience | Josh Goldberg | Ep 10
Download MP3In this episode, we are joined by special guest Josh Goldberg to teach us about getting started with TypeScript from scratch. If you're new to TS, this is a great introduction! And if you've been using TS for a long time, you can explain to your friends where they should start to make their experience smoother. In the news, Nx gets support for project references and we curate some of the best TSGo content.
(00:36) Personal News
(00:36) Personal News
- IRL: Excalibur.js team will be at VGM Con (April 11-13, Minneapolis, MN)
- IRL: Erik is speaking at NDC Oslo (May 19-23)
(04:28) Introducing Josh Goldberg
- (07:10) - Josh's Work as a Full-time Open Sourcer
- (09:05) - Getting Started with TypeScript
- Start with the TypeScript Handbook (it's free!)
- Then, play with TypeScript in the playground
- (10:57) - Pain Points for New TypeScript Developers
- (12:41) - Benefits of TypeScript for Experienced Developers
- (14:43) - Getting Started with TypeScript
- (17:57) - CTA - create-typescript-app
- v2 rewrite spawned Bingo, dev tooling automation blocks
- (20:54) - Use Cases For Create TypeScript App
- (26:58) - CTA Plans for the Future
- (29:10) - Learning Resources for TypeScript
- Matt Pocock (Total TypeScript)
- Cory House (Getting Started with TypeScript)
- Basarat (TypeScript Deep Dive)
- Code challenge: Advent of TS
- Code challenge: Advent of Code
- Code challenge: Type Challenges
- (32:17) - And of course, Josh's Book: Learning TypeScript!
- Learn the why and theory
- Blog and articles
- Buy the book!
- (33:30) - Favorite Language Feature: Discriminated Unions
- (37:40) - Favorite Language Feature: Branded Types
- (38:58) - Creating TypeScript ESLint Rules
- (40:34) - Key Takeaways - Fun and Cool Stuff Happening!
- (42:29) - Future of TypeScript and Linting Innovations
(45:02) Where to Find Josh
- Website
- Follow on BlueSky @JoshuaKGoldberg
- Sponsor on GitHub
- Attend SquiggleConf 2025
(46:55) News for the Week of March 10, 2025
- TSGo, but we already covered that (TS-a-Go-Go, Ep 9)
- Deno 2.2.4 update adds enhancements to OpenTelemetry (OTel) support
- Nx 20.5 adds TS project reference support
- Cory House releases a new TypeScript course on Dometrain
- React Router 7.3 minor release
- Experimental support for client contexts
- Experimental support for route middleware
- (49:25) - Community Updates
- Dr. Axel's Corner - Dive deeper with this TSGO Explainer
- Sxzz (Kevin from Vite) created a TSGo playground with WASM
- TSGo community content
(54:55) Cool Stuff
- Learn Zod to Trust your Data and your Types (h/t cassidoo)
- 50 Years of Travel Tips by Kevin Kelly
- "Your enjoyment of a trip will be inversely related to the weight of your luggage"
- "Crash a wedding. You are not a nuisance; you are the celebrity guest!"
- TypeScript ESlint: Getting Started Docs
- Everhood Game (Steam | Add to your Backlog)
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 and Guests

Host
Erik Onarheim
Hi, my name is Erik 👋 I'm a software developer in Minneapolis ⛄I created a game engine for the web called Excalibur 🗡

Guest
Josh Goldberg 💖
Open source developer👨💻 Bingo, create-typescript-app, ESLint, Mocha, typescript-eslint, etc.👪 Boston TS Club & SquiggleConf✍ Learning TypeScript (O'Reilly)🌟 Microsoft MVPhttps://joshuakgoldberg.com
