Corollary to my previous post:

The more you know about a type system, the more errors you recognize as type errors. Null references, misshapen objects, non-exhaustive conditional logic, subtly incompatible schemas… they’re all common, and they all can be prevented by a type system (as long as you’re holding it right.)

I see JS devs object to TS with arguments like “TS will prevent you from converting a number to a string by accident, but that basically never happens in practice”. And they’re right, but they’re also showing a serious lack of understanding of a type system’s functionality.

Talking about languages is hard, because criticizing something you don’t understand well can easily turn into flaunting one’s ignorance. On the other hand, learning a language well is a huge investment and engineers can’t afford to lear every language which they choose not to use. We constantly have to make technology choices from a place of partial ignorance.
social.treehouse.systems/@jnkr

0

If you have a fediverse account, you can quote this note from your own instance. Search https://social.treehouse.systems/users/jnkrtech/statuses/115685594353066661 on your instance and quote it. (Note that quoting is not supported in Mastodon.)