Scalaz for Dummies

Posted on December 20, 2014 by Stefan Bleibinhaus (updated November 30, 2016)

This post is just a copy. I published the original at Bench labs . The post gives an introduction to the Scala library Scalaz including a rationale. It explains some simple to use Scalaz features including Tagging, the Equal typeclass, Scalaz's take on Options, \/ ("the other Either") and Validation.

Read more

My command line setup with Fish

Posted on August 29, 2014 by Stefan Bleibinhaus

In this post I am describing my terminal and shell setup under Mac OS X. It uses the combination of iTerm2 and Fish enhanced by a few selected plugins and scripts namely oh-my-fish , autojump and bd . iTerm2 is a powerful replacement of Terminal , while Fish is an interactive and user friendly modern shell.

Read more

Drools with Scala

Posted on April 10, 2014 by Stefan Bleibinhaus (updated April 11, 2014)

This post is about the business rules engine Drools in combination with Scala . I have recently started to become interested in business rules engines and I am eager to find promising solutions in combination with the powerful programming language Scala. In this post I introduce the concept of business rules engines and the main motivations to use one. As a follow up in the post, I give a short overview of the rules engine Drools. In an example which can be found on Github, I show how Drools can be used in combination with Scala, explaining various implementation details. I also describe the problems I encountered by using Drools with Scala and how I fixed them.

Read more

Dynamic Apache configuration using text files

Posted on January 29, 2014 by Stefan Bleibinhaus

This post shows, how a text file can be used to configure the Apache http server dynamically and change its behavior during runtime using text files. To illustrate the behavior with an example, I have written a simple server application in Haskell , which chooses a random port during startup on which it is listening too. It writes this port to a text file, which will be used by the Apache server to forward requests from port 80 to the random port.

Read more

Reactive Mongo and Spray

Posted on January 26, 2014 by Stefan Bleibinhaus

In this post I reflect on my first experiences with Reactive Mongo , a reactive Scala driver for MongoDB , in combination with Spray . For experimenting, I created an example project on Github, which is being used in this post to show some code examples. Furthermore I have decided to go with Sprest , a project which aims to build companion libraries for Spray, for the integration between Reactive Mongo and Spray in the example.

Read more

My first sbt plugin: sbt-fastpublish

Posted on January 11, 2014 by Stefan Bleibinhaus

This blog post describes my first sbt plugin: sbt-fastpublish . The plugin modifies the publishing process of sbt by disabling the publishing of the Scala docs and sources. This can speed up the development process, by essentially making the compile process faster. In one of the projects I am working on currently, the difference is up to 10%. The plugin is thanks to sbt-cross-building available for sbt 0.12 and sbt 0.13. In this blog post I describe how to compile and enable the plugin and give furthermore a very little introduction to writing sbt plugins.

Read more

Admin login