The Trinity Hall Prime and Other Pixel Primes

About 3 months ago I watched this video by Numberphile on the "Trinity Hall Prime". You can watch the video but here's a quick summary. As a graduation gift, a mathematician from Trinity Hall produced the following 1350-digit prime number, and printed it out to be framed. The top bit is the crest of the school composed out of 1's and 8's, followed by a (nearly) unmodified series of 0's, and finally ends with a single 1.

Read More

Saving GroupMe's

A while ago I made GroupMe Analysis, which is a bot that you can add to your group, and then see interesting facts about it, including number of comments, likes, and a person-by-person breakdown. However, I couldn't find any tool to download an entire GroupMe that wasn't just making a CSV file or something boring like that. So I wrote a Python file that will take in an access token from GroupMe and download an entire conversation, attachments and all, for permanent offline viewing.

Read More

Renaming Desktops on Mac

I've had a task since February of 2017 in Asana to see if I could figure out how to rename desktops. Desktops are what appear when you press "F3" at the top, which have the default names "Desktop 1", "Desktop 2", etc. I knew it was possible because there was an app called "TotalSpaces" that does this (among many other things). However, I wasn't a huge fan of how it accomplished it, and it also costs $20. I knew that I would have to go the SIMBL route (just like for my modifications Messages with Message Indicator), but my attempts to find the right class to hook into repetitively failed. Luckily, I finally stumbled onto a pretty convoluted method of doing it, and built it in a day or so!

Read More

Catan Map Generator

I've played a fair amount of Settlers of Catan in my day, and I find that a lot of the skill in the game comes from the initial placements. Almost two years ago, I built a rough setup that randomized tiles and numbers. My plan was to screenshot the boards, and make posts on Reddit to discuss the best positions to start a discussion and improve my skills. Then, I made a post on Reddit.

Read More

Minor Anchor Tweak - Scrolling Fix

For some reason, my version of Anchor completely bugs out when you start increasing the size of the text input beyond a certain point. This was making it really hard to write longer articles, so I tracked down the fix.

Read More

Guessing Harry Potter

I was working on a project in extracting typing from hand movement in 3D space, and needed an API for generating sentences. I found a few ones online, but most of them weren't high enough quality sentences, or weren't free. So I decided to make my own, sourcing it from random book files. Then, as a proof of concept, I figured I'd make a short game out of it. The game that I settled on pulls a random quote from one of the 7 Harry Potter books, and you have to decide which book it belongs to.

Read More

The Mathematics Behind "Ride the Bus"

When I got to college a friend introduced me to a drinking game called "Ride the Bus." The rules for the full game are here, but I was interested in the final section. For that section, there are four questions. For the first card, is it red or black? For the second card, is it higher or lower than the first card? For the third card, is it in between (inclusive) or outside of the first two cards? And for the fourth card, what suit is it? You continue pulling cards until you get all four in a row right. If you get any one wrong you drink, and start over.

Read More

Cleaning out Google Groups

Google Groups are one of the products that has languished in 2014 in terms of its feature set and visual design. This means that many useful abilities like mass-deleting topics and exporting Google Groups aren't implemented. For exportation, some people have come up with clever workarounds by crawling the website. In the past I've used gggd, a fantastic Python command-line script to download full groups that I highly recommend. However, I couldn't find anything to mass delete topics...so I made one.

Read More