Microservices anti-patterns are not always technical; they are often caused by how people approach building a system. This blog post goes into some of the most relevant anti-pattens we encountered building microservice architectures. Read more
Events and Commands: Two Faces of the Same Coin?
Events and commands are essential building blocks of event-driven systems. This blog post aims to have a pragmatic look at the different roles they play in event-sourced architectures Read more
Traits with Java 8 Default Methods
When I first started programming in Scala a few years ago, Traits was the language feature I was most excited about. Indeed, Traits give you the ability to compose and Read more
The 7 Deadly Sins of Microservices
Undeniably, there is a growing interest in microservices as we see more organisations, big and small, evaluating and implementing this emerging approach. Despite its apparent novelty, most concepts and principles Read more
Model Matters: Graphs, Neo4j and the Future
As part of our work, we often help our customers choose the right datastore for a project. There are usually a number of considerations involved in that process, such as performance, scalability, the expected size of the data set, and the suitability of the data model to the problem at hand. This blog post is about my experience with graph database technologies, specifically Neo4j. I would like to share some thoughts on when Neo4j is a good fit but also what challenges Neo4j faces now and in the near future. Read more
Deploying Lift Applications to Cloud Foundry
As part of a recent project, I have been working on a number of Scala/Lift applications that we are hosting on a private Cloud Foundry instance. In this blog post I Read more