osteel's blog Web development resources

Company website launch, Dime series wrap-up and other news

As August is a quiet month for pretty much everybody and I am spending some time away myself, here is a light post about what I've been up to recently.

Building a PHP CLI tool using DDD and Event Sourcing: distribution

Distribution is about meeting your users where they are – the more options you offer, the broader public you can reach. This post is a step-by-step guide to setting up a Laravel Zero application for distribution over various channels, using Dime as an example.

Building a PHP CLI tool using DDD and Event Sourcing: getting started with EventSauce

This post is a step-by-step guide to getting started with EventSauce, an Event Sourcing library for PHP. While it is part of a series and uses Laravel Zero as a starting point, it requires no prior knowledge of past articles and can easily be adapted for any PHP application.

Building a PHP CLI tool using DDD and Event Sourcing: setting up Laravel Zero

This post is part of the "Building a PHP CLI tool using DDD and Event Sourcing" series but can also be read as an independent guide to getting started with Laravel Zero, a micro-framework for console applications.

Building a PHP CLI tool using DDD and Event Sourcing: software design

How can we combine Domain-Driven Design, Event Sourcing and the Layered Architecture pattern to design a piece of software? This is the focus of this new instalment of a series exploring building a complex console application with PHP.

Upgrade your project to PHP 8.2 with Rector

I wanted to upgrade a project to PHP 8.2 and figured I could use Rector for this. Not only was that the case, but I also completely underestimated how easy it was going to be.

Speaking at PHP London and other news

I've been rather quiet around here for the past few months, so here's an update about what I've been up to. In this issue: Speaking at PHP London, organising PHP Sussex, update on the PHP CLI tool series.

Building a PHP CLI tool using DDD and Event Sourcing: the model

The model is where the software meets the domain. The goal of the model is to identify and express the use cases and constraints that will be built into the software, using schemas and diagrams. It is where we extract the essential concepts from the domain and where we consolidate the ubiquitous language.

Building a PHP CLI tool using DDD and Event Sourcing: the domain

We continue our exploration of DDD with the expression of the domain. A domain is a group of related concepts and ideas about a field, articulated by experts in that field. Expressing the domain is a way to get familiar with its lexical field and to start building the ubiquitous language, the language to be used consistently in the model and across all communications.

Building a PHP CLI tool using DDD and Event Sourcing: why?

This is the introduction to a blog series about building a PHP CLI tool to help me track my crypto activity. I haven't built anything yet – the goal is to document my progress as I go, publicly. I intend to use Laravel Zero, Event Sourcing, and to follow a Domain-Driven Design approach.