
Automatically adding my running soundtrack to Strava activities
Building a public app for the first time, syncing song names to relevant Strava activities using the Strava and Spotify APIs, Redis, Flask and Postgres.
Building a public app for the first time, syncing song names to relevant Strava activities using the Strava and Spotify APIs, Redis, Flask and Postgres.
Non-invasively integrating my Aiphone GH-1AD intercom into Home Assistant, read only, by hooking it up to an ESP32 and programming it with ESPHome.
Replacing Reddit, Hacker News and global news scrolling with a self-hosted RSS setup using Miniflux and Tailscale, and then vibe-coding an RSS feed summarizer.
I just re-installed Docker Desktop on my Macbook Air after a few months of exclusively using Docker on remote machines using VS Code and ssh. I was puzzled to see a 403 coming back when pulling an image from ghcr.io, which obviously is an open registry: $ docker pull ghcr.io/astral-sh/uv:latest Error response from daemon: failed to resolve reference "ghcr.io/astral-sh/uv:latest": failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://ghcr.io/token?scope=repository%3Aastral-sh%2Fuv%3Apull&service=ghcr.io: 403 Forbidden Turns out that docker login credentials survive when you uninstall Docker Desktop, and an ancient (now expired) GitHub token was being used in the above request. ...
Finding good material about software product management used to be pretty hard. I put this reading list together as an internal Spotify document in 2017, and often shared it with folks that expressed an interest in product management. At some point I made a public version, and it’s mostly been collecting dust in my Google Drive since then. For my PM peers, maybe it’ll be a fun, nostalgic throwback to the stuff we used to share and emulate. ...
Exploring the difference between AI-powered augmentation and AI supervision, and how the future of knowledge work may involve less doing and more orchestrating.
Building a running pace and race time converter in 2 hours, using Claude and Cloudflare.
Monitoring scheduled Proxmox backup jobs, using the free Healthchecks.io service and custom hook scripts.
Using custom cloud-init scripts to quickly pre-configure new Proxmox VMs.