Identity and behaviour
Jul 10, 2025
7 minutes read
architecture , ddd
In Object Oriented programming, identity and behaviour are often conflated. But it can be useful to think of them as different concepts.
Read more →
Give it time
Apr 21, 2025
9 minutes read
architecture , ddd , eventsourcing
Modeling your domain as timelines instead of object graphs
Dead Code Podcast Notes
Jan 14, 2025
4 minutes read
podcast , eventsourcing , cqrs
Notes from my Dead Code Podcast episode on Event Sourcing and Ruby.
What do commands do in Event Sourcing
Dec 22, 2024
7 minutes read
design patterns , eventsourcing , cqrs , DDD
Understanding the role of commands in Event Sourcing
The Decide, Evolve, React pattern in Ruby
Sep 16, 2024
11 minutes read
ruby , design patterns , eventsourcing
The Decide, Evolve, React pattern in Ruby, explained step by step
Railway-Oriented Pipelines in Ruby pt. 5: Testing pipelines
Mar 20, 2024
2 minutes read
ruby , functional , pipelines , composition
Testing Railway-oriented pipelines in Ruby.
Railway-Oriented Pipelines in Ruby pt. 4: Middleware
Mar 20, 2024
5 minutes read
ruby , functional , pipelines , composition
Implementing middleware in a Railway-oriented pipeline in Ruby.
Railway-Oriented Pipelines in Ruby pt. 3: Extending pipelines
Mar 20, 2024
4 minutes read
ruby , functional , pipelines , composition
Implementing domain-specific steps and extending a Railway-oriented pipelines in Ruby.
Railway-Oriented Pipelines in Ruby pt.2: User input, errors and metadata
Mar 20, 2024
5 minutes read
ruby , functional , pipelines , composition
Handling user input, errors and metadata in a Railway-oriented pipeline in Ruby.
Practical Railway-Oriented Pipelines in Ruby
Mar 17, 2024
7 minutes read
ruby , functional , pipelines , composition
A simplified approach to building composable data pipelines in Ruby, with examples and use cases.
Event Sourcing with Ruby examples. The Command layer.
Jul 4, 2022
11 minutes read
ruby , design patterns , eventstore , eventsourcing , cqrs
The Command Layer is the place where business logic happens, user input is handled and decisions are made. In this article I explore the role of the Command Layer in event-sourced systems
Event Sourcing with Ruby examples. The Event Store interface.
Jun 28, 2022
3 minutes read
ruby , design patterns , eventstore , eventsourcing , cqrs
The Event Store interface is the canonical data store in event sourcing, and it’s in charge of persisting and retrieving events produced by your system.
Event Sourcing from the ground up, with Ruby examples, part 1
Jun 27, 2022
5 minutes read
ruby , design patterns , functional , eventsourcing , cqrs
In this series I’ll go over the basic concepts in Event Sourcing. The code examples are in Ruby, but the general principles should apply in any language.
Exploring Railway-Oriented programming in Ruby
Oct 14, 2021
10 minutes read
ruby , functional , pipelines , composition
An exploration of patterns for building composable data pipelines in Ruby, from the basics to the possibly YAGNI.
Written elsewhere…
Writing a Hypermedia API client in Ruby
May 12, 2017
Writing a Server Sent Events server in Go
May 13, 2014
Streaming downloads proxy service with Node.js
March 31, 2014
A network of data consumers and producers with Go, UDP, Redis and ZeroMQ
September 17, 2013
Custom event emitters in Javascript
July 14, 2010
A JSON event-based convention for WebSockets
February 10, 2010