Recent posts

Scala 3: Extension Methods

4 minute read

Deconstructing extension methods, one of the most exciting features of the upcoming Scala 3.

Akka Typed: Adapting Messages

7 minute read

In this article we’ll see a good practice for organizing code, messages, domains and logic in an Akka application with Scala.

Semigroups and Monoids in Scala

7 minute read

This article is about Monoids and Semigroups as a gentle introduction to functional abstractions and to how the Cats library works.

Organizing Services with ZIO and ZLayers

12 minute read

ZIO layers (ZLayers) help us structure our complex services into modules that are independent, composable and easy to understand. Let’s take a look.

Value Classes in Scala

12 minute read

An ad-hoc type definition technique for eliminating bugs which are hard to trace, with implementations in Scala 2 via newtypes and in Scala 3 via opaque types.

Mutability in Scala

5 minute read

Although frowned upon by FP purists, creating and managing mutable data structures is important in any language. Scala has some first-class features.

Idiomatic Error Handling in Scala

8 minute read

Error handling is likely one of the most frustrating part of programming, and in Scala, there are better and worse ways to do it. Let’s take a look.