Adam Warski



I am one of the co-founders of SoftwareMill, a company specialising in delivering customised software solutions. I code mostly using Scala and Java. I am involved in a number of open-source projects: as the founder and lead developer of Hibernate Envers, a Hibernate core module providing auditing capabilities, as well as the founder of ElasticMQ, Veripacks and MacWire. I have been a speaker at major conferences, such as Devoxx or Jazoon.

Apart from writing closed- and open-source software, I am interested in improving the way we use functional and object-oriented programming. When not coding, I enjoy spending time with my family, hiking in the mountains or playing tennis.

My blog:


1h - Slides+Speech

3 short talks on modularity

Modules come in a variety of sizes; I’d like to show 3 of them, together with 3 practical approaches:

1. Java packages: we usually think about packages in a hierarchical way, but tools treat them as simple identifiers. Veripacks tries to change that

2. Modularity in Ceylon is one of the key features; it combines Maven-like repositories with OSGi-like metadata

3. In Scala, modularity can be implemented using... Scala. Together with a Dependency Injection framework replacement, using MacWire

1h - live coding

Keep it Simple with Scala

Download materials

Many people probably wouldn’t describe Scala as “simple”. In three live coding demos (hopefully at least one will work ;) ), I’ll try to convince you otherwise. We’ll see three scenarios, where instead of complex code, Scala with the help of some libraries offers simple and elegant designs.

The talk will cover:

  1. writing fully asynchronous code, as if it was synchronous, using Futures and Scala Async
  2. doing Dependency Injection without a framework, using MacWire
  3. building and testing a REST server with Spray





Organizers & Key partners