# Learn Haskell in three weeks experiment

**URL:** https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653
**Category:** Smart Contracts
**Tags:** plutus
**Created:** [23 April 2021 22:30 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653 "2021-04-23T22:30:17Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [23 April 2021 22:30 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/1 "2021-04-23T22:30:17Z")

</div>

Today I decided to do an experiment and learn Haskell in three weeks. I have about 4 hours a day and I’m curious at what point I’ll get at the end.  
My experience in functional programming is almost non-existent except for lambda expressions in java where I am certified by oracle as a java developer.

So let’s get started!

**Day 0/21**  
First impression: Run or fight. I decided to fight.

**Day 1/21**  
Today I learned that in Haskell:

return doesn’t return  
Classes aren’t really classes  
Variables are actually constants

**EDIT:**  
The best resources for beginners to learning Haskell (from my beginner experience):

**Nr. 1.**  
Haskell Beginner free crash course:  
[https://typeclasses.com/beginner-crash-course](https://typeclasses.com/beginner-crash-course)

**Nr. 2.**

> **[Functional Programming in Haskell - Online Course - FutureLearn](https://www.futurelearn.com/courses/functional-programming-haskell)**
>
> Get an introduction to Haskell, the increasingly popular functional programming language, with this online programming course from the University of Glasgow.

**Nr. 3**  
Best beginners book

> **[Haskell Book | Haskell from the Very Beginning](https://www.haskellfromtheverybeginning.com/)**
>
> In Haskell from the Very Beginning we take a no-prerequisites approach to teaching the basics of a modern general-purpose programming language.

---

<div class="post-metadata">

### Author: ![tsipou](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/tsipou/32/25184_2.png) [@tsipou](https://forum.cardano.org/u/tsipou)
#### Post date: [23 April 2021 23:23 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/2 "2021-04-23T23:23:05Z")

</div>

hey mate,  
send you my positive vibration-!!!

do you have any resources to share? if i may ask.

von Thom

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [24 April 2021 13:49 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/3 "2021-04-24T13:49:34Z")

</div>

Hi, Thom,  
IMO each developer appreciates a course according to his programming and experience level, but I think in this case it’s not very important what you start with, but especially to start with something and keep going!. In my case, after few hours of research, I start with this one:  
[https://haskell.mooc.fi/part1](https://haskell.mooc.fi/part1)

There are a lot of good resources like this reedit post:

> **[r/haskell - Good way to learn haskell?](https://www.reddit.com/r/haskell/comments/md4btm/good_way_to_learn_haskell/)**
>
> 22 votes and 25 comments so far on Reddit

---

<div class="post-metadata">

### Author: ![tsipou](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/tsipou/32/25184_2.png) [@tsipou](https://forum.cardano.org/u/tsipou)
#### Post date: [24 April 2021 21:18 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/4 "2021-04-24T21:18:46Z")

</div>

[http://learnyouahaskell.com/starting-out](http://learnyouahaskell.com/starting-out)  
lets keep contact and share opinions 🙂

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [25 April 2021 08:25 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/5 "2021-04-25T08:25:59Z")

</div>

**Day 2/21**  
Typing in console make me feeling like 1994 when I discovered MS-DOS 6.22  
There are not loops at all! 😅 the only way to handle with repetitions are recursion

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [25 April 2021 08:31 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/6 "2021-04-25T08:31:42Z")

</div>

Ok mate, I’m at recursion lesson for now  
At what lesson are you?

PS  
I’m in Vienna/Austria (UTC +1) and you?

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [26 April 2021 23:16 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/7 "2021-04-26T23:16:34Z")

</div>

**Day 3/21**  
I resumed learning almost from the beginning…

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [29 April 2021 11:30 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/8 "2021-04-29T11:30:14Z")

</div>

**Day 4/21**  
more and more funny 😂

```
  s f g x = f x (g x)

    k x y = x

    b f g x = f (g x)

    c f g x = f x g

    y f = f (y f)

    cond p f g x = if p x then f x else g x

    fac = y (b (cond ((==) 0) (k 1)) (b (s (*)) (c b pred)))
```

---

<div class="post-metadata">

### Author: ![urban\_freshco](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/urban_freshco/32/23858_2.png) [@urban\_freshco](https://forum.cardano.org/u/urban_freshco)
#### Post date: [30 April 2021 06:32 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/9 "2021-04-30T06:32:27Z")

</div>

Is Haskell really that confusing?

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [30 April 2021 15:35 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/10 "2021-04-30T15:35:23Z")

</div>

**Day 5/21**  
To start with baby steps is the only way,  
Even if you stay a week for a chapter, after a while it becomes accessible.  
So my most important advice is to start it slow, slow, very slow. no pressure, no constraints.  
Don’t move on to the next chapter until you understand 100% the current one.  
Enjoy!

PS.  
My goal is to be able to take part in Lars Brünjes’ lessons from the Plutus Pioneer Program at the end of these 3 weeks. 😊

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [30 April 2021 15:53 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/11 "2021-04-30T15:53:43Z")

</div>

and how is it going for you?

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [2 May 2021 12:28 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/12 "2021-05-02T12:28:33Z")

</div>

**Day 6/21**

I found this and it is very true  
**Don’t learn Haskell. Just use it!**

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [3 May 2021 16:14 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/13 "2021-05-03T16:14:00Z")

</div>

**Day 7/21**  
I already started to like it!

---

<div class="post-metadata">

### Author: ![dailyinvention](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/dailyinvention/32/29099_2.png) [@dailyinvention](https://forum.cardano.org/u/dailyinvention)
#### Post date: [4 May 2021 04:17 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/14 "2021-05-04T04:17:26Z")

</div>

@Bees_Project , you’ve inspired. I think I might just try learning it myself.

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [4 May 2021 09:58 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/15 "2021-05-04T09:58:34Z")

</div>

I’m glad to hear that. If you have any questions maybe I can help you because I’m already a week ahead 😅 😅

So far I can boast that I have already made small but important progress so I will complete these three weeks in any case to find out what it is about.

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [4 May 2021 10:01 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/16 "2021-05-04T10:01:58Z")

</div>

**Day 8/21**

I’m already working on a little game in Haskell … 🤓

---

<div class="post-metadata">

### Author: ![DaedalusVoyage](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/daedalusvoyage/32/17167_2.png) [@DaedalusVoyage](https://forum.cardano.org/u/DaedalusVoyage)
#### Post date: [4 May 2021 11:25 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/17 "2021-05-04T11:25:55Z")

</div>

Consider learning about category theory. An accessible and free e-book is found at [GitHub - hmemcpy/milewski-ctfp-pdf: Bartosz Milewski's 'Category Theory for Programmers' unofficial PDF and LaTeX source](https://github.com/hmemcpy/milewski-ctfp-pdf)

It will make you understand Haskell better. For fast results, directly learning and implementing is good, but after that, you’ll want to add depth to your understanding.

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [4 May 2021 13:05 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/18 "2021-05-04T13:05:51Z")

</div>

Thank you!!, I will return to this book after learning the Haskell alphabet… 👍

For now I have reached recursion in lists that are a kind of party pooper, but the show must go on.

---

<div class="post-metadata">

### Author: ![True2me4you](https://avatars.discourse-cdn.com/v4/letter/t/34f0e0/32.png) [@True2me4you](https://forum.cardano.org/u/True2me4you)
#### Post date: [6 May 2021 00:47 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/19 "2021-05-06T00:47:58Z")

</div>

That is awesome to hear!

I just enrolled into

> **[Functional Programming in Haskell - Online Course - FutureLearn](https://www.futurelearn.com/courses/functional-programming-haskell)**
>
> Get an introduction to Haskell, the increasingly popular functional programming language, with this online programming course from the University of Glasgow.

From the forum post:

> [@For the Pioneers ... Functional Programming in Haskell](https://forum.cardano.org/t/for-the-pioneers-functional-programming-in-haskell/59835):
>
> Look at this … 19.200 students enrolled! I bet quite a few of them will find their way to Plutus. I finished [the course](https://www.futurelearn.com/courses/functional-programming-haskell) today and can totally recommend it especially if not only Plutus but Haskell development itself is new to you - like it was for me. [[image]](https://www.futurelearn.com/courses/functional-programming-haskell)

**WOULD LOVE TO BE KEPT UP TO DATE WITH YOUR PROGRESS.**

---

<div class="post-metadata">

### Author: ![Bees\_Project](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/bees_project/32/32980_2.png) [@Bees\_Project](https://forum.cardano.org/u/Bees_Project)
#### Post date: [6 May 2021 21:23 UTC](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653/20 "2021-05-06T21:23:52Z")

</div>

Thank you!, this is a great source to learn. I also enrolled into 👍

[Next page](https://forum.cardano.org/t/learn-haskell-in-three-weeks-experiment/58653.md?page=2)
