The Missing Post About Event Sourcing
You know the basics but can’t turn theory into practice? Let me explain to you why. 1. Why this post There are a lot of resources about Event Sourcing out there, so why yet another blog post? Simply...
View ArticleGoodbye, friends!
An open letter to my former company before moving onto my next job. Yesterday was my last day at GFG eCommerce Technology as Director of Engineering. After 4 wonderful years, I felt I couldn’t leave...
View ArticleUnconventional Lambdas
Do You Think Serverless Is For Fatty Functions? Think Again. You’re busy, I get it. So let me give you the main takeaway from this post right now. You can fit your full-blown service in a single AWS...
View ArticleI built a World Cup 2018 Slack Bot in 24h
When your team is out of the games, you have to somehow kill the time. Alas, Italy is not taking part in the World Cup 2018 tournament. As an Italian which follows football only when the national team...
View ArticleHow I Went from 0 to 1000 Newsletter Subscribers in 3 Months
My hypothesis proved right. Mixing knowledge with emotions is the key. I always wanted to share my learnings with other people. This is an important part of who I am. I wouldn’t be where I am if it...
View ArticleHow to Get Continuous Integration Right
The Secret to Deliver at Full Throttle Is Not About Your Tools. I’m in the Software Development business since many years now. Living in Berlin also helps me staying in touch with a huge startup...
View ArticleIs it a Value Object or an Entity?
When things are not clear, you only need to ask the right questions. Imagine you enter a library to borrow a book. What would you typically do is to ask for the book by its title and author. The...
View ArticleDefinition Runtime Responsibility Segregation
I’m going to tell you one of my Software Design secrets. In your life as a Software Developer, it always comes the time when you are required to model dynamic runtime behavior. Rule Engines, Business...
View ArticleValue Objects Like a Pro
How to build the perfect class for your domain. Some time ago I was asked this automated question on a programming website: Which variable type would you use for representing the age of a person? [ ]...
View ArticleDesign Your Services the Right Way
A deep dive into the core of your codebase. Few days ago, I wrote about the Hexagonal Architecture, explaining why you should use this powerful architectural pattern to design your system. In this...
View ArticlePromoting an environment where employees feel safe to fail
A couple of weeks ago, while I was at the office, I received an email from a fellow developer. He sent it to the whole team. "Recently I screw up [...] and would like to explain what happened. TL;DR:...
View ArticleDeveloping a Chrome extension, pt. 1
Just to give a little bit of context, I should tell you that some months ago I started a small project called Roarred as my personal playground for experiments about software and product development....
View ArticleThe "Play by the book" mistake of Agile adoption
tl;dr; Every context is different. Every experience unique. There is no such thing as "The Book" and what a coach says could not be ideal for your team. Working in a project with 70+ people, we can't...
View ArticleDependency inversion
Here at Rocket Labs, we run weekly workshops about clean code and good development practices. During workshops, we introduce some topic and we try to immediately apply it to our codebase. This time was...
View ArticlePHP EventStore client re-implementation
Starting from @sbiellone's first experiments and according to some feedback from Greg and the EventStore community, I've started to re-implement the PHP EventStore client in a more conscious way. You...
View ArticleJavascript event dispatcher
I'm not a full fledged frontend/javascript developer, but I recently had to start using React for a quite complex UI prototype I'm working on. Soon after a few lines of code, I realized that I needed a...
View Article"Lite" Event Storming
Scenario During the last weekend, I was in Lecce for a startup competition and spent 54 hours with a team of six persons I just met there developing a startup idea and turning it in a business model...
View ArticleMy team won Startup Weekend Lecce 2014
During the last weekend I've been in Lecce (Italy) and took part in a startup competition called Startup Weekend Lecce. Startup Weekend events take place all over the world and aim to make teams launch...
View ArticleValueObjects: a PHP immutable class library
Since when, recently, some of my projects grew in a significant way in terms of code and complexity, I started to study and apply domain driven design methodologies to them. I never used DDD before...
View ArticleBootstrapping a Symfony2 project with Ubuntu 12.10 and Github
Assuming that the operating system has just been installed, this tutorial focuses on bootstrapping a new Symfony2 project under Ubuntu 12.10 and managing it through Github, with the addition of some...
View Article