Haskell without the theory — beginner-friendly, real-world Haskell tutorials
As we scale-out our Haskell team at Vacation Labs, we’re faced with the challenge of on-boarding beginners and enabling them to contribute to our Haskell code-base as quickly as possible.
To “scratch this itch”, I’ve embarked upon a very, very ambitious journey of teaching “Haskell without the theory.” A highly opinionated set of tutorials, videos, problems, and reference reading material to get beginners up-to-speed in a short span of time.
I’ll be sharing new chapters on this Medium blog as I write them, and hopefully after they’ve been vetted as “being effective” by our resident guinea-pigs, ahem, interns.
Here are some quotes from the first three chapters to give you a sense of the overall tone and direction of the material:
…when I started learning Haskell, about 18 months ago, I struggled a lot even after referring to some of the best texts out there…
.. they didn’t talk about the recommended way of doing certain common tasks in Haskell…
…steering beginners away from pitfalls, gotchas, and “researchy” ideas…
…suddenly going on a tangent of category theory or lambda calculus….
…lack of discourse on the design of Haskell programs…
…Use Linux or Mac. Do not waste time with Haskell on Windows…
…important difference between Haskell lists and arrays in dynamic languages, like Ruby, Javascript, and Python, is that, in Haskell, all elements in a list must be of the same type…
…We will spend quite some time solving problems without using
for
loops and without changing the value of variables. This is going to be in stark contrast to learning other languages…
And finally, here’s what I have till now:
Feedback is welcome. In fact, we have integrated Hypothes.is to enable annotations and comments on the text. You can also email me at saurabh@vacationlabs.com or tweet to me.