Why not a web that serves people?
| EssayTL;DR I believe the web works best when it is open and people control it. Businesses can prosper without trapping people in one ecosystem. Open protocols and portability can let...
“Loop engineering” is process automation with agents
| EssayTL;DR “Loop engineering” brings a shift beyond prompting agents one turn at a time, but behind the new term, there seem to be simple and familiar process automation principles at...
BDD for Spec-driven Agentic Development
| Lightning TalkAgentic software is changing how we build. As agentic coding becomes more common, how good your prompts specify the behaviour you want is a key to good agent dev outcomes....
The AI-Native 2/20 Software Product Peloton
| Thought ExperimentLLMs can deliver massive individual productivity gains, especially for senior engineers, and prior ideas around software product team structures now seem to create bottlenecks. I haven’t seen many ideas on...
LLMs as the new processor
| Code Collective TalkThis talk introduced LLMs to software developers as a new kind of processor with remarkable capabilities, framed within the history of computing. It began with a brief overview of the...
Software best practice is dead
| ASAS and SDN Netherlands TalkTreating your mature enterprise product carelessly will get your business into deep trouble, but gold plating a new product, before you are sure that you are building the right thing,...
Understanding software engineering with equations
| Codemotion Berlin TalkIn order to escape the common traps of software development, teams and managers need to understand the consequences of their decisions - they need to understand the dynamics of software...
What is software product design?
| DevConf TalkAlthough software engineering has become crucial to our modern society, it is still a new and often misunderstood discipline. One of the most harmful misconceptions is that programming and testing...
Hybrid vs native mobile tech stack
| JSinSA TalkChoosing the wrong mobile tech stack sets you up for a world of pain. But how do you select the right one from a plethora of current options? As an...
Rescuing Legacy Software from Impending Doom
| Agile Washington DC, Agile AustraliaDealing with an ageing code base is one of the hardest challenges that software development teams face. Legacy code bases can slow teams to a crawl, and therefore it is...
Essential software engineering reading list
Here is a list of classic articles and books that have informed my thinking on software engineering. This list does not include my list of (great) programming, philosophy or management...
How to become a thought leader in software
“Nothing is more powerful than an idea whose time has come.” — Victor Hugo “Am I going to be bored or enlightened?” was the question I asked before attending Agile...
Self-help books meta-summary
As a software engineering coach part of my job is to help teams become more effective. To this end, it is sometimes useful to employ concepts from self-help books, but...
Is fast typing required for developers?
I changed my mind on this recently, and here’s why. There is a sentiment that developers have to type really fast because we “type code for a living”. I’ve long...
The origin of bug, loop and patch
Bug, loop and patch - these words have been part of programmer lingo for decades. On my recent trip to the US east coast I stumbled across their origin: The...