Sign up

Simon Willison's Weblog

Not verified No WebSub updates Supports Webmention Not yet validated

Author
Simon Willison
Public lists
Featured
Fetched

Simon Willison's Weblog Supports Webmention

Quoting Simon Højberg

The cognitive debt of LLM-laden coding extends beyond disengagement of our craft. We’ve all heard the stories. Hyped up, vibed up, slop-jockeys with attention spans shorter than the framework-hopping JavaScript devs of the early 2010s, sling their sludge in pull requests and...

Simon Willison's Weblog Supports Webmention

Why NetNewsWire Is Not a Web App

Why NetNewsWire Is Not a Web App In the wake of Apple removing ICEBlock from the App Store, Brent Simmons talks about why he still thinks his veteran (and actively maintained) NetNewsWire feed reader app should remain a native application. Part of the reason is cost - NetNew...

Simon Willison's Weblog Supports Webmention

Python 3.14

Python 3.14 This year's major Python version, Python 3.14, just made its first stable release! As usual the what's new in Python 3.14 document is the best place to get familiar with the new release: The biggest changes include template string literals, deferred ev...

Simon Willison's Weblog Supports Webmention

Retraction

I retracted this article after confirming that, while Gemini 2.5 Computer Use did try to solve Google's own CAPTCHA, it was actually Browserbase that successfully performed the solve. I'll update this with more details shortly.

Tags: gemini

Simon Willison's Weblog Supports Webmention

Quoting Thomas Klausner

For quite some I wanted to write a small static image gallery so I can share my pictures with friends and family. Of course there are a gazillion tools like this, but, well, sometimes I just want to roll my own. [...]

I used the old, well tested technique I call brain coding, where you start with an empty vim buffer and type some code (Perl, HTML, CSS) until you're happy with the result. It helps to think a bit (aka use your brain) during this process.

Thomas Klausner, coining "brain coding"

Tags: vibe-coding, definitions

Simon Willison's Weblog Supports Webmention

Vibe engineering

I feel like vibe coding is pretty well established now as covering the fast, loose and irresponsible way of building software with AI - entirely prompt-driven, and with no attention paid to how the code actually works. This leaves us with a terminology gap: what should we ca...

Simon Willison's Weblog Supports Webmention

Deloitte to pay money back to Albanese government after using AI in $440,000 report

Deloitte to pay money back to Albanese government after using AI in $440,000 report Ouch: Deloitte will provide a partial refund to the federal government over a $440,000 report that contained several errors, after admitting it used generative artificial intelligence to hel...

Simon Willison's Weblog Supports Webmention

gpt-image-1-mini

gpt-image-1-mini OpenAI released a new image model today: gpt-image-1-mini, which they describe as "A smaller image generation model that’s 80% less expensive than the large model." They released it very quietly - I didn't hear about this in the DevDay keynote but I later sp...

Simon Willison's Weblog Supports Webmention

a system that can do work independently on behalf of the user

I've settled on agents as meaning "LLMs calling tools in a loop to achieve a goal" but OpenAI continue to muddy the waters with much more vague definitions. Swyx spotted this one in the press pack OpenAI sent out for their DevDay announcements today:

How does OpenAl define an "agent"? An Al agent is a system that can do work independently on behalf of the user.

Adding this one to my collection.

Tags: ai-agents, openai, agent-definitions, swyx

Simon Willison's Weblog Supports Webmention

GPT-5 pro

GPT-5 pro Here's OpenAI's model documentation for their GPT-5 pro model, released to their API today at their DevDay event. It has similar base characteristics to GPT-5: both share a September 30, 2024 knowledge cutoff and 400,000 context limit. GPT-5 pro has maximum output ...

Simon Willison's Weblog Supports Webmention

OpenAI DevDay 2025 live blog

I'm at OpenAI DevDay in Fort Mason, San Francisco today. As I did last year, I'm going to be live blogging the announcements from the kenote. Unlike last year, this year there's a livestream.

Tags: liveblogging, ai, openai, generative-ai, llms

Simon Willison's Weblog Supports Webmention

Quoting Tim Berners-Lee

I believed that giving users such a simple way to navigate the internet would unlock creativity and collaboration on a global scale. If you could put anything on it, then after a while, it would have everything on it.

But for the web to have everything on it, everyone had to be able to use it, and want to do so. This was already asking a lot. I couldn’t also ask that they pay for each search or upload they made. In order to succeed, therefore, it would have to be free. That’s why, in 1993, I convinced my Cern managers to donate the intellectual property of the world wide web, putting it into the public domain. We gave the web away to everyone.

Tim Berners-Lee, Why I gave the world wide web away for free

Tags: web, tim-berners-lee, computer-history

Simon Willison's Weblog Supports Webmention

Bad bots

Two of my public Datasette instances - for my TILs and my blog's backup mirror - were getting hammered with misbehaving bot traffic today. Scaling them up to more Fly instances got them running again but I'd rather not pay extra just so bots can crawl me harder. The log file...

Simon Willison's Weblog Supports Webmention

Embracing the parallel coding agent lifestyle

For a while now I've been hearing from engineers who run multiple coding agents at once - firing up several Claude Code or Codex CLI instances at the same time, sometimes in the same repo, sometimes against multiple checkouts or git worktrees. I was pretty skeptical about th...

Simon Willison's Weblog Supports Webmention

Let the LLM Write the Prompts: An Intro to DSPy in Compound Al Pipelines

Let the LLM Write the Prompts: An Intro to DSPy in Compound Al Pipelines I've had trouble getting my head around DSPy in the past. This half hour talk by Drew Breunig at the recent Databricks Data + AI Summit is the clearest explanation I've seen yet of the kinds of problems...

Simon Willison's Weblog Supports Webmention

Litestream v0.5.0 is Here

Litestream v0.5.0 is Here I've been running Litestream to backup SQLite databases in production for a couple of years now without incident. The new version has been a long time coming - Ben Johnson took a detour into the FUSE-based LiteFS before deciding that the single bina...

Simon Willison's Weblog Supports Webmention

Sora 2 prompt injection

It turns out Sora 2 is vulnerable to prompt injection! When you onboard to Sora you get the option to create your own "cameo" - a virtual video recreation of yourself. Here's mine singing opera at the Royal Albert Hall. You can use your cameo in your own generated videos, an...

Simon Willison's Weblog Supports Webmention

Daniel Stenberg's note on AI assisted curl bug reports

Daniel Stenberg's note on AI assisted curl bug reports Curl maintainer Daniel Stenberg on Mastodon: Joshua Rogers sent us a massive list of potential issues in #curl that he found using his set of AI assisted tools. Code analyzer style nits all over. Mostly smaller bugs, bu...

Simon Willison's Weblog Supports Webmention

Quoting Nadia Eghbal

When attention is being appropriated, producers need to weigh the costs and benefits of the transaction. To assess whether the appropriation of attention is net-positive, it’s useful to distinguish between extractive and non-extractive contributions. Extractive contributions are those where the marginal cost of reviewing and merging that contribution is greater than the marginal benefit to the project’s producers. In the case of a code contribution, it might be a pull request that’s too complex or unwieldy to review, given the potential upside

Nadia Eghbal, Working in Public, via the draft LLVM AI tools policy

Tags: ai-ethics, open-source, vibe-coding, ai-assisted-programming, generative-ai, ai, llms, definitions

Simon Willison's Weblog Supports Webmention

Two more Chinese pelicans

Two new models from Chinese AI labs in the past few days. I tried them both out using llm-openrouter: DeepSeek-V3.2-Exp from DeepSeek. Announcement, Tech Report, Hugging Face (690GB, MIT license). As an intermediate step toward our next-generation architecture, V3.2-Exp bui...

Simon Willison's Weblog Supports Webmention

aavetis/PRarena

aavetis/PRarena Albert Avetisian runs this repository on GitHub which uses the Github Search API to track the number of PRs that can be credited to a collection of different coding agents. The repo runs this collect_data.py script every three hours using GitHub Actions to co...

Simon Willison's Weblog Supports Webmention

September monthly sponsors newsletter

I just sent out the September edition of my sponsors-only monthly newsletter. If you are a sponsor (or if you start a sponsorship now) you can access a copy here. The sections this month are:

  • Best model for code? GPT-5-Codex... then Claude 4.5 Sonnet
  • I've grudgingly accepted a definition for "agent"
  • GPT-5 Research Goblin and Google AI Mode
  • Claude has Code Interpreter now
  • The lethal trifecta in the Economist
  • Other significant model releases
  • Notable AI success stories
  • Video models are zero-shot learners and reasoners
  • Tools I'm using at the moment
  • Other bits and pieces

Here's a copy of the August newsletter as a preview of what you'll get. Pay $10/month to stay a month ahead of the free copy!

Tags: newsletter

Simon Willison's Weblog Supports Webmention

Sora 2

Having watched this morning's Sora 2 introduction video, the most notable feature (aside from audio generation - original Sora was silent, Google's Veo 3 supported audio in May 2025) looks to be what OpenAI are calling "cameos" - the ability to easily capture a video version...

Simon Willison's Weblog Supports Webmention

Designing agentic loops

Coding agents like Anthropic's Claude Code and OpenAI's Codex CLI represent a genuine step change in how useful LLMs can be for producing working code. These agents can now directly exercise the code they are writing, correct errors, dig through existing implementation detai...

Simon Willison's Weblog Supports Webmention

Claude Sonnet 4.5 is probably the "best coding model in the world" (at least for now)

Anthropic released Claude Sonnet 4.5 today, with a very bold set of claims: Claude Sonnet 4.5 is the best coding model in the world. It's the strongest model for building complex agents. It’s the best model at using computers. And it shows substantial gains in reasoning and...

Simon Willison's Weblog Supports Webmention

Armin Ronacher: 90%

Armin Ronacher: 90% The idea of AI writing "90% of the code" to-date has mostly been expressed by people who sell AI tooling. Over the last few months, I've increasingly seen the same idea come coming much more credible sources. Armin is the creator of a bewildering array of...

Simon Willison's Weblog Supports Webmention

Quoting Scott Aaronson

Given a week or two to try out ideas and search the literature, I’m pretty sure that Freek and I could’ve solved this problem ourselves. Instead, though, I simply asked GPT5-Thinking. After five minutes, it gave me something confident, plausible-looking, and (I could tell) ...

Simon Willison's Weblog Supports Webmention

Quoting Nick Turley

We’ve seen the strong reactions to 4o responses and want to explain what is happening.

We’ve started testing a new safety routing system in ChatGPT.

As we previously mentioned, when conversations touch on sensitive and emotional topics the system may switch mid-chat to a reasoning model or GPT-5 designed to handle these contexts with extra care. This is similar to how we route conversations that require extra thinking to our reasoning models; our goal is to always deliver answers aligned with our Model Spec.

Routing happens on a per-message basis; switching from the default model happens on a temporary basis. ChatGPT will tell you which model is active when asked.

Nick Turley, Head of ChatGPT, OpenAI

Tags: generative-ai, openai, chatgpt, ai, llms, nick-turley

Simon Willison's Weblog Supports Webmention

Video models are zero-shot learners and reasoners

Video models are zero-shot learners and reasoners Fascinating new paper from Google DeepMind which makes a very convincing case that their Veo 3 model - and generative video models in general - serve a similar role in the machine learning visual ecosystem as LLMs do for text...

Simon Willison's Weblog Supports Webmention

Quoting Dan Abramov

Conceptually, Mastodon is a bunch of copies of the same webapp emailing each other. There is no realtime global aggregation across the network so it can only offer a fragmented user experience. While some people might like it, it can't directly compete with closed social pr...