We Scala programmers love abstractions and Cats is one of the most popular libraries. At the same time, Cats is notorious for having a steep learning curve. Functors, Applicatives, Semigroupals, not to mention the M word. Few people make sense of them all. For the rest of us mortals, it's a brick wall. Certainly was for me when I started.
Cats
Cats is a 33-lesson 10 hours 39 minutes self-paced course by Rock the JVM. We Scala programmers love abstractions and Cats is one of the most popular libraries.
Course facts
- Lessons
- 33
- Duration
- 10 hours 39 minutes
- Level
- All levels
- Language
- English
- Updated
- Instructor
- Rock the JVM
- Price
- Premium
But it doesn't have to be. After lots of pain, I understood how this library can be fun to learn AND write with, IF - and that's a big if - you follow a clear structure and a smooth sequence. The bad news is that's tough to make. The good news is that I think (there's a good chance that) you have it in front of you.
You're looking at the only course on the web that doesn't cost an arm and a leg (and a real cat) and will get you through everything you need to know to be productive. Down to earth, hands-on, no psychobabble, and no F[_] bombs until you're ready.
This course is for Scala engineers at least at the level of the Advanced Scala course. By the end of this course, you'll be able to use any Cats feature without any problems.
Who teaches Cats? Rock the JVM
Rock the JVM (rockthejvm.com) is a Romania-based JVM-focused training platform run by Daniel Ciocîrlan — focused entirely on Scala, the broader JVM ecosystem, and the data-engineering / streaming stack built on top of it (Spark, Flink, Kafka). The platform is one of the most authoritative independent sources on Scala and functional programming on the JVM.
The CourseFlix listing carries four Rock the JVM courses: Scala & Functional Programming for Beginners, Cats (the Scala functional-programming library), Spark Streaming with Scala, and Apache Flink. The teaching style is unusually rigorous about the functional-programming fundamentals underneath the framework material.
Material is paid and aimed at engineers picking up Scala or building data-streaming systems on the JVM. For broader content, see CourseFlix's Scala, Java, and Messaging & Streaming category pages.
What lessons are included in Cats?
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | Welcome Demo | 08:16 | |
| 2 | How to Make the Best Out of This Cours | 02:33 | |
| 3 | Scala Essentials Recap | 31:59 | |
| 4 | Scala Implicits Recap | 25:49 | |
| 5 | Type Classes | 14:33 | |
| 6 | Introduction to Cats | 18:27 | |
| 7 | Type Classes and Variance | 22:04 | |
| 8 | Semigroups | 31:12 | |
| 9 | Monoids | 28:37 | |
| 10 | Functors | 28:43 | |
| 11 | Monads, Part 1 | 25:28 | |
| 12 | Monads, Part 2 | 18:41 | |
| 13 | Using Monads | 35:10 | |
| 14 | Custom Monads | 36:04 | |
| 15 | Monad Transformers | 33:45 | |
| 16 | Readers | 28:57 | |
| 17 | Writers | 25:59 | |
| 18 | Evaluation | 28:37 | |
| 19 | State | 31:56 | |
| 20 | Data Validation, Part 1 | 16:01 | |
| 21 | Data Validation, Part 2 | 20:50 | |
| 22 | Semigroupal | 23:49 | |
| 23 | Applicative | 20:00 | |
| 24 | Weaker Applicatives: Apply | 15:47 | |
| 25 | Weaker Monads: FlatMap | 13:12 | |
| 26 | Handling Errors | 29:24 | |
| 27 | Folding | 21:28 | |
| 28 | Traversing, Part 1 | 21:28 | |
| 29 | Traversing, Part 2 | 21:54 | |
| 30 | Kleisli | 17:16 | |
| 31 | Contravariant | 21:00 | |
| 32 | Invariant | 24:04 | |
| 33 | You ROCK! | 00:31 |
Get instant access to all 32 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionWhat courses are similar to Cats?
Updated 2y agoJava Streams API
By: Nelson Djalo (Amigoscode)Functional programming is becoming very popular and it focuses around pure functions. Functional applications avoid the shared state, and tend to be more concis2h 33m
Updated 2y agoRecursion, Backtracking and Dynamic Programming in Java
By: UdemyThis course is about the fundamental concepts of algorithmic problems focusing on recursion, backtracking, dynamic programming and divide and conquer approaches9h 46m
Updated 2y agoThe complete guide to running Java in Docker and Kubernetes
By: UdemyIf you need to learn how to run, tune, and maintain JVM applications that run in Docker and/or Kubernetes then this is the course for you. This course is very d4h 39m
Updated 2y agoRESTful Web Services, Java, Spring Boot, Spring MVC and JPA
By: UdemyThis video course also covers the H2 in-memory database and teaches how to build RESTful Web Service that stores data in a database without a need to install My25h 8m
Updated 2y agoLearn Java Unit Testing with Junit & Mockito in 30 Steps
By: UdemyLearn Mockito and JUnit - the most popular Java unit testing and mocking frameworks - with 25 Examples. Writing Great Unit Tests distinguishes Good Programmers4h 44m
Updated 2y agoUltimate Java Part 3: Advanced Topics
By: Mosh Hamedani (Code with Mosh)Want to level-up your Java skills and reach the advanced level? Want to become an in-demand Java developer for exciting software companies?6h 28m5/5
Updated 2y agoJava Servlets and JSPs developer course
By: UdemyYou will learn to understand the basics of servlets (a simple Java interface that extends the functionality of a server) and the technology that allows web deve2h
More courses by Rock the JVM
Updated 3y agoApache Flink
Apache Flink is a distributed system and computational engine for stateful big data streaming. That was a mouthful. In plain English, Flink is an library that a8h 31m3/5
Updated 3y agoScala & Functional Programming for Beginners | Rock the JVM
In this course, we will learn the basics of Scala and functional programming, two highly in-demand topics in software industry today. Write 3000+ lines of Scala11h 21m
Updated 3y agoSpark Streaming with Scala
Stream big data in real time with Spark and integrate any data source, from Kafka to Twitter.11h 17m