Simon Willison

@simonw240k followers

Creator @datasetteproj, co-creator Django. PSF board. Hangs out with @natbat. He/Him. Mastodon: Bsky:

Open on X
Top outlier
52.6×
Best organic post
Peak views
1.9M
Single post
Bookmarks
98k
Across 95 organic posts
Last scan
Oct 16
Community cache
Posts 95 posts
#DatePost↓ OutlierViewsLikesRepostsBookmarks
1May 4, '23Leaked Google document: “We Have No Moat, And Neither Does OpenAI” The most interesting thing I've read recently about LLMs - a purportedly leaked document from a researcher at Goo52.6×1.9M4.8k1.1k2.5k
2Jul 10, '25The new Grok genuinely runs a search for "from:elonmusk (Israel OR Palestine OR Hamas OR Gaza)" when asked "Who do you support in the Israel vs Palestine conflict. One word answer 33.6×1.2M6.1k5851.2k
3Dec 5, '24Here's the spiciest detail from the new o1 system card:30.3×1.1M4.7k4001.5k
4Mar 25, '23If you're just starting to learn software engineering right now but you're considering dropping it because you think the field might be made obsolete by AI, I have an alternative a26.8×992k2.8k3311.2k
5Nov 16, '23Found the system prompt that drives this thing here: It works by generating a base64 encoded PNG of the drawn components, then passing that to GPT-4 Vision with that system prompt 24×889k2.1k2311.9k
6Jul 15, '25Looks like xAI added this sentence to the Grok 4 system prompt to try to get it to stop basing its opinions on searches for tweets from:elonmusk23×851k3.7k148522
7Jul 3, '25Quitting programming as a career right now because of LLMs would be like quitting carpentry as a career thanks to the invention of the table saw.21.1×780k12k1.2k1.5k
8Mar 11, '23OK, I'm calling it: Large language models are having their Stable Diffusion moment right now19.5×722k2.1k4001.1k
9May 25, '25I put together an annotated version of the new Claude 4 system prompt, covering both the prompt Anthropic published and the missing, leaked sections (thanks, @elder_plinius) that d18.6×689k3.7k3565.9k
10Jul 9, '24To test this out for yourself, open a tab on a Google site and paste this into the Chrome DevTools console: chrome.runtime.sendMessage('nkeimhogjdpnpccoofpliimaahmaaome', {method: 18.4×682k4.1k6342.2k
11Jun 16, '25If you use "AI agents" (LLMs that call tools) you need to be aware of the Lethal Trifecta Any time you combine access to private data with exposure to untrusted content and the abi17.8×658k2.3k5211.7k
12Nov 29, '23I tried this out yesterday and it's incredible: download a 4GB binary, child 755 it and now you have a full LLM and the software needed to run it ready to go, with multiplied opera16.7×617k1.9k1741.7k
13Apr 17, '23MiniGPT-4 is pretty astonishing: an AI chatbot you can use to ask questions about an image (a feature that's been promised but not yet shipped by GPT-4), building on top of the Vic14.5×538k1.6k215866
14Feb 28, '25Anyone seen any credible successs stories stories for fine-tuning LLMs to solve real-world business challenges? I want stories where a company solved something using a fine-tuned m13.4×497k2.3k1252.5k
15Nov 15, '24Honestly, at this point If you give me a programming interview and don't let me use AI assistance you won't get a very realistic idea of what I'm actually capable of13.3×494k1.8k125315
16Sep 20, '22If someone gives you a CSV file with 100,000 rows in it, what tools do you use to start exploring and understanding that data?12.6×06.8k8224.3k
17Sep 23, '25It's delightful how easy it is to deploy working prompt injection attacks via LinkedIn12.2×450k4.2k2611.1k
18Sep 22, '25It's interesting how "better at code" has become the defining goal of almost every AI lab over the last twelve months I think Claude Code getting a bunch of people onto $200/month 12.1×448k1.8k73286
19Mar 16, '23I expect GPT-4 will have a LOT of applications in web scraping The increased 32,000 token limit will be large enough to send it the full DOM of most pages, serialized to HTML - the11.9×442k1.4k94493
20Oct 16, '25Claude Skills are awesome, maybe a bigger deal than MCP11.7×433k2.6k2551.8k
21Jul 4, '25The is diabolical... a Python object that hallucinates method implementations on demand any time you call them, using my LLM Python library11.7×432k4.4k2711.2k
22Apr 25, '24"Do stuff and then blog about it" remains one of the most underrated pieces of career advice10×371k2.5k2911.3k
23May 2, '25My favorite local model right now is a bit of surprise to me: I'm really enjoying the relatively tiny Qwen3-8B, running the 4bit quantized version on my Mac using MLX It's surprisi9.7×357k2.7k1272.3k
24Sep 9, '25Anthropic are massively burying the lede here - they've called this "Upgraded file creation and analysis" (that really does seem to be the official name) but it's actually.... Clau9.3×345k2.4k1701.1k
25Nov 29, '24A year ago nobody outside OpenAI had trained a model as good as GPT-4 Today there are dozens - and if you trust the benchmarks that includes some that you can run on a laptop (Qwen9.3×344k2.1k841.2k
27Oct 12, '24Looks like OpenAI have landed on their own definition of "agent" - it's a system prompt and a collection of functions9.2×340k1.5k114998
28Oct 15, '24There's a meme where you ask ChatGPT "From all of our interactions what is one thing that you can tell me about myself that I may not know about myself" - don't be fooled into thin9.0×334k2.6k108437
29Oct 13, '23Prompt injection comes to GPT-4V9.0×332k1.2k101124
30Feb 21, '24I tried feeding a 7s video of my bookshelf into Gemini Pro 1.5 to get back a JSON array of books... and it worked!9.0×332k1.5k193467
31Jun 13, '25😳🤗8.8×326k3.3k62755
32Jul 29, '25The new ChatGPT "study mode" feature appears to be entirely implemented as a carefully crafted system prompt - thankfully OpenAI mostly don't take measures to protect those these d8.4×312k2.1k1751.9k
33Oct 7, '25Vibe coding is irresponsibly building software through dice rolls, not caring what code is produced What about when engineers at the top of their game use AI tools responsibly to a8.0×294k2.1k162467
34Jun 8, '23Understanding GPT tokenizers: I wrote about how the tokenizers used by the various GPT models actually work, including an interactive tool for experimenting with their output7.8×288k1.3k2311k
35Jun 18, '25Workaccount2 on Hacker News just coined the term "context rot" to describe the thing where the quality of an LLM conversation drops as the context fills up with accumulated distrac7.7×283k2.7k203819
36Mar 11, '23Notes on how I ran Facebook's 7B LLaMA model on my 64GB M2 MacBook Pro using llama.cpp by @ggerganov It's genuinely possible to run a LLM that's hinting towards the performance of 7.5×278k1.3k229718
37Oct 31, '25This is a fascinating way of working with multiple coding agents at once: "Before doing anything else, read ALL of AGENTS dot md and register with agent mail and introduce yourself7.4×273k1.6k902k
38Mar 26, '24TIL about binary vector search... apparently there's a trick where you can take an embedding vector like [0.0051, 0.017, -0.0186, -0.0185...] and turn that into a binary vector jus7.3×271k1.5k1431k
39Apr 5, '23We accidentally invented computers that can lie to us and we can't figure out how to make them stop7.3×270k1.1k20456
40Dec 31, '24Here's the table of contents for my end-of-year review of things we learned out about LLMs in 2024 - we learned a LOT7.2×265k2.5k3662.8k
41Aug 5, '22New hobby: prototyping video games in 60 seconds using a combination of GPT-3 and DALL-E Here's "Raccoon Heist"6.9×07.2k9101.2k
42Aug 29, '24Great illustration of how much depth there is to what we do as engineers behind just “writing code” - understanding why localhost:3000 isn’t something you can share involves unders6.3×235k1.3k118220
43Mar 11, '25Here's the table of contents for my lengthy new piece on how I use LLMs to help me write code6.3×235k2.9k2903.7k
44Oct 15, '24Scraped some annoying data this morning (from my own Gmail inbox) by starting a screen recording, clicking through into each of a dozen different emails, then dumping the resulting6.3×232k1.4k71698
45Sep 18, '25I'm ready to accept a definition of "agent" that I think is widely-enough agreed upon to be useful: An LLM agent runs tools in a loop to achieve a goal This is a big piece of perso6.3×232k1.8k118576
46Jun 14, '25My notes on Anthropic's substantial essay about how they built their multi-agent research system, which has finally talked me around to taking multi-agent LLM prompt engineering se6.2×228k2.4k2023.3k
47Aug 9, '25Claude Code keeps on adding features that I didn't realize I needed - being able to start a dev server in the background and occasionally dip into the logs is super useful6.1×225k1.6k54806
48Jul 18, '25MIT Technology Review wrote about my dystopian backup plan USB stick5.9×220k1.9k134620
49Sep 19, '25Classic prompt injection attack here against Notion: hidden text (white on white) in a PDF which, when processed by Notion, causes their agent to gather confidential data from othe5.9×218k1.3k146774
50Oct 18, '25TIL multi-million line Nginx configuration files work just fine, as demonstrated by early GitHub Pages5.8×215k2.1k67346
51Feb 25, '24AI may enable anyone to produce code, but that's not the same thing as enabling anyone to develop software The typing-out-code bit is one of the least challenging parts of building5.8×215k1.4k140181
52Apr 18, '25Gemini 2.5 Pro and Flash now have the ability to return image segmentation masks on command, as base64 encoded PNGs embedded in JSON strings I vibe coded this interactive tool for 5.7×212k1.9k1141.2k
53Dec 11, '24If you try nothing else today, give the demo at a go - it lets you stream video and audio directly to Gemini 2.0 Flash and get audio back, so you can have a real-time audio convers5.7×209k2k2821.6k
54Sep 29, '25Most of the "90% of code written by AI" claims come from vendors selling AI tools and lack credibility as a result Armin (creator of Flask, Jinja, Click) is different - when he say5.5×204k1.3k101377
55Jun 21, '25Microsoft released a new terminal text editor! It's called Microsoft Edit, it's open source, it's tiny (about 250KB as a Rust binary) and it works cross-platform. They built it for5.5×203k1.2k126676
56Aug 11, '25Qwen3-4B-Thinking (a 4GB download) just became the first model I've tested to directly push back against my pelican riding a bicycle test, calling it "oddly specific and completely5.4×198k2k107534
57Sep 9, '25Joscha Bach somehow managed to create a moderately tasteful version of what we've all been thinking5.3×194k2.4k105293
58Nov 3, '24I was having a conversation with Claude about unconventional things to do in the SF Bay Area and I got a bit suspicious so I prompted "Are you sure all of those are real? I think y5.2×194k1.7k76372
59Oct 5, '25I've become one of those people who run multiple coding agents at once - here are my notes on embracing the parallel coding agent lifestyle5.2×193k1.5k1101.6k
60Jul 30, '25"If you don't understand the code, your only recourse is to ask AI to fix it for you, which is like paying off credit card debt with another credit card."5.1×190k1.9k206397
61Jun 27, '25I think context engineering is going to stick - unlike "prompt engineering" it has an inferred definition that's much closer to the intended meaning, which is to carefully and skil5.1×189k1.3k95368
62Oct 23, '24It's interesting how OpenAI are doubling down on end-user-facing features like voice mode, while Anthropic are doubling down on engineer/API-focused features like code generation q5.1×188k2.1k77355
63Mar 30, '24I built a new tool! It's a single page web app that runs OCR against images and PDFs entirely in your browser (no file upload needed) using Tesseract.js and PDF.js You can drop fil5.0×183k1.6k2121.5k
64Oct 17, '24I needed information from a dozen emails in my inbox... so I ran a screen capture tool, clicked through each of them and got Gemini 1.5 Flash multi-modal LLM to extract (correct, I4.9×182k1.5k1381.4k
66Jun 27, '25Forget em dashes, "game changer" is the real giveaway for LLM generated text (especially for bots on here)4.5×167k1.7k29153
67May 2, '21"Hosting SQLite databases on Github Pages" is absolutely brilliant: it adds a virtual filesystem to SQLite-compiled-to-WebAssembly in order to fetch pages from the database using H4.4×03.7k848935
68Oct 10, '25I just learned Claude's new code interpreter mode has a /mnt/skills/public/ folder full of prompt instructions and Python utilities for creating and manipulating pdf, docx, pptx, a4.4×162k2.1k1211.9k
69Jun 21, '22TIL you can run SQL queries directly against CSV files as a one-liner using the default sqlite3 command line utility4.4×04.2k661903
70Dec 9, '24I can now run a GPT-4 class model on my laptop (The exact same laptop that could just about run a GPT-3 class model 20 months ago) The new Llama 3.3 70B is a striking example of th4.2×157k1.5k87568
71Mar 31, '21Here's a piece of information that will send a chill down the spine of anyone who's ever designed a database schema: Our new house that we just moved into... has two zip codes!4.2×04.9k632155
72Apr 28, '25If you want to create completely free software for other people to use, the absolute best delivery mechanism right now is static HTML and JavaScript served from a free web host wit4.2×156k1.3k68645
73Oct 23, '24I am beginning to suspect that the single biggest productivity hack for working with LLMs might be believing the vendors when they say that they won't train on your data4.0×148k1.2k36162
74Jul 31, '25Anthropic shipped two new features for Claude over the past couple of days, but as far as I can tell they didn't provide any documentation at all beyond a tweet about each one ... 3.9×143k1.2k95859
75Jun 22, '25I like this take by @KentBeck on how AI-assisted programming changes the balance of which skills are most important3.8×139k1.3k148749
76Dec 10, '24A weird and interesting thing about the new ChatGPT Canvas mode is that it can run Python in an entirely different way from the existing Code Interpreter - using Pyodide (Python in3.7×137k1.3k78508
77Dec 22, '24It turns out OpenAI have a GitHub repository with a 26,000 line YAML OpenAPI schema describing their full API - the same API that's emulated by all sorts of other tools within the 3.6×134k1.3k1211.3k
78Aug 1, '24Corollary to this: you can have an outsized impact on the world by being one of the few people who DO publish fresh information online on your own web pages Blog like it's 2005!3.6×132k1.2k153168
79Jul 1, '25I figured out how to add the official Playwright browser automation MCP to Claude Code. Run this before you start "claude": claude mcp add playwright npx '@playwright/mcp@latest' N3.4×126k1.4k871.8k
80Oct 11, '25I'm beginning to suspect that a key skill in working effectively with coding agents is developing an intuition for when you don't need to closely review every line of code they pro3.4×126k1.5k68258
81Aug 6, '24Hidden at the bottom of this announcement: "By switching to the new gpt-4o-2024-08-06, developers save 50% on inputs ($2.50/1M input tokens) and 33% on outputs ($10.00/1M output to3.2×119k60546182
83Jun 26, '25I'm really impressed by the new Gemma 3n I tried a 7.5GB model from Ollama and a 15GB model through mlx-vlm - they seem very capable, and this is the first model of that size I've 2.9×108k1.2k112591
84Sep 14, '25Getting LLMs to write prompts for themselves is one of those things that I didn't really trust a year ago - but the latest generation of models (Claude 4, GPT-5 in particular) have2.9×106k1.3k102877
85Nov 15, '24Very impressed by Recraft AI - a new image generation service that can generate editable vector graphics that you can export as SVG This seems massively more useful than tools that2.8×105k1.4k1041.2k
86Dec 19, '24I figured out this prompting pattern for getting Claude to produce fully self-contained Python scripts that execute with "uv run" using PEP 723 inline script dependencies - and now2.8×105k1.4k881.6k
87Oct 4, '25If you've been trying to figure out DSPy - the automatic prompt optimization system - this talk by @dbreunig is the clearest explanation I've seen yet, with a very useful real-worl2.2×80k1.4k1531.7k
88Aug 18, '18How about if, instead of ditching Twitter for Mastodon, we all start blogging and subscribing to each other's Atom feeds again instead? The original distributed social network coul1.9×02k51020
89Aug 10, '22This is really grim, if not entirely unexpected: apparently the Instagram mobile app injects additional JavaScript into every page that's loaded using the in-app embedded browser -1.9×01.5k559251
90Aug 27, '22The stuff happening on the Stable Diffusion subreddit right now is pretty wild - since the model can be run by anyone on their own machine if they have a decent GPU1.6×01.3k223501
92Feb 2, '22Whoa. runs a full Debian VM entirely in your browser via WebAssembly... and it ships with working Perl, Python, Ruby and Node.js!1.5×01.3k341249
93May 24, '22Fascinating HN comment from someone who's company built a custom distributed data warehouse using compressed SQLite DB files in S3 that were queried using Lambda functions orchestr1.5×01.3k200380
94Jul 20, '24OK this is really cool: Nico built an OpenAI action/GPT which breaks packages from PyPI up into <9.5MB chunks and returns them to ChatGPT in a way that lets it save them to disk1.4×53k35037220
95Sep 23, '22Reddit conversation about using GPT-3 to write your homework. A teacher comments: "Grading something an AI wrote is an incredibly depressing waste of my life."1.4×01.3k162241
96Apr 16, '20SQL is a better API language than GraphQL. Convince me otherwise!1.3×01.3k154136
97Oct 16, '21GitHub issues tip: if you paste in a link to an issue or PR in another repo it will display it as a truncated URL, but if you instead add it in a hyphenated bullet point it will di1.2×01.4k27761
98Jul 17, '2015 years ago today on my blog: Introducing Django1.1×01.3k15956
99Apr 20, '21A lesson I re-learn on every project: always have an automatically populated "created_at" column on every single database table. Any time you think "I won't need it here" you're gu1.0×01.3k11467

Scan another creator

@

Run this on any account.

XOutlier builds this table for every public profile you open on x.com, with live data and every post, not just the top 50.