DDD Weekly: Issue #19

November 10, 2016

You are also opting in for interesting, DDD-related emails from buildplease.com

Reactive DDD with Akka - Reactive business processes [blog] Pawel Kaczor. “Once we start modeling the interactions that shape our business domain, using the language of the commands and the events, we are on a good way towards creating a model of a system that is simple to understand by the business people and also simple to express in the code.”

A Brief History of Distributed Programming: RPC [video] Christopher Meiklejohn. “While many of the distributed systems we operate today are built with language like Java and Go, distributed programming has a long history of innovation and adoption of its ideas. This include innovations seen all throughout the various fields of computing: novel type systems for dynamic languages; the concept of the promise, now a standard programming technique in web development; and unified models of programming when data lives across nodes. Some of these ideas had major impact, while some fell incredibly short. Many technically superior ideas were not adopted simply because they were too “research” focused.” slides here.

Building reactive event-sourced systems using Akka and Java 8 [video] Jan Ypma. JDK IO 2016. “Event sourcing is an architectural pattern that derives current application state from a journal of changes, called events. Traditionally, this is only internal and not directly visible on a system’s API. An alternative is presented which exposes the events themselves as a real-time streaming REST API. This way, connected systems can materialize their own data, while being deployable and versioned independently. We will talk about how reactive programming helps with keeping the system performant and clusterable, how to deal with past vs. real-time events, what to do with security, in addition to sharing general event sourcing advice.”

Event sourcing for DBAs [blog] Szymon Kulec ‘Scooletz’. “At the end these tables will be needed as well to query something. They won’t be treated as a source of truth, they are just a cache anyway, right? The truth is in the log.”

On Being Explicit [video and slides] Mathias Verreas. “‘Make the implicit explicit’ must be one of the most valuable advices I ever got about software modelling and design. Gather around for some tales from the trenches: stories from software projects where identifying a missing concept, and bringing it front and centre, turned the model inside out. Our tools: metaphors, pedantry, type systems, the age old heuristic of “Follow the money”, visual models, and a healthy obsession with language.”