I attended the first Pragmatic Summit early this year, and while there host Gergely Orosz interviewed Kent Beck and myself on stage. The video runs for about half-an-hour. I always enjoy nattering with Kent like this, and Gergely pushed into some worthwhile topics. Given the timing, AI dominated the conversation – we compared it to […]
Last night I saw Central Square Theater’s excellent production of Breaking the Code. It’s about Alan Turing, who made a monumental contribution to both my profession and the fate of free democracies. Well worth seeing if you’re in the Boston area this month. Source link
I mostly link to written material here, but I’ve recently listened to two excellent podcasts that I can recommend. Anyone who regularly reads these fragments knows that I’m a big fan of Simon Willison, his (also very fragmentary) posts have earned a regular spot in my RSS reader. But the problem with fragments, however valuable, […]
Teams have always had mechanisms for collective learning. Retrospectives, post-incident reviews, lunch-and-learns. The best of these share a property: they convert individual experience into shared practice. What one person encountered in a debugging session or a production incident becomes something the whole team knows. The knowledge escapes the individual and enters the team’s infrastructure: its […]
Over the past decade, hardware has seen tremendous advances, from unified memory that’s redefined how consumer GPUs work, to neural engines that can run billion-parameter AI models on a laptop. And yet, software is still slow, from seconds-long cold starts for simple serverless functions, to hours-long ETL pipelines that merely transform CSV files into rows […]
As we see LLMs churn out scads of code, folks have increasingly turned to Cognitive Debt as a metaphor for capturing how a team can lose understanding of what a system does. Margaret-Anne Storey thinks a good way of thinking about these problems is to consider three layers of system health: Technical debt lives in […]
The term harness has emerged as a shorthand to mean everything in an AI agent except the model itself – Agent = Model + Harness. That is a very wide definition, and therefore worth narrowing down for common categories of agents. I want to take the liberty here of defining its meaning in the bounded […]
When a team has worked together long enough, certain practices become invisible. The senior engineer who rejects a pull request does not consult a checklist; she recognizes, almost instantly, that the error handling is incomplete, that the abstraction is premature, that the naming does not follow the team’s conventions. The same instincts shape how she […]
Anthropic carried a study, done by getting its model to interview some 80,000 users to understand their opinions about AI, what they hope from it, and what they fear. Two things stood out to me. It’s easy to assume there are AI optimists and AI pessimists, divided into separate camps. But what we actually found […]
An Architecture Decision Record (ADR) is a short document that captures and explains a single decision relevant to a product or ecosystem. Documents should be short, just a couple of pages, and contain the decision, the context for making it, and significant ramifications. They should not be modified if the decision is changed, but linked […]