Quantcast
Channel: Michiel Rook, Author at Michiel Rook's blog
Viewing all 70 articles
Browse latest View live

Phing development update

$
0
0

A few years ago I pledged to publish regular updates on Phing’s development. I’m a little ashamed that I haven’t done that for nearly three years. Needless to say, a lot has happened, so it’s about time to post an update! Recent releases The latest version, 2.14.0, was released in March. Ever since the move of the code to […]

The post Phing development update appeared first on Touchdown Consulting Services.


The hierarchy of Continuous Deployment

$
0
0

In this post I’m presenting a twist on Maslow’s hierarchy of needs, the hierarchy of Continuous Deployment. This version is based on the steps that are required to successfully implement Continuous Deployment (a step up from Continuous Delivery). Maslow’s hierarchy of needs (also known as Maslow’s Pyramid) is a well-known theory in psychology, describing human needs in a particular ranking, with […]

The post The hierarchy of Continuous Deployment appeared first on Touchdown Consulting Services.

Distributed command handling with Axon, JGroups and Docker

$
0
0

In a recent project I used Axon Framework together with JGroups, to create a clustered, or distributed command bus. In that project we had some concurrency issues. One of those issues was that two events were applied on a single aggregate with an identical sequence number. The JGroupsConnector in Axon uses a consistent hashing algorithm to route […]

The post Distributed command handling with Axon, JGroups and Docker appeared first on Touchdown Consulting Services.

Event versioning (or why I sometimes modify the event store)

$
0
0

Requirements and applications evolve and change, leading to refactoring. For example, user registration now requires a first and last name, what was once an error may no longer be considered one, etc. In an event sourced application, that poses a few problems. In this post I’ll discuss a few strategies and my views on event versioning. On immutability […]

The post Event versioning (or why I sometimes modify the event store) appeared first on Touchdown Consulting Services.

Concurrent commands and event sourcing

$
0
0

In this post I want to talk a little about concurrency in the context of CQRS and event sourcing. Specifically, when a single aggregate is concurrently accessed by two commands (or command handlers, really). Concurrent commands Let’s assume there are two commands, DepositMoney and WithdrawMoney. Both commands are handled by the BankAccount aggregate. Let’s also assume that those two commands […]

The post Concurrent commands and event sourcing appeared first on Touchdown Consulting Services.

Branches considered harmful

$
0
0

“Don’t use branches”. Three words that are guaranteed to trigger reactions when I utter them during my continuous deployment talks. Three words that make for interesting discussions. This post contains some of the arguments I use during those discussions. Continuous deployment and the master branch A lot of teams are used to having some combination of feature, […]

The post Branches considered harmful appeared first on Touchdown Consulting Services.

Using Different Loggers In Phing

$
0
0

“When you run a phing script it will print things out to the console. These messages are either system messages (eg. BUILD STARTED) or echo messages that you have put into your build.xml file. All of this output is controlled and created by a logger file. The default logger is called (unsuprsingly) DefaultLogger and will […]

The post Using Different Loggers In Phing appeared first on Touchdown Consulting Services.

Setting up continuous integration for PHP using Hudson and Phing


(Semi-)automatic MODx migrations using Phing

$
0
0

MODx is a very popular PHP/MySQL content management system – no surprise when you look at its flexibility, light weight and ease of use. However, as any MODx developer will attest, it is not without its quirks. One of those problems is the lack of (automated) support for maintaining separate development and staging or production […]

The post (Semi-)automatic MODx migrations using Phing appeared first on Touchdown Consulting Services.

Building and deploying Java WebSphere applications with Jenkins CI

Phing – a PHP Build Tool (presentation)

Zend Certified Engineer!

Deploying PHP applications with Phing (PHPNW11)

The road to continuous deployment (PHPCon Poland 2016)

$
0
0

Below are the slides of my talk “The road to continuous deployment: a case study”, as presented at PHPCon Poland in October 2016. It’s a situation many of us are familiar with: a large legacy application, limited or no tests, slow & manual release process, low velocity, no confidence…. Oh, and management wants new features, […]

The post The road to continuous deployment (PHPCon Poland 2016) appeared first on Touchdown Consulting Services.

Continuous delivery, devops & microservices literature

$
0
0

Recently I was asked for books and other literature recommendations on the subjects Continuous Delivery / Deployment, DevOps and Microservices. Here are some of the books, articles and talks I think are worth consuming. Books Continuous Delivery (Jez Humble & David Farley) Reactive Microservices Architecture (Jones Bonér) Building Microservices (Sam Newman) Build Quality In (Steve Smith & […]

The post Continuous delivery, devops & microservices literature appeared first on Touchdown Consulting Services.


Phing development update

$
0
0

A few months have passed since the last Phing development update, so it’s about time to discuss some of the recent changes. Releases Phing 2.15.0 (and two point releases to fix regressions) were released recently. More details can be found in the change log. Version 2.16.0 is scheduled for December 2016. GitHub Issues A task that’s been […]

The post Phing development update appeared first on Touchdown Consulting Services.

CQRS & Event Sourcing in the wild (ScotlandPHP 2016)

All Day Devops

$
0
0

In a little less than two weeks, on Tuesday November 15th, I’ll be speaking at All Day Devops. A free, online DevOps conference spanning 15 timezones with 50+ sessions. Join me at 10 AM GMT for my session “The Road to Continuous Deployment”.

The post All Day Devops appeared first on Touchdown Consulting Services.

The Strangler pattern in practice

$
0
0

In this post I’ll discuss my experiences with the strangler pattern and how it can be applied when rewriting a large, legacy code base. Introduction In one of my recent projects, I helped a development team that was struggling with maintaining a large application. One that handled a lot of (web) traffic, but suffered from […]

The post The Strangler pattern in practice appeared first on Michiel Rook's blog.

Season’s greetings from Utrecht!

$
0
0

This amazing photo was taken by Chris Heijmans in 2012. Last year, I ordered a canvas print, which is now proudly displayed in my home. Admittedly, current conditions (partly cloudy, windy, 8 degrees celcius) are nowhere near what’s pictured, but one can hope 😉 2016 has been interesting! I’ve met loads of cool people and been part of […]

The post Season’s greetings from Utrecht! appeared first on Michiel Rook's blog.

Viewing all 70 articles
Browse latest View live




Latest Images