What I did at Recurse Center
I spent an intense summer at Recurse Center, a programming retreat in Brooklyn, after being recommended it by a friend. During my time there, I participated in various study groups and projects that allowed me to explore different aspects of programming and computer science.
One recurring feature at Recurse Center is the regular study groups, which anyone can organize and schedule. For instance, people would gather every Friday to collaborate on old Advent of Code challenges. I took part in several study groups, including Agentic Adventures, Practical Deep Learning, Math Monday, and a short series investigating an open-source board game AI.
Agentic Adventures was a discussion group for individuals interested in modern LLMs and agents. Each week, we engaged in different activities. Some highlights included working through the book Practical Deep Learning by Jeremy Howard and Sylvain Gugger, which provided a high-level practitioner's introduction to deep learning. This was perfect for building intuition and understanding how these models can be used to create various applications.
Additionally, I joined forces with Sophia to start a mathematical discussion group. The aim was to combine learning and exploration, with each meeting consisting of learning and then splitting into pairs to build projects based on the knowledge gained. We worked on fun activities such as studying the Keldon AI for playing the board game Race for the Galaxy.
We started with learning the rules and playing the AI, then moved on to understanding the code - an old-school two-layer neural network with curated features. The interesting outcome was that economic strategies were much stronger than military strategies in the base game, which aligned with player sentiment. Another intriguing observation was that many of the strongest weighted nodes in the neural network corresponded to the presence of individual cards.
Throughout my stay at Recurse Center, I also had the opportunity to attend talks on various projects. One early in the batch was a presentation by Josh on the ZIP file format, discussing inconsistencies between implementations and security vulnerabilities that could arise from such discrepancies. I was particularly intrigued by the discussion on the DEFLATE compression algorithm, which combines LZ77 (generalized run-length encoding) and Huffman coding.
Kevan and I decided to reimplement DEFLATE in Rust as a fun exercise. This was my first time using Rust, and I found it to be quite pleasant, akin to what C should have been. However, I struggled with some of the data lifetime rules. We wrote a decompressor straight from the spec, which was an enjoyable learning experience.
Recurse Center promotes pairing, which means working on problems with other people. Although I am a bit introverted, I still managed to engage in numerous pairing sessions. For example, with Kevan, we implemented DEFLATE; with Zaki and Tommy, we used SAT solvers to solve Sudoku; with Seyoung, we implemented Conway's Game of Life; with William, we created a new view for Magit in Emacs; and with Bill, we attempted to improve Magit.
Although none of these projects were particularly ambitious, they helped me gain experience in various areas of programming. Overall, my goal coming into Recurse Center was to better understand and work with the newfangled LLM technologies that are currently popular. This was reflected in my participation in Agentic Adventures and Practical Deep Learning.
However, I also spent a significant amount of time experimenting with various programming concepts and pushing the limits of what I could tackle.
Written by urgent.news from Hacker News's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.