Refactoring to Microservices – Introducing Docker Swarm

In my [previous blog] I used local images wired together with a docker-compose.yml file. This was an improvement over stand alone containers. Networking is now more robust because code in images uses names instead of IP addresses to access services. This time my goal is to introduce Swarm so I can distribute components over multiple hosts and run more instances if necessary. Next, I'll describe step one: migrate the docker-compose-single-host setup to a Docker Swarm multi-host version. [More].

Deploying Kong API gateway configurations with AWS CloudFormation

With AWS CloudFormation it is easy to deploy your applications with AWS Elastic Container Service. However, if you want to provide access to your applications through the Kong API Gateway, you are left with one additional step in the deployment process: configuring the Kong gateway. With the Custom CloudFormation Resources for the Kong API Gateway we can deploy both the application and the Kong API Gateway configuration in one go!



What are we doing? And why?

What are we doing? Why are we implementing this sorry excuse of a user story? What will this user story achieve in the bigger picture? Is there even a bigger picture?

I have attended several refinements as a coach, where I was waiting for those questions to arise... Unfortunately, they are rarely asked. Usually, because there is no easy answer to these questions. The difficult truth is that we all like to please others, so we would rather stick our heads in the sand and hope everything will turn out fine.

And that is exactly what we get. Instead of having an awesome job, doing cool stuff and making a difference: our job will be just that, it will be fine. And it could be so much better, with some practises I will share in this blog.Read more →

An Ubiquitous Domain language throughout testing

One of the biggest challenges as engineers is to write working software and also keep an extensive documentation. Most engineers hate writing documentation, and after they published documentation on a wiki it will die a lonely death. We want to strive for writing a Living Documentation in an Ubiquitous Language. Practices like Domain Driven Design (DDD) and Behaviour Driven Development (BDD) can help you achieve this. Especially when we start writing code, it is really important for the quality of our software to start with tests describing what your application does. We want to write software with empathy in mind, software that is understandable for peers. While software developers are beginning to use the language of the domain (business language) more in their application code, most tests still contain a lot of technical language.

Read more →

Deploying private key pairs with AWS CloudFormation

In AWS CloudFormation there is no way to generate a private key pair. As a result, you always have manual work. You need to generate a ssh key, import it into AWS and finally pass the name to your CloudFormation template. This is clumsy, manual work which prevents us to fully automate the deployment of our infrastructure.

In this blog we will show you how the provisioning of ssh keys and ec2 key pairs can be automated using Custom CloudFormation Resources.

read the full blog at

Accurate Forecasting Without Estimation

Often the team or somebody in the role of product owner gets either the question ‘When will it be finished?’ or ‘What will be finished at <some future date>?’ and some forecasting is necessary to answer the question.

This blog shows an alternative way of forecasting that is based on empirical data and skips estimation altogether. In a follow-up blog I will address the ordening of the backlog of items.

Read more →

Deploying secrets with AWS CloudFormation

One of the biggest pains we encounter in creating immutable infrastructures with CloudFormation, is dealing with secrets. Secrets must be passed into the CloudFormation templates to make them different per environment. Furthermore, these secrets have to passed to development teams, so that they can do something useful with them. Before you know it, your secrets are compromised.

With this Custom CloudFormation Resource we put an end to that.  Read more 


Share This