What we do

And why we do it

We love writing code and designing systems. We believe work should be playful and creative – partly because it’s more fun that way and partly because that’s how you build a better mousetrap.


Managing return values with PHPUnit mock objects


How to use PHPUnit mock objects to create a virtual laboratory for testing components. Set up stub objects to return values via simple method calls.


POPP sixth edition. Development diary

Weekly Diary

A diary for work on the new edition of PHP Objects Patterns, and Practice.
Week 5: The grind of Chapter 4
Week 4: At last a submission. Some more PHP 8 features.
Week 3: Writing begins. Deadlines loom. Some PHP 8 features.
Week 2: The promise of Markdown and a flurry of tool building
Week 1: Vagrant / PHP 8 dev version