In the last 6 month I have started to wonder.

First of all … I am convinced that using the concepts of functional programming will give you better results (more maintainable/changeable/extendable code). Not embracing functional programming will (sooner or later) put you (and the organisation you are leading) at a competitive disadvantage (compared to those who do).

In that context I have put some time into learning more Scala (the learning never stops :)) and have also looked at Kotlin.

But most importantly I worked my way through THE Haskell Book and through Category Theory for Programmers by Bartosz Milewski.

I like Haskell. A lot. I like it even more now after I discovered eta (Haskell on the JVM).

In that context I was looking for more resources to learn Haskell and stumbled over “Learn you a Haskell”. Great book with good excersises. Highly recommended.