Here’s a selection of open source work I’ve done during the years.
I worked on akka-http for several years. A large part of the work consisted of rewriting spray’s core engine on top of akka-stream. We were also quite involved into building the first prototype of akka-stream itself and did some work for the Reactive Streams Initiative.
I was responsible for implementing the Websocket and HTTP/2 protocol in akka-http and creating large parts of the Java API.
As part of the spray team I was also previously involved in building Akka IO, Akka’s networking component in 2013.
spray is the predecessor of akka-http, and is a high-performance HTTP library.
As part of the spray team I worked on its performance and on smallish things all around the code base. A large amount of time also went into supporting users on spray’s mailing list.
A library to query and update JSON data structures based on the functional programming concept of lenses.
An sbt plugin to analyze the external dependencies of an sbt project. It was originally created out of the need to help a customer which had grown quite a codebase and needed to understand what they were actually depending on.
A developer productivity sbt plugin which allows to run and recompile services in the background.
An sbt plugin to create boilerplate Scala code from templates. Used in spray, akka and other libraries.
An sbt plugin that helps plugin authors to create plugins that are compatible with several sbt versions.
An experiment in doing static code analysis with Scala macros to speed up common Scala collections idioms.
An experiment in providing new syntactic forms in Scala with a compiler plugin.