SWIM BETWEEN THE FLAGS
If you release software with any reasonable cadence, it’s almost inevitable you will end up using a feature flag system of one sort or another. There always comes the time when engineering wants to decouple from the release cycle of the Go To Market (GTM) team and with good reason. The GTM team is slower and more traditional. They want to announce big “drops” and send out the marching band to showcase all the cool new stuff you can do in a process that can take months to orchestrate whereas we prefer to deploy more frequently in small increments.
SOFTWARE OWNERSHIP EXPERIENCE
When I was a teenager I started saving up for my first vehicle and I remember my dad saying the cost of buying it was the cheapest part of the ownership experience. I had not a clue what he meant but as I grew I understood that the cumulative cost of insurance, maintenance, registration, fuel, etc over the time of ownership often dwarfs the cost of purchase. The same can be said for software design and implementation.
IN THE DEFENCE OF PERFORMANCE
Defensive programming is a solid practice to adopt and I generally advocate that we do so but we have to be careful we are still getting the value we expect from the practice. Checking input for validity before we execute logic is common and aims to error out quickly before expending resources on something that will fail. In most cases this is the right thing to do. public async Task SetAccountStatus(string accountNumber, Status status) { if (string.
TECH DEBT TETRIS
Some time ago I was getting an old gameboy up and running again and found myself enjoying a game of Tetris. It occurred to me that this game is not dissimilar to the concept of technical debt. When you make a mistake in Tetris you end up with a hole in a row that is buried beneath subsequent rows. You can’t clear that row until you clear all the rows above it which accumulate as you make mistakes and introduce more holes.
CODE CRASH INVESTIGATIONS
I’m quite a fan of a Canadian documentary series called Air Crash Investigations. The show re-enacts aviation incidents and the investigations that follow. Admittedly, its a little dark, but its absolutely fascinating. The debris field can be vast and there’s often very little left of the aircraft. None the less, the investigators painstakingly piece together the chain of events and sequences of errors that led to a plane falling out of the sky.
SCRUMFALL
A while ago in a company I worked for I noticed something strange. We were doing all the ceremonies of Scrum with the sprint plannings and retros and so on, yet we seemed to be moving intolerably slowly. Everything took forever to get to prod and was often not in good shape by the time it got there. Looking up into the management layer, executives and board members were wanting to know what we were dropping over the next few quarters, what big splash features we planned to implement, and how they would attract further investment.
HOW TO MAKE YOUR CV STAND OUT
I’ve sometimes taken the opportunity to speak on engineering career panels and a question often asked by new engineers or graduates is ‘How do I make my CV stand out?’ The answers given are often of a similar ilk - write a cover letter, research the company, make sure the employer understands why you’re excited about their particular business. Whilst this is great advice, it may or may not make you stand out.
ZERO DEGREES KELVIN
It seems fitting that the first post should be about the inspiration for its title. The physics nerds in the room can skip to the next paragraph. Zero Kelvin (-273.15C), otherwise known as absolute zero, is the coldest possible temperature in the universe. It is also impossible to reach. When you draw heat out of an object it immediately warms the surrounding environment preventing the object from ever reaching 0k. We’ve gotten very, very close … but never quite there.