Sharing elegant solutions to everyday problems
I’m Adam Warski: programmer, OSS developer and the co-founder of SoftwareMill. Following the motto above, I enjoy both writing and speaking on various programming-related subjects, very often around the areas of distributed systems, architecture and functional programming.

Main interests
What my projects, articles & videos are usually about. But not only!
Functional programming
I started my FP adventure using Scheme and OCaml, but I'm now a happy user of Scala: an elegant, safe and practical language combining functional and object-oriented programming.
Event sourcing
Event sourcing gives us not only performance, but also makes sure important data doesn't disappear, and offers and interesting way of structuring code. It's usable both in the large, and in the small, which isn't so well known!
Developer experience
How to balance safety properties guaranteed at compile-time, with code readability and maintainability? Fundamental tradeoffs are not always obvious, and most popular approaches aren't always "the best".
Latest articles

7 Jan 2026
What’s Interesting About TigerBeetle?
TigerBeetle is a fixed-schema, performance-oriented, replicated, highly available financial database that generates a seemingly disproportionate amount of attention. What's the fuss? What is interesting about TigerBeetle?

4 Dec 2025
Understanding Capture Checking in Scala
Capture checking is an upcoming Scala feature that allows you to track which designated values (capabilities) are captured (i.e., stored as references) by arbitrary other values. This tracking happens at compile time and is currently an opt-in mechanism that can be enabled via an import.

17 Nov 2025
Deterministic Concurrent Testing Using Fray
Fray enables writing concurrent tests for the JVM, deterministically simulating various thread interleaving, and if needed, replaying runs that failed, using a standard Java debugger. Let's take a closer look at how Fray can be used and how it works.
