@evan love Web Components - I often prompt it to create those directly, but I still want them all in a single file so I can easily copy and paste the whole lot out of the LLM at once
I figured out a prompting pattern for getting Claude to produce fully self-contained Python scripts that execute with "uv run" using PEP 723 inline script dependencies - and now I can one-shot useful Python utilities with it https://simonwillison.net/2024/Dec/19/one-shot-python-tools/
I have a similar set of custom instructions I use with Claude Artifacts to get it to produce mobile-friendly single page HTML apps that run without a build step
I wrote a thing about "Storing time for human events" - how if you're building an events website used by actual human beings the standard advice of "convert times to UTC and just store that" isn't actually the best approach https://simonwillison.net/2024/Nov/27/storing-times-for-human-events/
@demiurg@lmk I'm 100% on "store timestamps of when stuff happened as UTC" - the one edge-case here is for events that haven't happened yet where human beings think about them in terms of local time
If you have an Apple Silicon Mac with >24GB of RAM and >5GB of available disk space and uv installed, try running this command to see the new model in action (replace IMG_4414.JPG at the end with a path to your own image)
Some notes on running the new SmolVM vision model (~4.2GB) on my MacBook Pro M2 at 75 tokens/second to describe a photo, using a shell one-liner powered by uv and mlx-vlm https://simonwillison.net/2024/Nov/28/smolvlm/
Wrote about a delightfully subversive use of a Bluesky custom labeler: displaying labels on accounts belonging to British public figures showing which expensive private school they went to and what the current fees are for that school https://simonwillison.net/2024/Nov/22/private-school-labeler-on-bluesky/
I should clarify: when I talk about documentation here I'm not talking about code comment style docs - I'm talking about "this is how to use this library / API" docs
If your code is clearly written and nothing else ever needs to call it then I don't particularly mind if there's no additional documentation - but if I'm expected to use call your library from my own code I'm very much not keen on being told I have to read all of that code myself just to use it!
The more experience I gain as a software developer the less tolerance I have for the idea that something doesn't need documenting if you can go and read the source code instead
(That's despite getting much, much better at reading source code to answer my own questions as I gain experience)
I want to enable comments on my blog again, but (I'm current possibly overthinking things in that) I'm worrying if I need a privacy policy, or how I should think about things like GDPR, and should users be able to delete their comments?
Never thought about this stuff for a second back in the 2000s!
I interviewed Rajiv Sinclair about his team's new project, VERDAD - an outstanding piece of data journalism that tracks 48 US talk radio stations (many in Spanish), archives their audio, transcribes it and uses Gemini 1.5 to help identify potential snippets of misinformation - then presents the results in a UI for human review
I'm hoping to turn this into a series of YouTube interviews with people building cool data projects where we nerd out about what they've built and how they built it, so I'm optimistically thinking of this as episode one! https://www.youtube.com/watch?v=t_S-loWDGE0
Open source developer building tools to help journalists, archivists, librarians and others analyze, explore and publish their data. https://datasette.io and many other #projects.