Haskell for Dummies

November 23, 2016

The joke being: haha, Haskell is only for super-geniuses like
Einstein. There's lots to complain about in this chart, but I'm going
to pick on the lower-right corner. Specifically:

Haskellers don't use Haskell because we think we're Einstein. We use
Haskell because we know we aren't.

When I speak to Haskellers, the general consensus is: "I'm not smart
enough to write robust code in a language like Python." We're not
using Haskell because we're brilliant; we're using Haskell because we
know we need a language that will protect us from ourselves.

That said, I should acknowledge that Haskell does have a steeper
learning curve for most programmers. But this is mostly to do with
unfamiliarity: Haskell is significantly different from languages like
Python, Ruby, and Java, whereas by contrast those languages are all
relatively similar to each
other. Greateducationalmaterial helps with
this.

You should set your expectations appropriately: it will take you
longer to learn Haskell, but it's worth it. Personally, I use Haskell
because:

It gives me the highest degree of confidence that I'll write my
program correctly, due to its strong, static typing

It has great support for modern programming techniques, like
functional programming and green-thread-based concurrency

I'm certainly leaving off a lot of points here, my goal isn't to be
comprehensive. Instead, I'd like to dispel with this notion of the
Haskeller super-genius. We Haskellers don't believe it. We know why
we're using a language like Haskell: to protect us from ourselves.