|Take The Haskell Beginners 2022 Course|
|Written by Nikos Vaggalis|
|Tuesday, 22 February 2022|
There's a short and free course on YouTube about Haskell and Functional Programming, taught by a very experienced developer.
And that developer, teacher and enthusiast is Dmitrii Kovanikov, co-founder of KOWAINIK, a small team of enthusiasts who use Haskell and other functional technologies to develop more reliable libraries and tools, as well as a Quantitative Developer at Standard Chartered. Believe me, he knows his craft.
Last year, I had a look at another great and free Haskell course by Professor Graham Hutton from the University of Nottingham in "Free Course On Functional Programming in Haskell" where I explored the connection of Haskell and mathematics :
As Haskell is a purely functional language, when you write a program in it you are in essence writing mathematical functions. It's where a good background in mathematics will help you in programming, something that finally answers the timeless question of whether you need maths in order to program, a topic explored in Does Math Help Programming Or Programming Help Math?.
It starts with the display of some incomprehensible appearing formal mathematical types and majestically demystifies them with simple substitutions.
That's what the essence is. By combating the initial fear that mathematical notations raise and methodically work on them, in the end you'll find that writing in functional style is easier than the imperative.
It just requires an alternative way of thinking. As the quick sorting example demonstrates, in Haskell you do not just work around the algorithm, but you actually capture its essence.
This course is not that mathematically inclined and gets straight to the point from the very first lecture, which after a short intro and high-level overview of the core FP concepts, it jumps straight into explaining Haskell's constructs with the help of GHCi repl:
Even if you don't want to learn Haskell, you should at least watch this lecture which goes through Functional Programming's concepts, and is a very helpful introduction:
Lecture 2 is dedicated to data types :
Lecture 3 on Typeclasses focuses on how to write polymorphic functions that works with all data types by making the distinction between parametric polymorphism and ad hoc polymorphism.
Lecture 4 is dedicated Monads and IO. Monads is a cornerstone concept of FP that it difficult to visualize and comprehend. Dimitrii is actually doing a good job conveying it through clean code examples.
The course comes with associated exercises and other material which you can find on its Github repo.
This is a great opportunity to get started with Haskell. In the end, scientific interest or curiosity aside, what practical benefits would knowledge of Haskell get you ?
Maybe a job in the booming Cryptocurrency job landscape! Take Cardano, for example, whose smart contracts are being written in Haskell. As a matter of fact shortage of Haskell developers is so great that various projects are migrating away from the Cardano blockchain to other platforms because there aren't enough workers:
Africa-focused blockchain internet company 3air has officially abandoned the Cardano blockchain in favor of SKALE, a network powered by Ethereum, after reporting a “massive talent shortage” for Haskell developers.
Shortage means more opportunity for those with the proper skill set, therefore a much larger paycheck! If that isn't a good incentive to learn then what is?
or email your comment to: firstname.lastname@example.org