Blog
Putting the developer at the centre of platform engineering
A look at how the practice of continuous discovery helps build platforms that developers actually want to use.
Women as technology
A reflection on the 'Women as Technology' exhibition, exploring the intersection of gender, stereotypes, and technological development.
The bitter lesson for organisations
Ethan Mollick's article on 'The Bitter Lesson' suggests that brute-force AI may outperform human-designed processes, but where do humans still hold the advantage?
The cost of being wrong
A reflection on Jack Vanlightly's article about how the low cost of failure in software should encourage decisive action.
A refreshing, back-to-basics approach to coding with AI
A look at antirez's argument for using LLMs as direct, human-controlled add-ons, avoiding agents and retaining full control over the development process.
People, principles, process, then product
A reflection on Mike Fisher's framework that prioritizes people, principles, and process before focusing on the product itself.
Networking for people who do not network
A practical guide to networking from Stay SaaSy for those who, like me, are not natural networkers.
Aligned autonomy: from military strategy to engineering teams
An exploration of how the concept of aligned autonomy in business mirrors the effective military doctrine of mission command.
What makes a principal engineer different from a senior?
A look at Amazon's Principal Engineer role, exploring the key differences in scope, autonomy, and how it compares to senior technical roles in other engineering cultures.
Roger Martin on going on the offensive with creative strategy
A reflection on Roger Martin's argument that creative innovation requires an offensive mindset, challenging the business world's reliance on historical data for future predictions.
Include your tests in coverage reports
A short post on why, inspired by Ned Batchelder, you should include your test code in your coverage analysis.
Lessons on building software quickly
A look at Evan Hahn's practical advice for efficient software development, focusing on key takeaways like rough drafts and focused work.
The Pragmatic Engineer 2025 survey
A look at the key findings from The Pragmatic Engineer's 2025 developer tools survey, including some surprising trends in AI, IDEs, and project management tools.
Practical lessons from Meta on improving code
Exploring Meta's data-driven and cultural approach to code improvement and how we can apply these lessons to our own projects.
A deeper dive into systems engineering: from design to disposal
A summary of the core concepts from the second half of my systems engineering course, covering the journey from detailed design to system retirement and management.
Has self-service BI finally arrived with AI?
A look at how conversational AI and Model Context Protocol (MCP) could revolutionise business intelligence, with a dose of healthy scepticism.