Ryan Youngs
← All posts

TypeScript Strict Mode Is Worth the Pain


title: "TypeScript Strict Mode Is Worth the Pain" date: "2026-05-10" description: "Enabling TypeScript strict mode adds friction upfront but pays dividends in fewer runtime surprises and a codebase that documents itself."

Strict mode in TypeScript is a single tsconfig.json flag that enables a collection of checks: strictNullChecks, noImplicitAny, strictFunctionTypes, and several others. On an existing codebase the errors can be overwhelming. On a new project, it is simply the right default.

The biggest benefit is not catching bugs — it is the design pressure it puts on your code. When null is not automatically allowed everywhere, you are forced to think about what can actually be absent. That thinking produces better interfaces, cleaner function signatures, and code that communicates intent rather than hiding assumptions.

If you are starting a project today, set "strict": true in tsconfig.json and do not look back. The few hours of friction at the start will save days of debugging later.