Everything you care about in one place

Follow feeds: blogs, news, RSS and more. An effortless way to read and digest content of your choice.

Get Feeder

til.simonwillison.net

Simon Willison TIL

Get the latest updates from Simon Willison TIL directly as they happen.

Follow now 28 followers

Latest posts

Last updated 3 days ago

Configuring GitHub Codespaces using devcontainers

3 days ago

GitHub Codespaces provides full development environments in your browser, and is free...

Rate limiting by IP using Cloudflare's rate limiting rules

about 1 month ago

My blog was showing poor performance, with some pages taking several seconds...

Using Playwright MCP with Claude Code

about 2 months ago

Inspired by Armin, I decided to figure out how to use the...

Converting ORF raw files to JPEG on macOS

about 2 months ago

One of our cameras takes raw photos in ORF format, which I...

Publishing a Docker container for Microsoft Edit to the GitHub Container Registry

about 2 months ago

Microsoft recently released Edit, a new terminal text editor written in Rust...

Redirecting a domain using Cloudflare Pages

3 months ago

I wanted to redirect https://global-power-plants.datasettes.com/ to https://datasette.io/ - I decided to spin...

A tip for debugging pytest-httpx

3 months ago

I use pytest-httpx in a bunch of my projects. Occasionally I run...

SQLite triggers

3 months ago

I wrote a Python script, triggers.py, to help me understand what data...

Building and deploying a custom site using GitHub Actions and GitHub Pages

5 months ago

I figured out a minimal pattern for building a completely custom website...

Styling an HTML dialog modal to take the full height of the viewport

5 months ago

I've been experimenting with the HTML dialog element recently, for example in...

Running jupyterlab via uv tool install

5 months ago

I tried to get jupyterlab working via uv tool install today and...

Using a Tailscale exit node with GitHub Actions

6 months ago

For an (ethical) scraping project I found that my low-volume scraper was...