Welcome to Smartjava.org

Welcome to Smartjava.org. My name is Jos Dirksen, I currently work as independent contractor forING, a large Dutch financial institution. I like talking, reading, presenting and writing about technology. On this website you can find additional information relating to the books I've written:

On this page you can find the latest set of articles I've written for this blog. For an overview of all the articles, you can use the link in the menu.

Listen to notifications from Postgresql with Scala

In the past I've written a couple of articles (Building a REST service in Scala with Akka HTTP, Akka Streams and reactive mongo and ReactiveMongo with Akka, Scala and websockets) which used MongoDB to push updates directly from the database to a Scala application. This is a very nice feature if you just want to subscribe your application to a list of streaming events where it doesn't really matter if you miss one when your application is down.

Scala typeclass explained: Implement a String.read function

In this short article I'd like to explain how you can use the typeclass pattern in Scala to implement adhoc polymorphism. We won't go into too much theoretical details in this article, the main thing I want to show you is how easy is really is to create a flexible extensible model without tying your domain model to specific implementation or traits.

Visualizing back pressure and reactive streams with akka-streams, statsd, grafana and influxdb

Currently reactive programming is getting more and more attentions. With reactive programming it is possible to easily create resilient, scalable and fault tolerant systems. In this article we'll show some examples of reactive programming, and more specifically how backpressure works in practice. For this we'll use akka-streams since I really like the Scala and Akka programming model, and they have a great DSL for defining flows of data.