Make Your Phone Grayscale

Like I said in my last post, I'm a big fan of my phone being in grayscale, which helps reduce screentime. This is a quick guide on how to set that up using Shortcuts in a way that automatically disables it for certain apps like Photos and Camera.

Read More

Reverse Engineering iOS Shortcuts Deeplinks

I am a big fan of my phone being in grayscale, which reduces screentime and cuts into into how attention-grabbing the bright red app badges are. The problem is that I don't want all apps to be in grayscale: some because they're effectively broken (Photos, Camera) and others because I'm okay spending time on them (Books, Chess, Crosswords). I used to selectively do this with a Cydia tweak I wrote but nowadays I do it with Shortcuts. A friend asked me how to set it up on their phone, but while the actual shortcut bit is trivial, creating the automation to run it requires tapping a row for every app on your phone. So before I encouraged them to do just that (you should do just that) I wanted to see if Shortcuts had a better way to import or programmatically create automations—through deeplinking.

Read More

Getting access to the Letterboxd API with mitmproxy

Letterboxd has an API but it's available by request only. This is why in the past my projects have either relied on their export functionality (like Letterboxd Gaps) or simple webscraping. This works well when you only need your own activity data, but struggles when it comes to querying multiple users and intersections of their data. But the iOS app does it just fine—enter mitmproxy. We can use it to extract the API tokens the app uses and leverage them in scripts of our own.

Read More

Unsubscribing from Reddit Community Notifications

Reddit has been recently ramping up their "Popular post in" and other community notifications. I find these all incredibly low value, and want to turn them off. There's no UI for turning everywhere—just individually per subreddit. But we can do it for all of them with a quick script!

Read More

America’s Reading Habits

There was a recent tweet I saw saying "I’m willing to bet my entire net worth on neither the median nor the average American reading 11 books a year." There's a lot of people pushing back on it, but all citing different reasons why the data could be wrong. Rather than do that, we can just dig into the underlying data.

Read More

Letterboxd Gaps

Kirsten Dunst had a great moment in a 2016 Hollywood Reporter roundtable in response to actresses lamenting that they don't work with female directors, saying that "[she's] worked with so many female directors" and that "it's up to us as actresses to give the opportunity to first time directors". While actors have a lot more sway than audiences in getting projects greenlit, I was curious what percentage of the movies I'd seen were directed by women. I googled around, but the website I found wasn't working and this script was non-trivial for breaking down custom lists. So I built my own!

Read More

The Poster for Possession

I recently watched the 1981 movie Possession by Andrzej Żuławski. It's a weird movie, ostensibly horror, but primarily used as a lens for the dissolution of the director's marriage (and political commentary). However the default poster on Letterboxd is explicitly horror focused (claws gripping into a woman’s back, blood trickling down, and bright blue spikes like something out of The Thing poster). I was curious about why they went with this and tried to look up some details on the poster — thus began the rabbit hole. Come along with me on a two day hyperfixation through the history of Possession and its artwork!

Read More

Apple Podcast Transcript Viewer

Apple recently added transcripts to their Podcasts app, quickly becoming one of my favorite new features. I wanted to copy a paragraph out of the transcript though, and ran into the 200 word cap on their selection screen. Luckily the MacOS Podcasts app locally caches the transcripts, and so I built a simple web app that allows you to browse the transcripts and easily select parts of them.

Read More

Fixing Low Quality Wix Gallery Images

My brother has a website (https://spencerbeals.com, go buy some art!) which uses Wix. There's a product page view where you can see multiple images of a given piece and click to zoom in, but the gallery images are somehow lower resolution than the non-zoomed version, making for a pretty bad user experience. I couldn't find anyway to change this in the tool (or even any forums with people asking about this) but luckily we can fix it with Javascript.

Read More

Harry Potter and the Anatomy of a Speedrun

Speedrunning is when you try to complete a video game as fast as possible. You can speedrun individual levels, you can speedrun specific categories like 100% where you try and collect all items and complete all quests, etc. but the main category is Any% — get to the end as fast as possible, anything goes. For many games an Any% speedrun looks similar to someone playing the game normally, albeit with a lot of skill. But for some games the Any% run looks completely different, like Super Mario World's current 41-second World Record. How do people come up with these? Using Harry Potter and the Philosopher's Stone for the GameBoy Advance, I'm going to do a technical deep dive into the Any% speedrun and how you could discover it starting from scratch.

Read More