Sunday, January 21, 2018

Learn You a Haskell for Great Good!

When I started out reading about Scala and functional programming back in 2014, the Java Posse had directed me to a Haskel book: Learn You a Haskell for Great Good!   The idea was the the book described functional programming practices quite well and that reading it before learning Scala might help.

I had made it up to the chapters where it got interesting and ended up moving on to something else, as using a functional language at work at that time did not seem practical.

Now that I have been focusing on functional coding again, I am considering going back to read the book again.  This time with a bit more perspective from the Scala side.

I am currently reading the Typelevel books on Cats and Shapeless and there are times that I wish I had a more fundamental understanding of functional building blocks.  If there is one thing I have learned while trying to come up to speed with Category theory, Monads, Monoids, and Functors, etc... it's that reading more than one source at a time seems to help cover the points that each author seems to assume or just leaves out.

Maybe Anki will help me to retain the information better this time.  It's helping already with the other books I am reading.  By breaking down large complicated topics into small chunks that I can review on a daily basis, Anki is helping me retain what I read and thus helping with digesting the world of functional programming techniques.

I would suggest anyone trying to learn Scala take a look at Learn You a Haskell for Great Good! It's less than 200 pages.  I am thinking that the time spent reviewing it again will save me time learning Cats.

No comments: