Adam is one of the co-founders of SoftwareMill, a company specialising in delivering customised software solutions. He codes mostly on the back-end using Scala and other interesting technologies. Adam created a couple of open-source projects, such as sttp, MacWire, Hibernate Envers and ElasticMQ. He has been a speaker at major conferences, such as Devoxx, JavaOne, LambdaConf and ScalaDays.
Apart from writing closed- and open-source software, Adam is interested in improving the way we use functional and object-oriented programming.
He is also writing a technical blog on a variety of interesting IT-related subjects.
You can follow Adam on Twitter here, or take a look at SoftwareMill.
Talks I've Given
-
Free Monad or Tagless Final? How Not to Commit to a Monad Too Early
Featuring Adam Warski
Functional programming is on the rise; monads are everywhere. But how to choose the right wrapper for the values which we manipulate (i.e. monad)? Quite often, the answer is far from obvious, and it’s useful to delay the decision as much as possible. Furthermore, picking a particular monad too...
scala functional-programming free-monads tagless monads -
sttp: the Scala HTTP client that you always wanted!
Featuring Adam Warski
There’s a number of great Scala HTTP libraries. You can do synchronous or fully asynchronous calls, stream requests and responses, use either standard Scala Futures or other concurrency wrappers. However, on the API side, when it comes to programmer-friendliness, I think we can do better.
scala http api sttp uriinterpolator akkastreams monix scalaz cats functional -
Streams: reactive? functional? Or: akka- & scalaz- streams side-by-side
Featuring Adam Warski
During this 'live-coding' presentation, you will implement a couple of stream data processing examples using both the Akka-Stream and Scalaz-stream libraries, introducing their core concepts and highlighting key differences.
streams reactive functional akka-streams scalaz-streams single-node-stream-processing compositionality fp-library live-coding -
Implementing the Reactive Manifesto with Akka
Featuring Adam Warski
It’s certainly fashionable to "be reactive", but what does it mean? How does reactive look in practice?
akka reactive-programming akka-cluster -
Supler: complex web forms, not so complex
Featuring Adam Warski
Let’s face it. Creating websites with complex forms is a pain, and usually ends in lots of code duplication and frustration. And even though it's the age of big data and microservices, form-based applications still take a large share of our development time. That’s why we have decided to...
scala java json javascript orm -
The framework-less Scala Dependency Injection framework
Featuring Adam Warski
In the live-coding-only talk we'll walk through some of the features of DI containers and see if we can replace them with pure, type-safe Scala code. We'll start with ""manual"" DI, followed by using MacWire. With one simple
scala dependency-injectionwire[]
macro, we can save a lot of typing...