The long-tail of type safety
summary
TypeScript is not sound and still allows runtime exceptions; the talk shows concrete fixes: enable strict and noUncheckedIndexedAccess in tsconfig, add ESLint bans on any / non‑null assertions, and replace built‑in lax defs (JSON.parse, Array.isArray) or use TS Reset to make them unknown by default. For I/O boundaries it demonstrates schema validation with Zod, generating types for fetch endpoints or using trpc / Prisma for end‑to‑end types, and forces parse/validate before using external data.
AI-written summary · about
chapters (9)
- 0:00The dream of type safety
- 1:00Pragmatism versus soundness
- 3:53Addressing TypeScript gaps
- 5:15Strict configuration
- 7:49Using linting for safety
- 9:22Improving built-in types
- 11:17Validating I/O boundaries
- 14:19End-to-end type safety
- 17:47Routing and final thoughts
related talks
21mThe long-tail of type safety
21mBeyond Type Checking Building Bulletproof TypseScript Applications
19mYou don't know TS: often unknown parts of TypeScript
22mThink you know TypeScript? Think again.
24mTypeScript for JavaScripties
01h 01mDeconstructing TypeScript’s Type System
01h 00mNew Features in TypeScript 2 and beyond
30mRust-Inspired Typescript
