Skip to content
UdemyScalaPaid courseIntermediate levelCertificate

Supercharge Scala Future | FP-Tower (Udemy.com)

Master IO, a functional programming technique used to create simple, asynchronous and concurrent workflows.

Created by: Julien Truffaut

Last updated November 2021

icon
What you will learn

  • Understand the difference between IO (cats-effect, Monix, ZIO) and Future
  • Learn to use lazy evaluation to repeat actions and execute code concurrently
  • Write property-based tests for real-world examples
  • Understand the dangers of blocking code in a concurrent environment
  • Gains the skills to join one of the many companies using functional Scala
  • Learn to think functionally

icon
Course Description

Modern applications often need to describe complex workflows involving multiple external systems. These are notoriously difficult to get right as it requires handling errors, various retry strategies and non-determinism because of concurrent executions. In this course, you will learn how to solve this problem using both imperative and functional programming.

By the end of the course, you will be able to read and write code using popular Scala libraries such as cats-effect, Monix and ZIO. This skill is in high demand.

Several companies use this curriculum to on-board and train engineers. Here is a non-exhaustive list:

  • Lunatech

  • Kaluza / OVO Energy

  • Autoscout24

  • Pirum Systems

  • Cleverbase

These companies are constantly hiring new Scala developers! Don’t hesitate to reach out to them and mention that you took this course.

I designed this content for backend developers. It is extremely practical and hands-on. Specifically, this means that you will:

  • Write lots of Scala code

  • Test it using both example-based and property-based tests

  • Experience issues caused by blocking logic and concurrent execution

  • Work your way to efficient solutions in small and incremental steps

I will guide you through all the exercises and provide a complete set of solutions. My goal is to unlock your full potential as a functional Scala developer by demystifying complex concepts using explanations that are free of confusing jargon.

For those familiar with FP-Tower courses, this course corresponds to chapter 5 of Foundations of Functional Programming in Scala.

Enroll now, and enjoy the course!

icon
Udemy Discount

The discount is applied through our link. Open the course from here and Udemy's current promotional price is applied at checkout on most courses, no code to type.

Some courses are excluded from Udemy's promotions. If the price does not drop, clear your browser cookies and use the button again.

icon
Instructor Details

Julien Truffaut

I am a backend engineer passionate about Functional Programming and the Scala programming language. For the last 7+ years, I have been running workshops and online courses about functional programming with great success. I focus on demystifying complex concepts using explanations free of confusing jargon.

I am also the author of Monocle, an optics library that helps functional Scala developers easily transform, and access deeply nested data structures. This is very similar to XPath or jq but for all immutable data structures!

icon
More Scala courses

Free

$39.99

$74.99

$39.99

$11.99

$69.99

icon
Reviews

4.8

168 ratings on Udemy

Select a bar to show only those reviews.Select the bar again to show every rating.

By Jonathan Rubina Garay on 4/4/2024

Good one, it explains the basic and the coding example/exercises are clear and enforces you to practice along the course. The only part I disliked was the last one, when the async api is explained... that part of the course feels a bit on a rush

By Dikshith Sh on 11/21/2023

Provides good background to start using the effects libraries. Topics are well structured. I lliked the emphasis on test based developement and primer on scalaCheck (bonus). Recommend for Intermediate scala developers.

By José Ramón Alonso on 11/6/2023

A carefully prepared course that guides you step-by-step in building an IO trait/monad. Invaluable for Scala programmers that already took a basic Scala course, but need to start using effect libraries for real projects. I am very surprised that the instructor was able to build all the basic IO methods without even mentioning complex concepts like higher kinded types or tagless final. EXCELLENT course.

By Antti Hakkarainen on 10/20/2022

I had very limited experience with Scala but I was still able to learn a lot from this course. The teaching was quite clear and the exercises practical.

By Andrei M on 3/27/2022

Extraordinary presentation, now I have a good grasp of Scala's hidden layers in functional programming. I worked a bit with ZIO and Cats, but I am confident enough to start looking into Monix.

By Akshay Sharma on 12/14/2021

This course is very well design, it serves the purpose well why do we even need cats and zio in the first place. great approach to the course and maneuver to advance things is smooth.

By Naveen Shyam Reuban on 11/14/2021

Dependencies were clearly explained like Console & Clock. Another interesting view is about testing such behaviour along when such dependencies are present using DI. Third point was property based testing - that expands the horizon of UTC/BDD. More code to be implemented this way but all to ensure how well the functionality can be kept integrated.

By Jaroslav Savický on 10/26/2021

I think this is a great and very informative course. On which not only beginners, but even experienced engineers will be able to find something new and interesting.

By Mohemed Ali on 10/13/2021

It is a really good course, everything is well explained .I would recommand this course for everyone who likes to learn about functional programming and effects.

By Pitch GmbH on 10/8/2021

The course is simple amazing. CLI example to approach to the IO concept, Input/Ouput, evaluations... Then building my own IO implementation using blocking, and then the path from sync to async is simple awesome. The concurrency part needed more focus from my side, but I enjoyed a lot. I would recommend the course to anyone interested to understand how IO works explained step by step from scratch. Julien is a really good storyteller.

Showing all 10 reviews on CourseDuck

Read all 168 reviews on Udemy

icon
Quality Score

No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 96 / 100