When I first started writing TypeScript, it felt strange and bureaucratic, like I was being asked to constantly justify things that were already obvious.
Then, after enough time, you realise TypeScript isn’t being pedantic. It’s compensating for the fact that JavaScript itself is wildly permissive.
JavaScript’s type system has the energy of a witness being cross-examined.