the first and best I found was
http://learnyouahaskell.com/chapters.
The point is that I spent too much time (almost a year) learning, and I am not -productive- yet.
Productive in the sense of time writing and debugging, not in the sense of number of characters written.
Nothing in particular, it just was too much time.
My background is, in order of experience:
Java, C++, Delphi, Python, C#, Bash, Scala, Basic, Pascal and maybe others I forgot.
The first two I really know and could learn the best practices.
The rest I know only the minimal concepts but could do something important already.
Haskell has been harder than Basic, my first programming language.
When I was 13-year old, somebody told me: "each line is an order the computer follows in sequence".
That was enough intuitive to me.
After that I was taught: for, goto, if, print and input.
The last concepts and harder were the while and the subroutines.
Maybe I am get messy with the lots of alternatives to do a same thing in Haskell.
After months in Java I started the habit of always search for the best practices - and I found them.
Ok, it is long enough email. Maybe I have some kind of non-haskell-related addiction.