Gzipping in Pedestal + Jetty 9.3
There is a sample in the Pedestal repo for how to get responses gzip compressed by using the GzipFilter from Jetty 9.2. This filter has, however, been removed in Jetty…
There is a sample in the Pedestal repo for how to get responses gzip compressed by using the GzipFilter from Jetty 9.2. This filter has, however, been removed in Jetty…
Running Clojure on Azure Websites Lisp and Clojure in particular has long been on my list of languages to explore. Already having a MSDN subscription with monthly Azure credits it…
When I first heard about Elixir at Øredev 2012 I thought it was nice, but I didn't really get it. I remember thinking than Elixir was like Ruby for the…
Last week I saw a core async webinar where David Nolen of Cognitect presented the use of core async with its channels and go blocks in a frontend application using…
Writing good tests is something that is important in virtually all software projects. In this blog we'll use Midje and Leiningen for integration testing. Midje is a test framework for…
It's often useful to have both an API and a website serving HTML in the same project. Compojure is a popular routing library in Clojure built on top of the…
I have been experimenting with event sourcing in Clojure (and in Java), but previously I simply used an in-memory store. In this post I'll describe how to use Greg Young's EventStore from Clojure.
I wanted to investigate how to implement something similar to my previous Event Sourcing examples but this time using Datomic. In particular, I wanted to keep the way commands are implemented in the domain, the way commands could be executed asynchronously and aggregates for consistency.
In this blog post I implement the same rock-paper-scissors domain using what I hope is idiomatic Clojure. By using immutable datastructures I show that snapshots of aggregate state is really nothing special and snapshotting should be implemented as a cache.
Transitioning from Java to Scala was simplified by the fact that you could still write something similar to your old style Java code in Scala and then start learning the functional way and all other cool things available in Scala. When learning Clojure this threshold is higher as the language is so different than Java. However, by using records and protocols you should be able to do things in a similar way that you are already used to and then transition into more idiomatic Clojure.
I've been playing around with Overtone a bit lately, but I felt very limited with just evaluating code in the REPL. What I needed was a way to open a file in…
I recently rolled my own Decimal to Roman Numeral converter in Clojure. I was inspired by some tweets about a roman numeral code kata. The Decimal to Roman Numeral converter…
Imagine that you one day were asked to implement the following requirement: "As an Administrator, I want to know what has changed in the database since a given timestamp, and…
This post is the final part of a series of articles about LISP, a function called SUBST, Clojure, and other interesting stuff. You probably want to read the previous posts…
This post is part of a series of articles about LISP, a function called SUBST, Clojure, and other interesting stuff. You may want to read the previous posts before continuing…