Ismael Celis

Identity and behaviour 7 minutes read ,

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 9 minutes read , ,

Modeling your domain as timelines instead of object graphs

Dead Code Podcast Notes 4 minutes read , ,

Notes from my Dead Code Podcast episode on Event Sourcing and Ruby.

What do commands do in Event Sourcing 7 minutes read , , ,

Understanding the role of commands in Event Sourcing

The Decide, Evolve, React pattern in Ruby 11 minutes read , ,

The Decide, Evolve, React pattern in Ruby, explained step by step

Railway-Oriented Pipelines in Ruby pt. 5: Testing pipelines 2 minutes read , , ,

Testing Railway-oriented pipelines in Ruby.

Railway-Oriented Pipelines in Ruby pt. 4: Middleware 5 minutes read , , ,

Implementing middleware in a Railway-oriented pipeline in Ruby.

Railway-Oriented Pipelines in Ruby pt. 3: Extending pipelines 4 minutes read , , ,

Implementing domain-specific steps and extending a Railway-oriented pipelines in Ruby.

Railway-Oriented Pipelines in Ruby pt.2: User input, errors and metadata 5 minutes read , , ,

Handling user input, errors and metadata in a Railway-oriented pipeline in Ruby.

Practical Railway-Oriented Pipelines in Ruby 7 minutes read , , ,

A simplified approach to building composable data pipelines in Ruby, with examples and use cases.

Event Sourcing with Ruby examples. The Command layer. 11 minutes read , , , ,

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. 3 minutes read , , , ,

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 5 minutes read , , , ,

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 10 minutes read , , ,

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
Writing a Server Sent Events server in Go
Streaming downloads proxy service with Node.js
A network of data consumers and producers with Go, UDP, Redis and ZeroMQ
Custom event emitters in Javascript
A JSON event-based convention for WebSockets