Rock the JVM Rock the JVM
ROCKTHEJVM
CoursesArticlesPodcastVideosSign InJoin Rock the JVM

Articles marked as 'Advanced' difficulty

A Monad Is a Monoid in the Category of Endofunctors: Scala Explanation

12 min read  •  Apr 6, 2021  •  Explanation

Advanced

category-theory

fp

mathematics

What's the problem?

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Building a Full-Stack Scala 3 Application with the Typelevel Stack

26 min read  •  Jan 23, 2024  •  Guide

Advanced

cats-effect

doobie

http4s

Unlock the secrets to crafting a full-stack Scala 3 application from scratch: dive into Cats Effect, doobie, http4s, and Tyrian and build robust, modern software with ease

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Cats Effect 3: Introduction to Fibers

6 min read  •  Apr 22, 2021  •  Explanation

Advanced

cats-effect

scala

An Introduction to Asynchronous Computations with Fibers in Cats Effect 3, Tailored for Scala 3

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Cats Effect 3: Racing IOs Explained

5 min read  •  Apr 29, 2021  •  Guide

Advanced

cats-effect

scala

Following the introduction to concurrency in Cats Effect: explore advanced techniques for managing racing IOs and fibers

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Compile-time data contracts in Scala 3

38 min read  •  Jan 19, 2026  •  Guide

Advanced

scala

scala-3

macros

Build Scala compile-time data contracts with macros, TypeInspector patterns, and policy-driven validation so schema drift fails at compile time instead of midnight in production

Vitthal Mirji

Vitthal Mirji

Create Your Own Custom String Interpolator

4 min read  •  May 12, 2020  •  Guide

Advanced

scala

tricks

Discover how to create your own custom string interpolator that feels like a native feature of Scala

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Demystifying Variance Positions in Scala

10 min read  •  Nov 10, 2020  •  Explanation

Advanced

scala

type-system

Explore the infamous 'covariant type occurs in contravariant position' problem in Scala: discover effective solutions and best practices

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Free Monads in Scala Explained

16 min read  •  May 26, 2022  •  Explanation

Advanced

fp

scala

A tutorial on Free Monads in Scala: Explore how they work and discover their benefits

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Functional Collections in Scala

7 min read  •  May 8, 2021  •  Explanation

Advanced

collections

fp

scala

Discover a powerful Scala feature that many developers overlook: a concise guide to functional collections that could revolutionize your Scala programming

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

How to Build a ZIO Full-Stack Web Application

25 min read  •  Oct 15, 2024  •  Guide

Advanced

scala

zio

laminar

Learn how to build a full-stack web application in Scala with ZIO and Laminar, step by step

Olivier Nouguier

Olivier Nouguier

Project Loom: Structured Concurrency in Java

49 min read  •  Nov 18, 2024  •  Guide

Advanced

java

loom

concurrency

In this article, we will explore the concept of structured concurrency and how Project Loom simplifies writing concurrent code in Java

Riccardo Cardin

Riccardo Cardin

SSE | lastminute.com

Project Loom: Structured Concurrency in JDK 25 - What's New

37 min read  •  Aug 5, 2025  •  Guide

Advanced

java

loom

concurrency

Explore the latest evolution of structured concurrency in JDK 25 with JEP 505, featuring the new Joiner API, static factory methods, and enhanced configuration options

Riccardo Cardin

Riccardo Cardin

SSE | lastminute.com

Scala 3: The Evolution of a Macro

60 min read  •  Apr 10, 2025  •  Guide

Advanced

fp

scala

scala-3

Discover how a macro can evolve to reduce boilerplate in your code

Daniel Beskin

Daniel Beskin

Scala 3: Type Lambdas Quickly Explained

4 min read  •  Oct 7, 2020  •  Explanation

Advanced

scala

scala-3

type-system

Exploring type lambdas in Scala 3: a quick yet powerful structure that will elevate your high-level thinking

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Scala 3: Type-Level Programming

84 min read  •  Dec 6, 2023  •  Guide

Advanced

fp

scala

scala-3

Discover how type-level programming can be used to tackle practical problems effectively

Daniel Beskin

Daniel Beskin

Tagless Final in Scala Quickly Explained

12 min read  •  Dec 20, 2021  •  Explanation

Advanced

abstract

scala

Demystify the tagless final pattern in Scala: it's not about type classes

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

The Brilliance of Materialized Values in Akka Streams

7 min read  •  Apr 14, 2020  •  Explanation

Advanced

akka

akka-streams

Demystify one of the hardest concepts in Akka Streams: materialized values made simple

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Type-Level Programming in Scala 3: Part 1 - Comparing Types

9 min read  •  Oct 4, 2021  •  Guide

Advanced

fp

scala

scala-3

Harness the power of givens to infer type relationships in Scala 3: at compile time

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Type-Level Programming in Scala 3: Part 2 - A Quicksort on Types

16 min read  •  Oct 11, 2021  •  Guide

Advanced

fp

scala

scala-3

Level 90 of type-level programming: implementing a real sorting algorithm on lists as types

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Type-Level Programming in Scala: Part 1 - Numbers and Comparisons

7 min read  •  Aug 10, 2020  •  Guide

Advanced

fp

scala

type-system

Harness the full power of Scala's type system: let the compiler infer complex type relationships for you at compile time

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Type-Level Programming in Scala: Part 2 - Adding Numbers as Types

11 min read  •  Aug 17, 2020  •  Guide

Advanced

fp

scala

type-system

We continue exploring type-level power in Scala: adding numbers as types at compile time

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Type-Level Programming in Scala: Part 3 - Sorting Lists

17 min read  •  Aug 25, 2020  •  Guide

Advanced

fp

scala

type-system

The final chapter in our type-level trilogy: mastering list sorting at compile time

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

Use Akka Streams' Graph DSL: Quickly Explained

7 min read  •  Jul 12, 2020  •  Guide

Advanced

akka

akka-streams

Explore Akka Streams' powerful Graph DSL and learn how to get started quickly with our easy guide

Daniel Ciocîrlan

Daniel Ciocîrlan

Founder | Rock the JVM

This site uses cookies. Check our cookie policy (TLDR: no personal information is stored). For more information see our cookie policy.

Footer

Subscribe to our newsletter!

This site is built on trust, and your data is safe. Check out the privacy policy .

Thank you for subscribing! Check your email for confirmation.

Content

  • Articles
  • Courses
  • Videos
  • Scala Courses
  • Kotlin Courses
  • Typelevel Courses
  • ZIO Courses
  • Apache Spark Courses
  • Apache Flink Courses
  • Akka/Pekko Courses

Support

  • Contact
  • Memberships

Company

  • About

Policies

  • Cookie
  • Privacy
  • Refund
  • Terms
  • Trademark
  • Facebook
  • GitHub
  • LinkedIn
  • Twitter
  • YouTube
  • RSS

© 2017–2026 Accelerated Learning System SRL