Lies, damn lies and statistics

Stop Versioning!

The famous dig from Jamie Zawinski:

Some people, when confronted with a problem, think "I know, I'll use versioning." Now they have 2.1.0 problems.

My assertion is that integration versioning should be a last resort, used in specific situations. If you own both sides of the integration contract then do not version.

Versioning is in effect kicking the can down the road for your future self, or worse - leaving it for someone with no knowledge of the interface.

By following Postel's Law, using abstraction layers, micro-service boilerplate and not being afraid of regression testing (I.e. modern IT practices) we have simple to change components which we can track and upgrade.

Tanky Panky (2021)

Like many coders, I got bored over lock-down and made a game... It's on steam but not released Tanky Panky on Steam (

There seems to be a single chance with game releases and if marketing is not done well with a big community then the game will fail 99% of the time so I'll be waiting on the right opportunity to release to maximise the players I reach. It's especially critical for this kind of MOBA game as it's not that fun without a vibrant community of players.

Library Hero.png

Data Autonomy - Case Study

A couple of contracts back I was consulting as a solution architect at a national retail organisation I ran an experiment as a proof of the cadence which is possible using Data Autonomy.

Shortly after the project went live, I decided to build it again myself using Data Autonomy as realistically as possible. The result was a far better solution in a third of the time & cost.