Here you are.
For a long time you had the feeling that something wasn't quite right.
During your functional programming journey you started hearing things like monads, functor, applicative, group, semigroup.
Maybe even kleisli or natural transformations.
Scary terms, I know. It's late at night.
Then you suddenly wake up in your room and remember that not long ago someone told you about category theory.
Maybe that's the answer you are looking for...
Knock Knock Neo..
What is Category Theory
As Philip Wadler said:
"Category theory is easy stuff that I understand very well, made difficult."
Here I'm going to point you to some resources that I found very helpful helping me to learn Category Theory.
Category Theory for the Working Hacker by Philip Wadler
My favourite is the series
Category Theory For Programmers 1 and
Category Theory For Programmers 2 by Bartosz Milewski.
He is very good at teaching and in his lectures you can find very helpful practical examples.
If you are strongly interested in Category Theory, watching these lectures will be time well spent.
Don't miss this awesome visual explanation of Functors Monads and Applicatives.
I hope that those resources will help you to connect the dots between all of these concepts.
Until next time