The way TypeScript adds incidental complexity to using libraries undermines the two most important values of using TypeScript and JavaScript. It makes it harder to use a non-typed library which adds friction to using the wealth of libraries available in the JavaScript ecosystem. It also makes the type system less valuable when you need to hack around poorly typed libraries or incorrect type definitions by casting to the any
type.
Links to this note
-
The Npm Package Ecosystem Is a Chevette
My dad used to tell me about an old car he used to have—the Chevrolet Chevette. It was an inexpensive compact car with rear-wheel drive from the late 70s. As he described it, “all the thrills of high-speed driving at low speeds.”
-
Abstractions Save Time Working, but Not Learning
Software abstractions save us time doing work by not having to write programs from lower level building blocks. Programming languages like Python provide an easier way to write general purpose software than say, assembly language.