Welcome to my PinkLetter. A short, weekly, technology-agnostic, and pink newsletter where we cultivate timeless skills about web development.
I’m tired of Ruby.
Don’t get me wrong, I’m grateful to the language because it rescued me from C and Java. Plus, it’s a joy to work with.
However, I’m tired of the additional work you need to put in a dynamic language.
I’m tired of nils. I’m tired of defensive testing. I’m tired of wasting brain cycles to keep the types in my head. Yes, no explicit types doesn’t equal no types. It means you have to keep it all in your head.
Side projects in PureScript, Haskell, and Elm taught me Type Driven Design. And that is a super power you don’t have without a legit type system.
So, recently, a question has been lurking in my head: is TypeScript good enough?
Jokes aside, I’m a product-minded engineer, so I know it doesn’t really matter what tech powers the product. But also it matters when you get paged during the night because
NoMethodError (undefined method 'call' for nil:NilClass).
In this episode, Adam talks to Gary Bernhardt about building Execute Program, why he chose to build it as a full-stack TypeScript application, and the implications using TypeScript has on what you need to test.
(Riccardo: Worth rewatching from time to time.)
People like functional programming for different reasons. Some like it for the conceptual elegance, or the mathematical properties. Richard? He likes to build things. He likes it when the software he builds works well and is easy to maintain.