I’ve got a few that I think are interesting enough to share.

When I was getting divorced a few years ago, I had to wait out the mandatory six month waiting period (aka “cooling off” period). Since I had the actual date the divorce would be finalized, I wrote a script and scheduled it to send me a countdown every morning at 4am. For a few months upon waking up I was greeted by an SMS with the ever decreasing number. I called it my freedom counter and loved watching people I told about it go from curious to mildly uncomfortable to amused.

Years later I repurposed the idea and made a wedding day countdown. This one started counting up after the big day, for continuous joy.

At some point I started building a ridiculously tiny SaaS service around it (and even registered domains undorthe.wedding and dothe.wedding), but never got around to finishing and launching it.

---

I’ve been tracking my weight daily since 2019. I used to just add an entry to an Airtable base, but the free plan has a per-base entry limit I’ve long surpassed.

I didn’t want to pay $10/mo just for that one thing, so I built a solution which let me send an SMS with the daily weight to a Twilio number, which then sent a request to an API endpoint I built, which then stored it in a TinyDB file on the server, which I then backed up to Backblaze using restic. The code behind the endpoint also sent me a graph of the last two weeks worth of entries, and the date I last weight that much or less.

I then decided to decommission the server hosting the endpoint, and in order to avoid having to pay for something else rebuilt it as a combination of Airtable and GH Actions. I have a base in which I enter the daily weight, then a GH Action fires a few hours later, and it gets all the entries in the base, reads a TinyDB file from a separate repo, updates relevant records, updates the TinyDB file, and deletes old entries from the Airtable base. This is now costing me $0, which is fun in its own right.

---

I started working from home during the pandemic, and my living room worked quite well as a personal office while I was single, living with just a cat. As my wife and I moved in together, there have been some challenges with working from a shared space, and we particularly found a need to communicate when I’m on a video call.

I used the Circuit Playground Express I got at PyCon 2019 as an on-air light. It was plugged into my computer, which exposed it as a USB drive, and it ran an infinite loop that set the LEDs to red if I was on a call and green if I wasn’t. I wrote a script that would detect the presence of a Zoom call process to do that automatically, and then another to manually toggle the flag using xbar.

---

EDIT: I thought of one I actually wrote for work! We’re a small team and were discussing making our on-call rotation official some time ago. Since we were starting from scratch, I suggested we try daily rotations (instead of the customary weekly ones), largely based on some things I’d read right here on HN. We don’t yet use any tooling beyond a manually managed Google Calendar, so I wrote a script to generate a fair schedule (e.g., no one gets stuck with all Fridays) and output importable files for both the shared calendar and people’s individual ones. We’ve used it for a few periods of time, and it seems to be good enough for our needs.