TypeScript never would’ve taken off if it had been strict from the beginning, it would’ve been just another forgotten gravestone next to Dart and CoffeeScript. I’m not saying those are bad languages, they’re not, but anything other than a very slow and gradual opt-in transition was just a non-starter. It was painful, but TypeScript played the long game.
Many of the strict checks did not even exist when TS was first created.
Some of these missing checks were why Flow was an attractive choice when weighing [Flow vs Typescript][1].
For example, it wasn't until Typescript 2.0 that we got null checks!
- https://www.typescriptlang.org/docs/handbook/release-notes/t...
[1]: https://djcordhose.github.io/flow-vs-typescript/2016_hhjs.ht...