A. Rothuis

Messaging is a way of communicating between systems, services or components. Message-driven architectures, especially event-driven architectures, are on the rise thanks to service-based approaches to software architecture such as microservices.

In this post, an overview will be offered of the primitives used in messaging: messages. Furthermore, Data Transfer Objects as a way of implementating messages are discussed. Finally, it is proposed that Data Transfer Objects can be used to reflect the use cases of an application.

Sometimes, operations need to be run upon booting a Docker container,for instance when creating, configuring or pre-seeding a database. In this post, we will see how to run CQL when starting a Scylla Docker container.

In line with the Agile manifesto, working software is to be favored over comprehensive documentation. Even though keeping an up-to-date documentation can cost a lot of time and effort, this does not mean it should be disregarded entirely. In fact, it is possible to embed documentation in the agile development process, while working towards a shared understanding and common language of the business domain.

Principles of Behaviour Driven Development and Specification By Example can help in maintaining an ever-evolving body of (executable) documentation for the application. Let’s explore these ideas by writing user stories and setting up end-to-end tests for a live web application using Cucumber, nightmare and chai.