Hacker News new | ask | show | jobs
by eblume 4072 days ago
I just restarted my investigation of Haskell yesterday. This is very sad news. Haskell is a beautiful language, and while I still struggle to write even basic programs in it I can tell that every time I solve an issue I'm having I am becoming a smarter programmer.

He will be missed!

4 comments

I teach Haskell and I'm working on a book http://haskellbook.com/ with my coauthor. We've been testing with reviewers and it's been going pretty well. We've even been testing with my coauthor's 10 year old https://twitter.com/argumatronic/status/593845481140133888 :)

My guide for learning Haskell is here: https://github.com/bitemyapp/learnhaskell

You can get help in the IRC channel if you'd like as well. I don't recommend using LearnYouAHaskell.

I feel a bit bad as Hudak's books were the only ones I hadn't checked out before starting on my book. Rectifying that soon.

Can you explain why you don't recommend LearnYouAHaskell? I'm genuinely curious.
I am following that guide to get me started. Taking the recommended courses, I finished the cis194 Spring 2013 course and I am getting through the NICTA course, with help from #Haskell on freenode IRC.

Based on my experience the recommendations are good, but when working on material like this on your own it is a slog because both of these courses are designed to be taught live. So beware. However they are probably the best courses available online. It seems someone (maybe me someday!) needs to do an equivalent of "RailsCasts" for Haskell to make this more accessible.

The NICTA course contains hard exercises building various functors, including transformers. It's a mind bender and oddly I had code that worked because the types matched up but I had no intuition as to why it actually worked! But it does raise your game to a new level.

>but when working on material like this on your own it is a slog because both of these courses are designed to be taught live. So beware. However they are probably the best courses available online.

Definitely, this is why we're working on a book. We acknowledge cis194 and NICTA course are difficult and designed to be done as part of a class. That's also why we suggest Thompson's book as a fallback.

There isn't a book designed for an independent reader that we're happy with at present.

>The NICTA course contains hard exercises building various functors, including transformers

These things must be covered if you want to use Haskell in anger. One thing I would change in NICTA course if given the option is to make the transformers tutorial have a smoother ramp. State/StateT could be built up to via Writer/Reader and the transformer versions thereof.

That the NICTA course confronts these (Functor, Applicative, Monad, Monad transformers) and is rigorous in covering the basics along with those topics is what makes it so valuable. Most other materials either don't cover them or don't provide proper exercises.

"Show & Tell" is not good enough for getting people comfortable with these tools and sadly that's the mistake a lot of resources for Haskell make. You have to make exercises that make learners manipulate and see the structure of how these things work.

Good answers. To be clear I am not complaining. Actually I love it. I love struggling through it and the feeling of triumph when solving those problems.

I think the difficulty is a rite of passage to become a functional programmer, however smoother ramps would help, and I am sure your book will be a great help and is much needed.

I get asked this and similar a lot, so I have a post outlining the problems we've had with various resources including LYAH: http://bitemyapp.com/posts/2014-12-31-functional-education.h...
Any idea when is it going to be finished?
Late Fall, early Winter. It's about 40% done right now, 1/3 manuscript is just about ready for early access.

We'll have it available for early access by the time LambdaConf happens if nothing goes badly.

Ah, now I wonder if I should abandon my Haskell journey before this gets finished.

It's probably just my laziness speaking, looking for excuse.

That's fine. It's always a mistake to be eager and dynamic when learning Haskell.
I started learning it on Tuesday, via learnyouahaskell.com. Half of what makes Haskell impenetrable to a non-Haskellite is the syntax, IMO; now that I'm starting to grok that, it really is quite wonderful.

Very sad news indeed.

The syntax takes some getting used to but it's useful to point out that the core language is pretty small.

Here are some links which might help:

http://www.haskellforall.com/2014/10/how-to-desugar-haskell-...

https://github.com/kqr/gists/blob/master/articles/simple-syn...

I dunno... I found actually solving problems in a functional way much harder than the syntax.
I've done enough functional-esque coding in ruby/python/js/java8 that I can generally figure out a functional solution to lots of problems. I have not actually attempted to build any real software with Haskell yet, however; I'm mostly at the toy-program stage.
Come hang out in #haskell-beginners on freenode :)
Unfortunate timing for myself, as well. This last week I've been meaning to get back to Haskell.

Sad news.