I have the Roborock S7 MaxV, and it's fantastic. It automates vacuuming and mopping, keeping my allergies under control at the touch of a button. I have a number of routines that I use, and wanted to schedule some of them to run. This is built into the app, but only allows you to do this for set times and days. I instead wanted to automatically suggest a full clean when I left the house (max once/day) where I could approve/disapprove, but was blocked by the poor integration between the iOS app and the normal way to do this kind of customized triggering, Shortcuts.
Read More
The Books app on iPhone (previously named iBooks) allows you to highlight text and leave notes. Unfortunately there's no good way to export these, as the information isn't stored in the ePubs themselves. The information is saved in the Media folder though, which is accessible from iPhones over USB. I built an app to read this into a searchable UI without having to install a bunch of software or pore through full backups.
Read More
I noticed a while back that a lot of new romantic comedies (especially those pumped out by streaming services like Netflix and Amazon Prime) have optimized their formulas to the point that you can predict basically the whole plot from just the title and movie poster. To bring a little more spice into them, I started playing bingo with common tropes. To make it easier, I built a website that allows you to build a bingo board out of your own tropes and some defaults, and then compete to get bingo first (or in many cases, as many bingos as possible)!
Read More
I've been getting into crossword constructing, but found the initial process of staring at a blank 15x15 grid to be one of my least favorite parts. Just like themes and seed entries can be good ways to get a foothold, I ended up building this tool to allow you to explore interesting constructions through an interactive heatmap of previous NYTimes puzzles. As you place black squares into the grid it will update the heatmap to only show grids that include those black squares (though ideally you should diverge from history: 70% of published puzzle grids are novel).
Read More
Back in 2016 I wrote some code to automatically transcribe 'Pearls Before Swine' comic strips to make them searchable. At the time, this transcription relied on Tesseract, the "state of the art" OSS OCR program. As part of that I used a segmentation algorithm based on linear whitespace to separate the original strip into boxes, and then attempted to do something similar for the bounding boxes of the text. This had a lot of problems, in part because the OCR program was not that good on the handdrawn font, in part because the dialogue boxes were inconsistent (which you can see in the image below), and in part because my code wasn't very good.
Read More
I often forget how to do this, but I find it incredibly useful so here's a quick image-rich tutorial on how to set up a Screenshots folder in your dock on MacOS that's visually accessible:
Read More
My brother is an artist (check out his stuff at https://www.instagram.com/beals.art/ or at https://spencerbeals.com). He had created some art pieces that he wanted to talk about in depth, by panning over the image. Unfortunately while there are a lot of tools online for a Ken Burns-esque single pan-zoom combination, there wasn't one that that worked with multiple, and not one that smoothed out the camera, or allowed for looping.
Read More
I was up on campus again for my 5 year reunion, and it felt wrong to not be doing something slightly sketch around the Dartmouth ID, just for old time's sake. Luckily, I'd recently acquired a Flipper Zero for some exploration around the old Gamebody Link Cables which allowed me to put some of my historical information to the test.
Read More
My family's dog of 10 years, Neko, unfortunately passed away a couple of months ago. My parents decided that now was a good time to start looking for another beautiful dog to bring into their life, but were having some trouble finding a dog that fit their requirements. Neko, and our dog before that, Macy, were both black British Labrador females. More than that, they actually came from the same breeder, some 14 odd years apart. Unfortunately the breeder didn't have any available, and so my dad went out to get a list of breeders that he could contact. So he shot me an email.
Read More
For years, Spotify had a way to import playlists from iTunes into Spotify. Now, there are a variety of websites that claim to do it, but either can't accept large .xml files, or crash constantly. So I decided to write up my own. It just takes in the iTunes Media Library.xml file, extracts the playlists, and lets you choose which one you want to download. From there, it searches using the public Spotify API for the song name and artist, and combines them all into a long list of track IDs, that can be easily copy and pasted into Spotify.
Read More