I learned that static types, often derided for verbosity, can sometimes make your code shorter. Wrote a short blog post about it: https://evanhahn.com/when-static-types-make-your-code-shorter/
Nick
@EvanHahn maybe I'm suffering from Java Brain but I only encounter frustration when dealing with not-statically-typed languages. I'm a big fan of inferred types, like in Kotlin, which cuts down on verbosity but still offers the protections of static typing. And it also allows you to make implicit types explicit at your discretion, which is key.
Scott Wilson
@EvanHahn The more I develop, the more I fall in love with static typing. One thing I really like is creating types that have validation baked in at initialization. So if you pass around the type `UserName`, you know that the string inside is between 1-64 characters, and follows a certain pattern such as `firstname.lastname`.