This post has originally been written as a part of Proto.Actor official documentation which you can find here.
It was a paid for technical writting gig so the article itself is written by me but the illustrations have been created by Proto.Actor creator Roger Johansson

In this example, we are…

It is very hard to reason about life, death, nature of existence, and reality itself. Eternity/Infinity are hard concepts to grasp. Even all religions have the promise of eternity (once you die) and most of them claim that “God” himself is eternal. For an ordinary human, it is really hard…

Design patterns are very useful things in general and they pop up a lot if you are applying DDD in an OOP context (If you’re there you are probably already applying Tactical DDD patterns).

One principle I want to emphasize here because I see so many violations of it, is…

Paradigm Shift — a term coined by Thomas Kuhn (The structure of scientific revolutions)

Normal science:

people work within boundaries with not much critical thinking going on

Anomalies arise:

Things that cannot be explained using current models

Crisis phase:

When anomalies become more and more frequent, there comes Doubt on…

Everything is broken down:

Books -> Chapters

Worlds -> Countries

Software -> Services

5 virtues of modularity

  • Comprehensibility / Cognitive Load
  • Parallel evolution / Team Autonomy
  • Fine-grained, ROI-aligned investments
  • Granular Customisability — do things differently in different modules
  • Containment — Isolated failures

How do these apply in the real world:

Projections Explained

Projections since 2009…

CQRS — split reading and writing (this brought opportunities)

Mostly a logical separation (not a physical one) — that’s not what the pattern is about (but you can do it)

Event Sourcing + DDD — apply it on a bounded context level

You need to…

There are well-established patterns for dealing with conflicting updates in traditional data stores (Relational, Key-value) but how do you deal with conflicts when you have event streams?

Event sourcing is not a top level architecture it is a tactical pattern, (unlike EDA)

Event stores act similar to Escrow.

The level…

Experience report really.

An editorial system for scientific publishing: Submit -> Review -> Revise -> Accept -> Publish, etc. workflows

A big part of this process is in detecting fraud

Needed a lot of different views for a lot of different types of users, eg. …

Keynote — Udi Dahan

Event sourcing intro (the natural order of things — as he put it XD) — event sourcing from first principles probably

Event Sourcing all of the things (excited about it) — The best thing since sliced bread — Every technology goes through this phase

aka Gartner…

While staring out of the window of a plane traveling to Amsterdam for “DDD / Event Sourcing Europe”, I had a sudden rush of inspiration and decided to try and scribble a quick blog post.

Here goes nothing…

Designed by vectorpocket

When talking about software, we often hear the term “architecture” mentioned a…

Anes Hasicic

Software Engineer

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