The Aggregation of Marginal Gains is an improvement model attributed to Dave Brailsford. When he took over as the head of British Cycling in 2002, the team was near the bottom of the rankings. Brailsford’s approach was to look at their processes in tiny detail, and improve each part by 1%, the logic being that Continue reading →
When running apt-get update i was seeing these errors: I was getting this error after migrating keys from the old, legacy store to a the shiny new one. A quick inspection shows that the new keys have different permissions to the existing ones The fix is pretty simple. Pick one of the pre-existing GPG keys, Continue reading →
While running apt-get update I was seeing errors: Although the warning is annoying, it doesn’t stop things updating. I understand the reasons why the legacy keyring is being removed. Migrate existing keys to the new keyring First, list the keys: In my case, i’ve got two – one for PostgreSQL and one for timescaledb. You Continue reading →
I love using devcontainers to manage my development environment. They make it super easy to ensure a consistent development stack is in place. Recently i started developing against a MongoDB instance. For node.js, i use mongodb-unit to spin up a standalone server on the local client. But there’s no equivalent package for Python. Although there Continue reading →
I’ve previously explained the RICE and ICE techniques for prioritisation. Both techniques are frameworks used to evaluate and rank projects or tasks based on their potential impact, feasibility, and difficulty. However, I wanted to highlight the two key differences between them to help you chose the right tool for your project. The ICE technique (Impact, Continue reading →
Yesterday, i talked about the RICE technique for prioritisation. Today, i want to introduce ICE technique, another prioritisation framework used to evaluate and prioritise tasks or projects based on three factors: Impact, Confidence, and Ease. Tomorrow, i’ll compare them both. To use the ICE technique, each item is assigned a score out of 10 for Continue reading →
Imagine that you are a product manager at a software company, and you have three potential features to prioritise for the next development cycle. How do you pick between them? There are many ways, but one i recently learned about is the RICE model – a prioritisation framework used by product managers, teams, and organisations Continue reading →
In our world, we organise in Pods – an autonomous group of 6-9 people with all the skills needed to solve a problem. Multiple Pods form a Team. Within a Pod, there can be multiple Senior Developers, but only a single Lead Developer. They have different and overlapping responsibilities and accountabilities. Every project must have exactly one Lead Developer, and Continue reading →
We’ve recently been rolling out a new internal application. At our organisation, users have an email address which is generally firstname.lastname@company.com, or something like that. When a user logs in to the application, the app will look them up using their email address and figure out what parts of the application the user should be Continue reading →
When i think back to the deepest of the many deep holes i’ve dug myself in to over the years, they almost all start with an email. When working through my inbox, it’s all too easy to just bash out a reply and hit send. Usually, that’s fine – a quick email is all it Continue reading →
I’m rob. I spend my time exploring the world, playing board games with my family, solving complex technical problems, and learning new things. Sometimes i write about them here, or code them on GitHub. I believe a few things that guide what I do and how I do it: