… from work told me he knows a couple that are both devs, and they work remote and travel the world. They sit outside by the beach while they work, and in the evenings they explore the different cities they live in. Doesn’t that sound nice?
Opaque type aliases are really useful for maintaining invariants in your code. Whenever you find yourself wanting to express “things of type T where X is true,” you might want to consider using an opaque type alias.
I was enjoying writing Haskell till the time I was dealing with JSONs and talking to the Telegram API. But as soon as I wanted to deal with the database, write HTML templates, or process forms, I was hitting a lot of friction.