Creator @datasetteproj, co-creator Django. PSF board. Hangs out with @natbat. He/Him. Mastodon: https://t.co/t0MrmnJW0K Bsky: https://t.co/OnWIyhX4CH
New chapter of my Agentic Engineering Patterns guide. This one is about having coding agents build custom interactive and animated explanations to help fight back against cognitive debt https://simonwillison.net/guides/agentic-engineering-patterns/interactive-explanations/

Agentic Engineering Patterns > When we lose track of how code written by our agents works we take on cognitive debt. For a lot of things this doesn't matter: if the code fetches some data from a database and outputs it as JSON the implementation details are likely simple enough that we don't need to care. We can try out the new feature and make a very solid guess at how it works, then glance over the code to be sure. Often though the details really do matter. If the core of our application becomes a black box that we don't fully understand we can no longer confidently reason about it, which makes planning new features harder and eventually slows our progress in the same way that accumulated technical debt does. How do we pay down cognitive debt? By improving our understanding of how the code works. One of my favorite ways to do that is by building interactive explanations. Understanding word clouds In An AI agent coding skeptic tries AI agent coding, in excessive detail ...
Activity on simonw/simonwillisonblog
simonw contributed to simonw/simonwillisonblog
View on GitHubActivity on simonw/simonwillisonblog
simonw opened a pull request in simonwillisonblog
View on GitHubActivity on simonw/simonwillisonblog
simonw contributed to simonw/simonwillisonblog
View on GitHubActivity on simonw/tools
simonw opened a pull request in tools
View on GitHubActivity on simonw/tools
simonw contributed to simonw/tools
View on GitHubPlease, please, please stop using passkeys for encrypting user data Because users lose their passkeys all the time, and may not understand that their data has been irreversibly encrypted using them and can no longer be recovered. Tim Cappalli: To the wider identity industry: please stop promoting and using passkeys to encrypt user data. I’m begging you. Let them be great, phishing-resistant authentication credentials. Via lobste.rs Tags: security, usability, passkeys
MLX is an astoundingly great piece of software which helped make Mac hardware credible as a platform for running LLMs I'm surprised Apple didn't move heaven and earth to keep Awni, can't wait to see what what he does next
Today is my last day at Apple. Building MLX with our amazing team and community has been an absolute pleasure. It's still early days for AI on Apple silicon. Apple makes the best consumer hardware on the planet. There's so much potential for it to be the leading platform for
Activity on simonw/tools
simonw opened a pull request in tools
View on GitHubJust deleted this tweet because it implied Google had been banning long-term existing Google accounts for using Antigravity accounts in unsupported ways, but that doesn't appear to have been the case
An AI agent coding skeptic tries AI agent coding, in excessive detail Another in the genre of "OK, coding agents got good in November" posts, this one is by Max Woolf and is very much worth your time. He describes a sequence of coding agent projects, each more ambitious than the last - starting with simple YouTube metadata scrapers and eventually evolving to this: It would be arrogant to port Python's scikit-learn — the gold standard of data science and machine learning libraries — to Rust with all the features that implies. But that's unironically a good idea so I decided to try and do it anyways. With the use of agents, I am now developing rustlearn (extreme placeholder name), a Rust crate that implements not only the fast implementations of the standard machine learning algorithms such as logistic regression and k-means clustering, but also includes the fast implementations of the algorithms above: the same three step pipeline I describe above still works even with the mor...
Activity on simonw/research
simonw opened a pull request in research
View on GitHubGoogle of all companies need to be really careful about aggressive account suspension, I dread to think how complicated my life would get if my 20+ year old Google account was suspended for some arbitrary reason like this
To the builders: we heard you. We're welcoming back everyone who recently had their Google Antigravity accounts restricted for use of third-party tools. Moving forward, we’ll have clear steps for users to restore their account if it’s restricted. To maintain the integrity of
View quoted postFree Claude Max for (large project) open source maintainers Anthropic are now offering their $200/month Claude Max 20x plan for free to open source maintainers... for six months... and you have to meet the following criteria: Maintainers: You're a primary maintainer or core team member of a public repo with 5,000+ GitHub stars or 1M+ monthly NPM downloads. You've made commits, releases, or PR reviews within the last 3 months. Don't quite fit the criteria If you maintain something the ecosystem quietly depends on, apply anyway and tell us about it. Also in the small print: "Applications are reviewed on a rolling basis. We accept up to 10,000 contributors". Via Hacker News Tags: open-source, ai, generative-ai, llms, anthropic, claude
Built a fun prototype this morning of binary search using HTTP range requests, in this case to lookup character information in ~77MB of unicode data

Unicode Explorer using binary search over fetch() HTTP range requests Here's a little prototype I built this morning from my phone as an experiment in HTTP range requests, and a general example of using LLMs to satisfy curiosity. I've been collecting HTTP range tricks for a while now, and I decided it would be fun to build something with them myself that used binary search against a large file to do something useful. So I brainstormed with Claude. The challenge was coming up with a use case for binary search where the data could be naturally sorted in a way that would benefit from binary search. One of Claude's suggestions was looking up information about unicode codepoints, which means searching through many MBs of metadata. I had Claude write me a spec to feed to Claude Code - visible here - then kicked off an asynchronous research project with Claude Code for web against my simonw/research repo to turn that into working code. Here's the resulting report and code. One intere...
Activity on simonw/tools
simonw opened a pull request in tools
View on GitHubActivity on simonw/research
simonw opened a pull request in research
View on GitHubReleased simonw/dclient
simonw released 0.5a2 at simonw/dclient
Activity on simonw/dclient
simonw commented on an issue in dclient
View on GitHubActivity on simonw/dclient
simonw commented on an issue in dclient
View on GitHubActivity on simonw/dclient
simonw labeled an issue in dclient
View on GitHubActivity on simonw/dclient
simonw commented on an issue in dclient
View on GitHubActivity on simonw/dclient
simonw closed an issue in dclient
View on GitHubActivity on simonw/dclient
simonw closed an issue in dclient
View on GitHubActivity on simonw/dclient
simonw commented on an issue in dclient
View on GitHubActivity on simonw/dclient
simonw commented on an issue in dclient
View on GitHubActivity on simonw/dclient
simonw closed an issue in dclient
View on GitHubActivity on simonw/dclient
simonw labeled an issue in dclient
View on GitHubActivity on simonw/dclient
simonw commented on an issue in dclient
View on GitHubActivity on simonw/dclient
simonw labeled an issue in dclient
View on GitHubActivity on simonw/simonwillisonblog
simonw contributed to simonw/simonwillisonblog
View on GitHubActivity on simonw/simonwillisonblog
simonw contributed to simonw/simonwillisonblog
View on GitHubReleased simonw/dclient
simonw released 0.5a1 at simonw/dclient
Released simonw/dclient
simonw released 0.5a0 at simonw/dclient
I didn't think we would get Gemini 3.1 Flash Image before we got Gemini 3.1 Flash!
Say hello to Nano Banana 2, our best image generation and editing model! 🍌 You can access Nano Banana 2 through AI Studio and the Gemini API under the name Gemini 3.1 Flash Image. We are also introducing new resolutions (lower cost) and tools like Image Search!
Today's chapter of Agentic Engineering Patterns is some good general career advice which happens to also help when working with coding agents: Hoard things you know how to do https://simonwillison.net/guides/agentic-engineering-patterns/hoard-things-you-know-how-to-do/
Agentic Engineering Patterns > Many of my tips for working productively with coding agents are extensions of advice I've found useful in my career without them. Here's a great example of that: hoard things you know how to do. A big part of the skill in building software is understanding what's possible and what isn't, and having at least a rough idea of how those things can be accomplished. These questions can be broad or quite obscure. Can a web page run OCR operations in JavaScript alone? Can an iPhone app pair with a Bluetooth device even when the app isn't running? Can we process a 100GB JSON file in Python without loading the entire thing into memory first? The more answers to questions like this you have under your belt, the more likely you'll be able to spot opportunities to deploy technology to solve problems in ways other people may not have thought of yet. Knowing that something is theoretically possible is not the same as having seen it done for yourself. A ke...
Activity on simonw/simonwillisonblog
simonw contributed to simonw/simonwillisonblog
View on GitHubActivity on simonw/simonwillisonblog
simonw contributed to simonw/simonwillisonblog
View on GitHub