In 2017 Uncle Bob wrote a great book about clean architecture. It explains the principles of a good software architecture. The book contains lots of information about the SOLID principles, about boundaries in the application, about screaming architecture, and so forth.

What’s great about the book, is that it isn’t…


A Lambda is an event-driven, serverless cloud-component. It’s the equivalent of the Azure Function and it can be used to process all sorts of events. To get started with your first .NET Core Lambda, do the following:

  1. Create the code for a .NET Core Lambda
  2. Create the infrastructure: Create a…


Estimating a story in hours is common practice. But often, estimations in hours prove not to be accurate. How much time it takes to complete a task depends on a lot of variables. There’s a better way. …


Over the years, building and testing software that runs on physical servers has become the status quo. The database is the most important part of the application. Usually, it’s the only dependency an application has. Testing has become a no-brainer. …


Applications automate processes. Somebody explains the process and someone else builds the application. Seems straight forward, right? Or is it? Perhaps this video changes your mind:

Describing a task as simple as making a sandwich seems simple, but as you can see, plenty of things that can go wrong…


Canary-releasing or zero-downtime/blue-green deployments are made easy by the tools and techniques we have today. Running a second instance of a service is a piece of cake. Especially in the cloud. But aren’t we forgetting something?

Canary-releasing and blue-green deployments have something in common: They require two versions of the…


Domain-Driven Design, that’s what you use when you’re building Microservices. It’s a technique that can be used to cut monoliths into small bits, and it’s about Aggregates and Event-Sourcing. Or is it?

The book Domain-Driven Design by Eric Evans first appeared in 2004. It’s a book about communication, language, context…


Installing software automatically is a piece of cake. Everybody can build a Docker container. Creating a deployment-pipeline is easier than ever before. But every system is different, and not every system can be updated without causing downtime.

Mistakes are easily made, and IT-systems are fragile. Some systems are too big…


“Pipelines”, that’s what the menu in Azure DevOps says. Nothing more, nothing less. They can be used for anything. They’re a great tool to deploy software to resources in the cloud. But a pipeline can do much more than that.

Companies race each other. Who ships something new to the…


Everybody uses integers, doubles, strings, and DateTimes. So, they’re a part of the dotnet framework. But every project has project-specific data-types too.

Imagine writing software for a powerplant. The calculations are in KwH, MWh, and GWh. And they are often represented as integers or doubles in the code. It would…

Albert Starreveld

software developer / consultant @ vxcompany.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store