Recent posts

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.

Match Types in Scala 3

6 minute read

Scala 3 comes with lots of new features. In this episode, match types: a pattern matching on types, and a tool for more accurate type checking.