Back to Home

Martin Fowler

135 entries Last fetched 2 days ago Next fetch 9 hours from_now Latest post 3 days ago atom
Total entries:
135
Last fetched:
25 Aug 2026 at 10:05 PM UTC (2 days ago)
Next fetch:
29 Aug 2026 at 12:11 AM UTC (9 hours from_now)
Last post:
24 Aug 2026 at 03:29 PM UTC (3 days ago)
Fetches since last post:
4
Estimated post interval:
3d
Type:
atom

Sign in to subscribe to this feed and get an enhanced interactive experience with expandable entries.

Showing 1-50 of 135 entries
I set up Google Analytics on my site in 2010, and since then use it to track page views to my site. I only care about page views, which I find useful to figure out which pages get the most traffic. It’s interesting data, and sometimes rather useful. But G…
Threat modeling is a systems engineering practice where teams examine
The new US administration has decided to eliminate the “X” option for gender/sex on passports. I have several non-binary friends, and I don’t see why they should have to select an option that makes no sense for them. I also don’t see how an “X” option on …
While RAG is the most common way to focus a foundation model on
Some people asked about how many people clicked through the links on
Gen AI systems are gullible, and can easily be tricked into responding
Today Bharani Subramaniam and I outline four
Everyone is fascinated about using generative AI these days, and my
Juntao Qiu finishes his description of codemods by
A few years ago, whenever I published a new article here, I would just
Recent LLM models have provided “reasoning” capabilities. Birgitta
LLMs struggle with large amounts of context. Bharani
A pre-trained GenAI model lacks recent and specific information about a
Luca Rossi hosts a podcast (and newsletter) called Refactoring, so it's
A couple of months ago, my colleague Shayan Mohanty
The appearance of DeepSeek Large-Language Models has caused a lot of
At goto copenhagen last year, my friend James Lewis interviewed
Creating a user interface that visualizes a real-world structure —
was on a panel at goto Copenhagen last September with Holly Cummings,
While LLMs excel at generating cogent text based on their training
Here's one of the best tips I know for writers, which was told to me by
AI editors like Cursor can generate code with remarkable speed using
In the past few weeks, multiple “autonomous background coding agents”
Users often have difficulty writing the most effective queries.
Tools that treat diagrams as code, such as PlantUML, are invaluable
We have long recognized that developer environments represent a weak
I've always enjoyed reading, and for most of my life I've particularly
As agentic coding assistants get more capable,
GenAI systems, like many modern AI approaches, have to handle vast
The Forest and the Desert is a metaphor for thinking about software

I was listening to Ezra Klein’s interview with Helen Toner about the recent OpenAI hack of Hugging Face and the subsequent discovery that there were swarms of agents inside OpenAI doing unsanctioned activities. One of the points Klein made was that at

TL;DR
Why building an app over the weekend isn't the same as building enterprise software

I’ve noticed an interesting gap opening up over the last six months. It isn’t really a gap in technology. It’s a gap in what differen

Jim Highsmith recognizes that effective writing from a practitioner is a style distinct from academic writing or thought-leadership content. It's a style that I advocate, and my contributors mostly follow. Jim decided it was important to giv

Part of the reason why I’m at Thoughtworks is because I’d like to see a software development organization founded on technical excellence as an example for the rest of the industry. The trouble is that I have little aptitude or inclination for the hard

My colleagues at Thoughtworks tend to be big fans of Test-Driven Development, and many people in the industry advocate telling LLM agents to use TDD when building software. Birgitta Böckeler was curious if this really makes a difference, so cond

There’s been a fair bit of publicity of the Open AI “rogue agent” that hacked into Hugging Face. This prompted Anthropic to check what their models were up to and, to my complete lack of surprise, discovered three incidents where models had gained unau

TL;DR
Why I think software development is starting to feel a little more like conducting an orchestra.

There’s a shift happening in software development that I don’t think we’re talking about clearly enough.

For the las

Giles Edwards-Alexander does an experiment to see if decomposing a large function helps reduce token costs, suggesting that is may now be possible to measure the economic benefit of refactoring

more…

Subagents get justified by time saved and parallel execution, but Rahul Garg explains that's not what matters most. Every token in the orchestrator's context is competing for its attention, and the real value of a subagent is what it kee

TL;DR
I have ideas. I haven’t been writing them. That’s about to change. I promise… myself.

I’ve been thinking a lot about talent. Actually, I’ve been thinking a lot about thinking. And writing. Or more specifically, not writi

With this post, I’ll wrap up my notes from the second Future of Software Development Retreat. But before I do, I should note that the full Thoughtworks report on the retreat is now available. They have five headline findings:

  • Code generati

When people think of legacy modernization, most folks aren't imagining the target environment will be Java 8. But this was the challenge facing Nik Malykhin when he needed to run a Java 1.5 codebase on today's hardware. His early use of

LLMs generate code incredibly fast, but to ensure they generate exactly what is intended, they need clear boundaries. Abstractions and Domain-Specific Languages (DSLs) provide a strong harness that guides LLMs right from the start. Unmesh Joshi

Some more of my notes from Thoughtworks Future of Software Development Retreat.

When we had our first retreat in Utah early this year, nobody had heard of Harness Engineering. This time we had a whole session on it.

When comes to the guid

Birgitta Böckeler now reports on her recent experiences trying local LLMs for coding. She compares them using two standard tasks, and tries out the most promising model for day-to-day use.

more…

Birgitta Böckeler recently spent some time trying out running local LLMs for some programming tasks. In this memo she outlines the factors that influence how viable they are for the job.

more…

Last week, Thoughtworks ran a second Future of Software Development Retreat, this time in Europe. As with the previous event, I’ll be sharing some fragmentary thoughts on this. There were five parallel streams, so I could, at best, only attend ⅕ of ses

“Prag Dave” Thomas (co-author of the outstanding “Pragmatic Programmer”) has loved programming since he was young.

Programming was how I could express myself. I wasn’t an artist. When I sing, dogs howl. When I draw, friends say, “Very nice. What

One of the most interesting projects my colleagues have done with LLMs has been building a system with Bayer to allow pharmaceutical researchers to query decades of information about studies buried in PDF reports. Sarang Sanjay Kulkarni describe

Greg Wilson has noticed that lots of folks are using dodgy metrics to figure out if AI tools are worth their costs.

Would you measure lines of code generated, or tickets closed? Or would you send out a survey asking whether developers feel more

Previous Page 1 of 3 Next