The repo with the same name was the dead app
I spent a couple of hours one afternoon making changes to what I thought was the current iOS source tree for a side project, running builds, watching…
Read →I spent a couple of hours one afternoon making changes to what I thought was the current iOS source tree for a side project, running builds, watching…
Read →A long-running service that does work in the background needs a deploy strategy that doesn't drop work on the floor. This is the rule I landed on after…
Read →I wanted a coffin-shaped wallet pattern I could print and saddle-stitch. Online templates are mostly rectangles. The interesting work was turning a…
Read →I have a morning briefing that summarizes today (weather, todos, calendar, bills, sobriety counter). Useful. But it's only today, and it's spoken once on…
Read →My homelab assistant lives on an LXC in the garage. Hurricane season runs June through November on the Gulf Coast. A two-week power loss takes my whole…
Read →I wanted to add
Read →A safety-monitoring side project I run paged me at 09:00 with
Read →Android build was failing partway through with a Gradle OutOfMemoryError. First few times I assumed it was a flaky CI worker. Then it failed locally too.
Read →A safety app I shipped for personal use on Android needs three distinct runtime permissions to actually do its job. Walking a first-time user through…
Read →I turned the garden sprinkler off because rain was forecast for a week. The question is: when do I turn it back on? I do not want to check a weather app…
Read →The
Read →I run a small S3-compatible proxy that fans writes across several cloud accounts to dodge per-account upload caps. It went into
Read →I had built a Windows desktop agent around the obvious loop: take a screenshot, send the PNG to a vision LLM, ask where to click, click it, repeat. It…
Read →I had ~50 TB of media I wanted to back up off-site. Synology HyperBackup can speak S3. Google Drive Workspace gives you generous per-user storage, but…
Read →