Yesterday, Licinius, at leisure
we played much on my tablets,
as it was agreed that [we] would be self-indulgent:
each of us writing our lines of poetry
was playing, now in this meter, now in that one, —Catullus 50
I was glancing through the SCAV 20261 list during the NeurIPS push when an item captured me: an Automated Tarot Machine (abbreviated ATM).
It was a showcase item (worth many points), it looked like a challenge, and it was absurd in a way that tickled my sense of humour, so I got pretty excited. Once the conference deadline passed, I was off to scavving. I enumerated my home inventory in my head, and realized that I had many of the items to make this happen — a deck of Tarot cards I've never used or known how to use from an estate sale last summer, a Raspberry Pi, a DAC HAT for the Pi, and an analog speaker.
As I went about finding a good team to scav for, I thought through the execution plans. There's a Pareto curve of coolness and feasibility. I had one day and a half and a modest budget, and wanted to make the best ATM that I could. I considered a card shuffler paired with an image sensor. Or using good-old-fashioned punched holes in the Tarot card (with 7 holes since 27 > 78 tarot cards > 26) to encode the card meaning like a Jacquard loom of faith. Or having the cards lined up on a circle with a hand in the middle to kick 3 cards out. With the principle of no-screens and tractability, I went with this plan: a Raspberry Pi takes in some input, processes it, and prints a reading plus interpretation out; a speaker plays mysterious music while instructing the user like an actual ATM.
Friday afternoon. I found a team (Burton-Judson's team aka "Big Burton") through my friend, and it was time to acquire necessary materials.
I needed a mechanical keyboard. I recalled that two years ago when I first got access to the CS compute cluster, the tech staff gave away some old spare trackpads while showing me a cool Feynman integration trick. I tried my luck there this time, and after explaining that I was building an Automated Tarot Machine for SCAV, the tech staff team happily let me take a keyboard.
Rather serendipitously, the only thermal printer I could find that supported linux and arrived on time was a 4''×6'' label printer, so the Tarot reading doubled as a cool laptop sticker.
I caught up on some sleep on Friday night, and on Saturday afternoon, I sketched a plan with Marcus,2 took the components to the BJ team headquarters, sadly barely missing the part where the team set a tinfoil hamster on fire in a microwave for "25 warm and cozy points".
I arrived at the headquarters in which I was about to spend the next 10 hours, a dim basement space carpeted in blue, right outside the laundry room, scattered with glue guns, planks, cotton, scissors, and stuffed testicles. I had unit-tested all my components, loaded Raspberry OS Lite onto my Pi, and had a vague idea of what to code into the Raspberry Pi and how to display it. Time to embody the Ten of Wands and get to work.
I had a copy of the 1971 Rider-Waite tarot deck, which I found out had an open-sourced scan of each card. All that was needed was converting it to black and white.
The thermal printer was surprisingly high quality! I formatted a 4''×6'' design into the shape of an ATM receipt and inserted lorem ipsum text for the interpretation for now.3
Instructions were mostly given through the speaker, which also played the Introitus of Mozart's Requiem on repeat. After testing some truly robotic voices, I went to a corner facing the bathroom, breathed in deep, expanded my ribs, and narrated some instructions my friend the next day, terrified, identified as AI.
Now I know how to sound like subway announcements.
There were a few ways I could've gone about the "non-random" fortune-telling algorithm. I didn't quite enjoy the Claude-generated interpretations and wanted to go for something more scrappy. LLM-generated readings felt anti-mystical. The I Ching was my model of divination and its terseness was the opposite of an LLM. I briefly considered running a <100MB word embedding model to match cards to questions, but given that even an 8B Embedding model had not been great at semantic clustering, thought it would probably be effort wasted. I ended up regex matching on question topics (with a lovely hit rate of 59% on common Tarot questions pulled from the internet) which yielded a score on dimensions like 'time' and 'heart'. Then the question scores were matched to the cards, each tagged along the same dimensions. Regex, rather delightfully, was the technological contemporary of a cash ATM.4
I pulled a library of card-meanings as interpretation for each card. After seeing a few oddballs in the test runs ("This card represents an older man with an insightful, deliberate spirit, likely born between May 11th and June 10th"), I decided to hand-prune the 78 card meanings and ended up rewriting most of the interpretations (this is a habit I got from manually inspecting LLM-generated finetuning datasets in my most recent research). Some friends of mine say I have a knack for uttering profound-sounding strings at a snap. Profundity may not be the right word, but this skill certainly came in useful. Some highlights: Queen of Cups, the water knows the shape of what you carry; King of Wands, the fire speaks first, all other voices wait; The Star, Starstruck and star-crossed.
I was tempted to create polyhedral constructions with the Tarot cards, but it seemed a little sacrilegious and impractical. Instead, I was offered as a base a rather imposing and tippidy wooden structure. Marcus then brought me to the BJ SCAV room to dig up some materials. Among them he listed a full set of saw blades without a handle; DELL computers from the last century; leftover materials from previous SCAVs. We made many turns in the winding corridors under the low buzz of the BJ basement. We scavenged for a good box amongst a pile of planks, old keyboards and flattened cardboard boxes, and took a roll of Kraft paper, a plastic crate, and two glass boxes. A vision was in the cards.
Noah and I wrapped the Kraft paper around the wooden scaffold. The reading would be printed behind the veil of the Kraft paper and channeled through a slit. Noah and Piyush painted the entirety of the box black — indeed matching with the twin BJ showcase item, a "space-themed activity cube with an interactive bead diagram of space to teach navigation, translations of alien languages, breathing in low-oxygen environments, grappling with the impenetrable loneliness of space." We placed the keyboard on top, the speakers behind, and propped the thermal printer up with the crates and glass boxes.
Sunday 2am. I needed to sleep. I handed off the work rather gratefully to Noah, who, as part of his all-nighter for SCAV, tiled the cards on the box. Nathan sawed wood and propped the Fool card up. While all this was happening, I lay on my sofa, restless with anticipation.
And I left from there [so] inflamed
by your charm and wit, Licinius,
that neither did food placate poor me
nor did sleep shut my little eyes in peace,
but rather I tossed about on the whole couch
from uncontrollable spasms, wishing to see the light —Catullus 50
8:30 am. May 8th, 2026. Ida Noyes Hall. The ATM box was ready and carried over by the team from BJ. I brought the electric components and started re-assembling them. At 9am the somber music of the Requiem was flowing as the thermal printer cranked out some beautiful little artefacts.
9:30am, showcase judge time. When the SCAV judges came to the Big Burton section, we presented the activity cube first, and then I introduced the ATM: "It's a moonless Sunday morning and you're pondering deep philosophical questions. You'd like a psychic to give you the answer, but they are too far. Worry not! There's an ATM down the road....."
Seeing people lean in and listen to the ATM instruction, type in questions about their octopus pet or just their name, watch with wonder as the machine prints out a custom reading, and ponder the somewhat cryptic messages with their friends brought me so much joy.5
a happy mother's day message to my mum. My mum told me the readings were super accurate XD
I went around visiting other teams' booths. One group ended up running an LLM-powered custom-music app on a laptop. A human dispensed the cards behind a carefully painted box. An alumni team made 16 hand-drawn hockey-themed Tarot cards and a circular device with a crank that picked the cards, also powered by a Raspberry Pi. They said they don't know if the machine will work, though I admired the spirit, since they did what I didn't think any team would possibly attempt, in the true spirit of SCAV.
We won 3rd at SCAV this year. I really loved the enthusiasm of the Big Burton team, and it was no wonder such a small team could place so high.
My half-dead limbs lay strewn across the couch
exhausted by their exertion,
but, delightful [friend], I made [this] poem for you —Catullus 50
UChicago has been a serious, at times sombre place. It's midnight walks from Harper Library, snowboots crunching gray ice. But when UChicago people have fun, I love that flavour of serious fun.
There's a certain kind of virtue of the mind that is best cultivated by being fascinated without regard to the apparent size of the object of fascination. You invent hard rules and try to dance within these rules. The rules might seem absurd—frivolous, even, but anyone who attempts to play such a game will quickly realize that making anything marvelous within hard constraints will require machinery you must develop with patience, ingenuity, and oftentimes a good teacher.
A good game is hard to play, and even harder to make.
I want to treat my day-to-day research, work, and life as an exercise in serious play. There are deep lessons waiting to be learned everywhere—I don't ever want to stop playing this game with the world.
Thank you to the BJ team whom I worked with for making this happen — Marcus, Mirabella, Piyush, Nathan,6 and especially Noah for painting and decorating the ATM overnight. Thank you to Izzy for connecting me with the team, the Tech Staff team for supplying a mechanical keyboard, my friends for discussions and sharing the fun, and the SCAV judges for organizing a wonderful Hunt.
1 SCAV, annual UChicago tradition since 1987. Past items include a nuclear breeder reactor, paper copy of the 2026 SCAV list in outer space, and a Scavvenwedding.
2 Marcus was one of the team captains for Big Burton. The team had gotten pretty worried by that point, since I had been no contact for 13 hours.
3 Fittingly, both lorem ipsum's usage as gibberish filler in print (taken from Cicero) and Tarot's precursor Tarocchini plausibly emerged around the mid-Italian Renaissance.
4 Kleene formalized 'regular language' in the 50s, and ATMs were invented by Luther Simjian and deployed in the 60s.
5 It was also gratifying when one of the SCAV judges called this the best item they've seen in three years.
6 Thanks for calling me deus ex machina, I don't think I'll ever get that in my life.