Newbie to Haskell

Hello everyone.
I’m have been learning programming over a course of two years for now, and while I enjoy languages like C, C++ and Java (last of which is a language I use at work), but recently I came to want something novel.
Haskell was in my sight for quite a while, and one of the things I heard about it is it’s great community, so now I’m here in a search of guidance.

I am currently covering language basics with this course on YouTube:
https://www.youtube.com/playlist?list=PLe7Ei6viL6jGp1Rfu0dil1JH1SHk9bgDV
And this course I found on Haskell wiki:
http://learnyouahaskell.com

I also am trying to apply gained knowledge at least to some degree by solving 99 Haskell Problems on Haskell wiki. Though right now I hit a brick wall of not having proper math education (well I got bachelors degree and had a math class there, but it was awfully shallow and mostly forgotten by now).

Basically, you can assume I have near to zero real practical knowledge in computer science and math. Yes, that is not completely true, but the impostor syndrome is extremely strong in me, so I would appreciate your patience and understanding. I also have almost no completed personal projects, at least none worth mentioning. There are some 200-300 code line programs in C and Python, but I wrote them only for calculating some simple stuff for games and to help my friend with his coursework.

So I would like to ask about these sources:

  • Books, preferably in order of reading, on Haskell, maybe math and general computer science
  • Problem sets on Haskell, preferably a lot of problems on each topic
  • Project ideas. Simple, but useful. Any guidelines and sources on project management, development, style etc. would be greatly appreciated
  • Community links and free online learning resources

I never in my life had so much fun doing anything really as writing Haskell code. So I would like it to stick, and grow as both a person and as a developer with that language.

Thank you very much in advance!
Sorry for my probably somewhat bad English. I’m not a native speaker.

Victor M. Snow

2 Likes

There’s a big list of resources here:
https://www.haskell.org/documentation/

For problems on many introductory topics, I’d recommend @byorgey’s CIS 194 which includes 12 homework sets:
https://www.cis.upenn.edu/~cis1940/spring13/lectures.html

For project ideas I’d recommend following along with @gilmi’s Learn Haskell by building a blog generator

Or you could write a command-line application with brick (unfortunately does not support Windows yet).

For project management, I’d recommend using cabal and reading its documentation:
https://cabal.readthedocs.io/en/stable/getting-started.html

5 Likes

Thanks a lot!

I also wanted to ask you about some follow-through project, but as soon as I started typing, you edited your message so that it already satisfies my question! :smile:

1 Like

Actually, I think I’d do the blog generator project first and then do a more free-form project with brick.

Yeah, I would go in that order. Because I need to have at least a basic understanding of how to do anything actually working.

Welcome Victor! I hope you enjoy your Haskell journey.

1 Like