[Featured]
- Archive Archaeology
- Building a Balatro-lite game with vanilla web tech
- It's 2026, why are vendor prefixes still in your CSS?
- Why can't I read this picture book?
[Handhelds & Retro Gaming]
[Jekyll & IndieWeb]
- Plugins instead of patches
- Adding support for Webmentions
- Moving to GitHub Actions (and adding .txt posts)
- Reducing commit log noise caused by a GitHub Action
[Tinkering]
- Building a Home NAS from Mostly Spare Parts
- Using emoji to bypass FRP on a decade-old tablet
- Adding an internal speaker to the Pocket CHIP
- The Raspberry Pi Pico and the Pimoroni Pico RGB Keypad
[VR]
View all VR Stuff[Reviews]
The DS Pico might be the last DS flashcart you'll ever need
Building a Home NAS from Mostly Spare Parts
The LinYuvo KS42 Wireless Joycons for the Nintendo Switch
The Bigme B6 Color E-Ink Tablet
The Mangmi Air X
[Recent]
I turned my DevTerm into a Game Boy Camera and Printer
The Game Boy Camera was brilliant and stupid in equal measure, a 128x112 pixel sensor bolted on top of a cartridge, printing to thermal paper on a Game Boy Printer…
Your forecast is accurate and still wrong
Icons work because they’re fast. One glance, immediate meaning, no reading required. The tradeoff is that they compress complex information into a single symbol, and compression always drops something.
It's 2026, why are vendor prefixes still in your CSS?
I’ve spent more time over the last 20 years working on front-end asset pipelines than I’d care to admit. One thing that kept coming up when inheriting older codebases was…
The DS Pico might be the last DS flashcart you'll ever need
In 2007 I was deep in the DS flashcart scene, cycling through a string of carts. GBATemp threads, firmware drama, custom skins, compatibility lists. By 2009 I’d moved on. Nearly…
Reducing commit log noise caused by a GitHub Action
I have a “now playing” widget on my /now page that shows the last track scrobbled to Last.fm. It’s powered by a GitHub Actions workflow that polls the Last.fm API…