paulhammant

Environment Hell

This is out of date by many years, and companies that have this environment setup don’t do it this way anymore. Or they are losing market stare. Or they have lost all market share, so to speak. It was typical of a company that scaled its production capacity before the horizontal-scaling and cloud era kicked in. This would be after 1995, and should have ended before 2015, really. The rigid rules and broken promises around environments...

paulhammant

Quicker Local Maven Builds

Maven is a depth-first recursive build technology. Projects can be multiple modules in one repo, and if ‘mvn install’ is launched from the root of that repo it will recurse through all the modules depth-first. It’ll do so regardless of what’s changed. There’s the rub: you may have only changed one source file in one module, and that may have been test logic, not ‘prod’ source. Meaning there’s a bunch of needless...

paulhammant

Some Thoughts On Toggles

Kent Beck was asking about “Feature Flags” on Twitter recently and their life cycle. Former colleague, Pete Hodgson linked back to an article he’d written to for Martin Fowler a couple of years ago, and added context. I don’t think this article fits in that Tweet series, so it’s a standalone blog entry - much of which I’ve shared before. Build-time toggles Some toggles shape what is built - things are included or excluded...

paulhammant

Using Git In Business And Government

Synopsis: Git is the best we have right now for a “History-retaining Merkle tree” (when force-push is turned off), and stands to be utilized more outside of software development - in business at least. A £200m “Garden Bridge” project was canceled when it had accrued £50m in costs and before construction started. It is difficult to pick it apart. See this Tortoise Media article and Reddit discussion. It is not clear whether...