Simon Willison

simonwillison.net · Personal blog · on HN since 2007

Simon Willison, a developer and co-creator of Django, writes about LLMs, prompt injection, and AI-assisted programming.

What HN saysCommenters call it HN's favorite blog of the year and recommend it for his thorough, evidence-based and understandable coverage of AI.
957HN people shared it
580linked it in comments
1.0Kstories submitted
48Kstory points
2 months agolast shared
2007people per year2026

Most-shared posts

  1. 1
    Homepage
    52 people · first shared 2008
  2. 2
  3. 3
  4. 4
  5. 5
    Tools.simonwillison.net
    16 people · 3 points · first shared 2024 · discussion on HN
  6. 6
  7. 7
    "A computer can never be held accountable"
    12 people · 445 points · first shared 2025 · 295 comments on HN
  8. 8
  9. 9
    Pelican riding a bicycle
    11 people · first shared 2024
  10. 10
  11. 11
    Your job is to deliver code you have proven to work
    10 people · 847 points · first shared 2025 · 655 comments on HN
  12. 12
    Vibe engineering
    10 people · 654 points · first shared 2025 · 719 comments on HN
  13. 13
    Pelicans on a bicycle
    10 people · 104 points · first shared 2024 · 54 comments on HN
  14. 14
  15. 15
    About
    10 people · first shared 2023

What HN people wrote when they linked it

kingkongjaffa · 2026-08-09
Blogs are significantly more up to date with most technical topics. Books focused on specific technologies by contrast go out of date as soon as they are published. For example: https://simonwillison.net/ is HN's favorite blog this year. Evergreen computer science topics don't go out of date though. (example of evergreen: https://dataintensive.net/)
enraged_camel · 2026-01-07
>> Maybe they are struggling to convince others because they are unable to produce evidence that is able to convince people? Simon has produced plenty of evidence over the past year. You can check their submission history and their blog: https://simonwillison.net/ The problem with people asking for evidence is that there's no level of evidence that will convince them. They will say things like "that's great but this is not a novel problem so obviously the AI did well" or "the AI worked only because this is a greenfield project, it fails miserably in large codebases".
hodgesrm · 2025-10-10
I understand your argument, but the distinctions you are making seem really hard to uphold. Adapting to LLMs means we'll adopt new standards for quality or more likely re-emphasize old ones like assigning trust to specific authorities. If you read something from Simon Willison, it's generally worth reading. [0] (Actually pretty great a lot of the time.) Everything else is the literary equivalent of spam calls. Maybe it's time to stop answering the phone? [0] https://simonwillison.net/
bdangubic · 2025-09-28
- everything that simon writes (https://simonwillison.net/) - anything that goes deep into issues (I seldom read “i love llms” type posts like this is great: https://blog.nilenso.com/blog/2025/09/15/ai-unit-of-work/) - lots of experimentation - specifically I have spent hours and hours doing the exact same feature (my record is 23 times). - if something “doesn’t work” I create a task immediately to investigate and understand it. even the smallest thing that bother me I will spend hours to figure out why it might have happened (this is sometimes frustrating) and how to prevent it from happening again (this is fun) My collegue describes the process as Javascript developer trying to learn Rust while tripping on mushrooms :)
runjake · 2025-07-22
If you’re at all interested in this topic, I strongly recommend you read Simon Willison’s blog at https://simonwillison.net/ He does all the legwork and boils it down into an easily-understandable manner. He’s also a user her in this thread at simonw. Just an immensely useful guy.
necrodome · 2025-06-19
Thanks for the benefit of the doubt. I typed that in a hurry, and it didn’t come out the way I intended. We had the idea that there’s a class of apps [1] that could really benefit from our tooling - mainly Fireproof, our local-first database, along with embedded LLM calling and image generation support. The app itself is open source, and the hosted version is free. Initially, there was no login or signup - you could just generate an app right away. We knew that came with risks, but we wanted to explore what a truly frictionless experience could look like. Unfortunately, it didn’t take long for our LLM keys to start getting scraped, so the next best step was to implement rate limiting in the hosted version. [1] https://tools.simonwillison.net/
square_usual · 2025-06-12
There's many examples of exactly what you're asking for, such as Kenton Varda's Cloudlfare oauth provider [1] and Simon Willison's tools [2]. I see a new blog post like this with detailed explanations of what they did pretty frequently, like Steve Klabnik's recent post [3], which while it isn't as detailed has a lot of very concrete facts. There's even more blog posts from prominent devs like antirez who talk about other things they're doing with AI like rubber ducking [4], if you're curious about how some people who say "I used Sonnet last week and it was great" are working, because not everyone uses it to write code - I personally don't because I care a lot about code style. [1]: https://github.com/cloudflare/workers-oauth-provider/ [2]: https://tools.simonwillison.net/ [3]: https://steveklabnik.com/writing/a-tale-of-two-claudes/ [4]: https://antirez.com/news/153
throwawaystress · 2025-01-05
Simon Willison’s blog: https://simonwillison.net/. How the heck does he have time to post all that amazing stuff, AND be coding open-source, AND have some kind of day job? My god, I wish I were that productive.
simonw · 2025-01-02
I'm contemplating adding something like that to my https://simonwillison.net site at the moment: most of my content works great as a blog but I like the idea of having some content that's more "page like" which I can continually update - things like a list of currently active projects.
constantinum · 2024-07-30
I would recommend Simon Willison’s blog https://simonwillison.net/
jimmySixDOF · 2023-11-04
On a retrospective take of the state of AI 1 year this month into LLMs post ChatGPT, I would like to single out Simon Wilson as the MVP for Open AI tooling contribution. His datasett projects are a great work in in progress and the prodigious blog posts and TIL snips are state of the art. Great onboarding to the whole ecosystem. I find myself using something he has produced in some way everyday. https://simonwillison.net/
JPKab · 2020-12-12
I see this project get posted to HN regularly, and I upvote it every goddammed time, because it's that good. The creator has a great blog as well. https://simonwillison.net/
vunderba · 2026-05-02
So I see pretty modest traffic to my site. Discounting bots/scrapers, it's about a thousand visits a month, so it's not a lot. I also don't have a newsletter, which definitely doesn't help. Honestly, you really should focus on a niche. For example, Simon Willison [1] keeps his blog super consistent, he's the AI journalist. Josh Comeau [2] is another good example from Hacker News: probably 99% of his content is front-end design and development. Becoming (or establishing oneself) as an expert in some space goes a long way toward increasing your subscriber count. My articles are mostly satirical in nature and have all determinism of a literary brownian motion machine (writing on algorithms, thought experiments, fiction, etc.) so there’s not a particularly cohesive identity to the site. Another thing that is often mentioned is that you need to publish regularly and often. I tend to be a perfectionist, and spend a lot of time crafting each article with custom illustrations, animations, and interactive elements. This works for people like Bartosz Ciechanowski [3], but I'm not sure it helps drive traffic for me personally. [1] - https://simonwillison.net [2] - https://www.joshwcomeau.com/svg/interactive-guide-to-paths [3] - https://ciechanow.ski/mechanical-watch
whitehexagon · 2025-12-22
SimonW used to have more articles/guides on local LLM setup, at least until he got the big toys to play with, but well worth looking through his site. Although if you are in parts of Europe, the site is blocked at weekends, something to do with the great-firewall of streamed sports. https://simonwillison.net/ Indeed, his self hosting inspired me to get Qwen3:32B ollama working locally. Fits nicely on my M1 pro 32GB (running Asahi). Output is a nice read-along speed and I havent felt the need for anything more powerful. I'd be more tempted with a maxed out M2 Ultra as an upgrade, vs tower with dedicated GPU cards. The unified memory just feels right for this task. Although I noticed the 2nd hand value of those machine jumped massively in the last few months. I know that people turn their noses up at local LLM's, but it more than does the job for me. Plus I decided a New Years Resolution of no more subscriptions / Big-AdTech freebies.
cube2222 · 2026-08-18
It’s open source under the Apache 2 license, not source available. Accepting contributions is not required to be open source. SQLite doesn’t accept contributions from random people either [0] (though you could argue being public domain isn’t being open source). Anyway, this is great, I was waiting for this to take the language for a spin! Congrats to the Mojo team! [0]: https://simonwillison.net/2025/Dec/29/copyright-release/
1659447091 · 2026-08-07
> There was someone on HN who shared a collection of dozens of single purpose local/offline web apps Maybe this one? Useful patterns for building HTML tools: https://news.ycombinator.com/item?id=46223882 The direct link to the collection of HTML tools: https://tools.simonwillison.net
janpeuker · 2026-07-26
+1 Opus 5 is more creative and broad which is great. But I feel the new "use your judgement" leads [1] to it often escaping its sandbox or cheating, it keeps breaking specific rules I explicitly set. That eagerness [2] may be desired for agentic coding but it really breaks writing specifications, documentation or research and yes burns tokens doing unasked for work. [1] https://claude.com/blog/the-new-rules-of-context-engineering-for-claud… [2] https://simonwillison.net/2026/jun/11/fable-is-relentlessly-proactive/
ValentineC · 2026-07-25
I wonder if this is one of the few times simonw's pelican was broken on the first try [1]: https://tools.simonwillison.net/markdown-svg-renderer#url=https%3A%2F%… My experience with Opus 5 thus far haven't been that great either. It's been making mistake after mistake editing my coding plans that were being reviewed by GPT-6 Sol. [1] https://simonwillison.net/2026/Jul/24/introducing-claude-opus-5/
stusmall · 2026-07-22
I'm glad someone ran the numbers on this. Every single Simon Willison post of an SVG is followed with someone dismissing it saying "I'm sure they train on it by now." This is despite a good blog post with sound logic on how easy that is to catch. [1] Glad to see someone took the time for a quantitative analysis of dumb little animals riding dumb little bikes. 1. https://simonwillison.net/2025/Nov/13/training-for-pelicans-riding-bic…
Leftium · 2026-07-14
Theo video based on data from Tencent's Autocodebench: https://youtu.be/iV1EcfZSdCM Conclusion: Elixir was the best (had the highest problem solve rate). Reasons (Theo's interpretation): - code collocation, where documentation is integrated directly within the source code - design philosophy of a language (readability, clear idioms, and strict expectation management) --- Sources from video: - https://github.com/Tencent-Hunyuan/AutoCodeBenchmark/tree/main - https://martinalderson.com/posts/which-programming-languages-are-most-… - https://simonwillison.net/2026/Jan/19/nanolang/#atom-everything
cube00 · 2026-06-12
> I care a lot about not wasting people's time. I find it hard to agree with this when the selling point for your paid newsletter is "Pay me to send you less!" [1] It feels like you're flooding the feed so people feel pressured to join the newsletter because they might miss something important. [1]: https://simonwillison.net
tvissers · 2026-06-10
I can recommend having a look at secure design patterns for LLM agents. Simon Willison has a great post on this: https://simonwillison.net/2025/Jun/13/prompt-injection-design-patterns…
mer_mer · 2026-06-10
It's interesting that Gemini 3(.1?) Deep Think is still the best at this task and it's still not really generally available. Maybe Fable could match it at higher effort levels? https://simonwillison.net/2026/Feb/12/gemini-3-deep-think/
geophph · 2026-05-08
Simon Willison has mentioned this (portable html / js apps) before and has a collection online https://tools.simonwillison.net
theshrike79 · 2026-05-04
I like the simonw tools approach: https://tools.simonwillison.net/ Basically you have a repo with web-based tools and a way to deploy them on change. Then you can just quickly whip up (or ask an LLM to do so) any simple tool and it's live within minutes.
endymion-light · 2026-05-01
Not sure about this one - my slightly terrible portfolio website that i'm in the process of completely revamping (bemben.co.uk) managed to mog simon wilsons webblog (https://simonwillison.net/) - which is a far better website in all aspects! Maybe introduce some additional stats like load times, content analysis etc - and tweak the prompt slightly - just because a website looks slightly newer, doesn't mean it's better at all!
CubsFan1060 · 2026-04-28
Great post last night from Simon: https://simonwillison.net/2026/Apr/27/vibevoice/
eranation · 2026-04-24
Yes but it has nothing to do with the language, and everything to do with the ecosystem (npm tried to make thing such as mandatory MFA etc, npmjs is so big maintainers pushed back) TypeScript on its own is a great language, with a very interesting type system. Most other type systems can’t run doom. https://simonwillison.net/2025/Feb/27/typescript-types-can-run-doom/
andai · 2026-04-08
Yeah, I was thinking about simonw's lethal trifecta[0] and how to solve it and my conclusion was "you cannot", i.e. you just accept a certain level of risks for the rewards it offers. The "agent never sees keys" approach prevents key exfiltration, but it doesn't prevent agent from nuking what it has access to, nor prevent data exfiltration. The best advice I heard to protect against prompt injection was "just use Opus" ( ... which was great advice before they lobotomized it ;) But even without injection, most of the horror stories are from random error, or the AI trying to be helpful (e.g. stealing your keys or working around security restrictions, because they trained or to really want to complete a task.[1]) tl;dr yolo [0] https://simonwillison.net/2025/Jun/16/the-lethal-trifecta/ [1] https://www.reddit.com/r/ClaudeAI/comments/1r186gl/my_agent_stole_my_a…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close