Type War (what is good for?)
Love it or hate it, TypeScript is here to stay for the foreseeable future. But, what happens when widely adopted packages go completely Type free or remove TypeScript in favor of JS with type annotations? Join us to unpack these recent events with Rich Harris, creator of Svelte, as he walks us through the nuanced decision his team made for the Svelte project, and ofc, lots of laughs along the way.
Love it or hate it, TypeScript is here to stay for the foreseeable future. But, what happens when widely adopted packages go completely Type free or remove TypeScript in favor of JS with type annotations? Join us to unpack these recent events with Rich Harris, creator of Svelte, as he walks us through the nuanced decision his team made for the Svelte project, and ofc, lots of laughs along the way.
Changelog++ members get a bonus 7 minutes at the end of this episode and zero ads. Join today!
Sponsors:
- Convex – Convex is a better type of backend — the full-stack TypeScript development platform that lets you replace your database, server functions, and glue code. Get started at convex.dev
- Caisy – Caisy is the headless CMS that gives developers endless possibilities. Learn more at caisy.io
- Fastly – Our bandwidth partner. Fastly powers fast, secure, and scalable digital experiences. Move beyond your content delivery network to their powerful edge cloud platform. Learn more at fastly.com
- Fly.io – The home of Changelog.com — Deploy your apps and databases close to your users. In minutes you can run your Ruby, Go, Node, Deno, Python, or Elixir app (and databases!) all over the world. No ops required. Learn more at fly.io/changelog and check out the speedrun in their docs.
Featuring:
- Rich Harris – Twitter, GitHub
- Amal Hussein – Twitter, GitHub
- Jerod Santo – Mastodon, Twitter, GitHub, LinkedIn
Show Notes:
- News article from May 2023 when Svelte switched from TS to JSDoc type annotations
- DHH’s blog post “Open Source Hooliganism and the TypeScript Meltdown”
- DHH’s tweet announcing Turbo’s removal of TS
- Rich’s quote tweet of DHH Turbo announcement
- JSDoc docs
- Official TS docs highlighting support for JS Doc type annotations
- ECMA proposal for Type Annotations
Alternate Episode Titles
- Type me a river
- To type or not to type
- Someone is typing in the community…
- Different types (or not) for different gripes
- The script schism
- Web Dev D Day
- Going off (Type)Script
- Losing the (Type)Script
- Not my type
- Can’t type this
- You fought in the Type Wars?
Something missing or broken? PRs welcome!
Timestamps:
(00:00) - It's party time, y'all
(00:39) - Sponsor: Convex
(04:10) - EMERGENCY POD
(04:56) - Welcoming Rich Harris
(06:32) - Svelte's TypeScript decision
(12:18) - Team "Idiomatic JavaScript"
(18:24) - "TypeScript good, JavaScript bad"
(21:36) - Nick's dramatic foil
(23:15) - It's all situational
(23:39) - What exactly Svelte ships
(24:41) - Why the hate on JavaScript?
(32:50) - Sponsor: Caisy
(36:00) - Getting anthropological
(41:55) - Amal's psychologist hat
(45:10) - Twitter is the molotov cocktail app
(48:28) - Jay-Z not realizing he's Jay-Z
(49:37) - Rich Harris reads mean tweets
(52:45) - Some Turbo 8 nuance
(54:37) - DHH's blog post
(59:48) - Listener questions (join Slack!)
(1:00:16) - Kyle Beard says...
(1:01:46) - Daniel Buckmaster says...
(1:03:29) - Schalk Neethling says...
(1:06:06) - Rich's magic wish
(1:07:43) - Closing time
(1:08:35) - Next up on the pod (Join ++!)