I wrote a page about domain events for Eventuous documentation today. It landed as a blog article, so I decided to publish it separately as such.

Concept

If you ever read the Blue Book, you’d notice that the concept is not mentioned there. Still, years after the book was published, events have become popular, and domain events in particular.

Eric Evans, the author of the Blue Book, has added the definition to his Domain-Design Reference. Let us start with Eric’s definition:

Model information about activity in the domain as a series of discrete events. Represent each event as a…


During the last year, I’ve done quite a few webinars, talks and workshops about Event Sourcing. A lot of time, the audience answered a question: when I should not use this pattern. In broader terms, the question appeared during the Ask me anything with Udi Dahan session organised by Virtual DDD. The question was: what are the circumstances where things like Event-Driven Architecture (EDA), Service-Oriented Architecture (SOA), CQRS, et al., aren’t applicable.

During the session, Udi argued that when building one of the first iterations of software for a startup, you’d need to focus on validating the idea before thinking…


When I was looking around to find a decent managed Kubernetes offering for my own hobby project, I found this article on Medium: How To Run The Cheapest Kubernetes Cluster at $1 Per Day.

The figures confused me as I personally calculated the costs of a three-node cluster of identical size for GCP and Azure, and GCP was always the winner in terms of costs.

I checked the figures once more, but having other concerns in mind too. Here what I’ve got.

For GKE, the flat management fee would be gone if you commit to sustainable usage. Here is what…


I wrote this article for my blog in June 2020. Here is the link to it.

This post is a part of the Myth Busting series, mainly about all the misconceptions about Event Sourcing here and there. Each post either addresses a common misconception or a particular article on a public resource.

I will address specific issues with a given article. You might want to read the original article to get the context.

Original article

Stop overselling Event Sourcing as the silver bullet to microservice architectures by Oskar uit de Bos

Terminology

A good example of this is the combination of the Event…


Originally posted in my blog on June 5, 2019

I got quite a few questions from the readers of my book about the “missing chapter” and the part that should cover the user interface. Both are apparently missing from both the printed and electronic version.

As I mentioned in my previous post, the publisher has decided not to include the final chapter to the printed version. There must be, however, a link in the book that points to the last chapter as a PDF file. At the moment of writing, this link returns 404. …


For quite a while I hesitated to write this story, but I decided that now it is time. It is a story of misinterpretation and bias that come from people that we consider as leaders in the software industry, the things they proclaim and promote and how it is related to peer-reviewed research and cognitive biases.

dilbert.com cartoon

One year ago, in October 2017, I got engaged in a Twitter discussion about a controversial topic of gender disbalance in the software industry. I can consider myself an industry veteran since I am involved in software development since the age of 14, so…


I would like to share my experience to create a small Kubernetes cluster on Azure Container Service (AKS Preview) and deploy GitLab CE on it using the Helm chart.

Creating a cluster in AKS should be an easy task but sometimes things don’t go at they suppose to. There are at least two main issues that I found:

  • When using the Azure Portal, there is a big chance something will go wrong and the cluster will be always in “creating” state and you can only remove it by using the Azure CLI.
  • There is no way from Azure CLI to…


A few years ago I attended the famous Greg Young’s course (actually, both of them) at SkillsMatter and Greg asked me at the end if I am staying for DDD Exchange. I never heard of the conference before that day and decided that one day I would definitely go. These were those good old days when SkillsMatter was not so large yet and CodaNode was not a thing of reality, but only of Wendy’s dream and imagination…

This year it will be the second time I will attent DDD Exchange conference at SkillsMatter in London. My first time was 2017…


For quite a few years, with growing popularity of Domain-Driven Design (DDD), I keep hearing that:

  • DDD is hard
  • DDD is only for core domain

This mantra has became very popular and often is (mis)used to advocate some crazy things people do to avoid crunching the domain knowledge.

In this post, I would like to return back to the roots. In nearly every talk or lecture that somehow concerns DDD, Greg Young mentions that, in his opinion, the chapter order of the Blue Book is incorrect. The issue is that most of the strategic design is placed to the latest…


React 1.5 introduced stateless components, declared as pure functions. Sometimes, these components are referred as “functional components”.

It is indeed a very nice way to define rendering components that have no state and no side effects.

I tried to implement those using TypeScript and found that there are no samples how to do this, plain jsx file won’t compile do to undefined propTypes element and the whole type goodness was somewhat lost.

I looked at the React type definition file and found that proper typing is available for this type of components. …

Alexey Zimarev

Alexey is the Event Sourcing and Domain-Driven Design enthusiast and promoter. He works as a Developer Advocate at Event Store and Chief Architect at ABAX.

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