Published on

I Won My First Hackathon!

Authors

MHacks24

Sections

Travel log

Traveling

Campus

The trip started with taking the Amtrak train leaving UIUC at 05:00. We (Hackathon friends and I) got to Chicago and spent time walking around, eating food, and finding places to do some homework. At around 19:00, we took our second train to Michigan and rested for a bit of the train ride. Finally, we each found a place for the night.

The UMich campus has a really large center campus and a really large north engineering campus. For some reason, they're really far apart so we had to take a bus back and forth for certain events of the hackathon.

Food

There were a couple incidents with the food I had on campus. Namely, we had takeout and requested no peanuts or nuts because of my allergies. We then proceeded to receive takeout with peanuts... =T. Bummer... However, aside from that experience, the Hackathon organizers had provided food accomodations for everyone. At the end of the trip, right before we left Michigan, we got food at a diner. It's called Northside Grill. Definitely a recommendation if you go.

Transport

The busses came around regularly, felt like the average bus ride. However, the Amtrak at the end of the trip, which was supposed to take us back to Chicago just stopped functioning. The trip from Chicago to Michigan was delayed by 3 hours, and the trip back from Michigan to Chicago just stopped functioning. Oh well, we ended up taking a really cramped bus.

The Hackathon

Opening Ceremony

Opening ceremony was pretty cool. I didn't attend much of it, but what I do know is that they sync up the lighting of these wristbands they gave us for admissions. [Insert Image of Wristbands Here].

The Idea

Our team came up with multiple ideas. However, the idea we stuck with was an AI profiler and optimizer made with a new structured language called BAML. We wanted to implement many features, namely:

  1. Auto documentation
  2. Profiler to assess coding
  3. Memory checker
  4. Optimizer with reasoning
  5. Dependency graph

By the end of the hackathon, we were able to get a decent bit of that list with either complete functionality or demo-level functionality.

Coding

We split the coding amongst each of us attending. I worked on the backend which used BAML tools to send and receive data from LLMs as well as parsing. We had a total of 2 days to code what we were thinking of and finished a very rough prototype of what we wanted. A lot of the coding was done throughout the night when some of us were still up. Some of us woke up early in the morning to finish the code.

BAML

BAML is a tool which utilizes LLM APIs to receive data in JSON like format which makes it easier to parse different things like strings and numbers. We used BAML to make an LLM create a brief summary of what the function did in general. We also used it to determine optimizations that could be made. BAML made it easier to parse which section was the optimization, which section was the reasoning, and which section was the summary. Of course, the prompt couldn't be made too long because the larger responses gave more inaccurate answers. I coded this functionality alongside Daniel Zhou.

Dependency Graph

The dependency graph would show which functions depended on another function. IE function A calls function B then function A depends on function B. This functionality was gracefully coded by Nathan Hu.

Frontend

We wanted to mimick a frontend similar to VSCode and found a library which created a text editor in the browser with the theming of VSCode. The documentation would be presented when the function was clicked on. Optimization would be suggested and reasoning would be show on a small popup window within the page which you either accept or deny. The dependency graph would be shown on the bottom. We weren't able to finish all the features such as the memory checker. Our frontend generously made by Alice Li.

Closing Ceremony

Honestly, I wasn't expecting to win anything, but I wanted to see the other projects people had completed. Among the many projects one that had stuck with me in particular was a tool which utilized AI to find software vulnerabilities which they had even demonstrated live that day.

Prizes!!!

There we awesome prizes like keyboards, laptops, LLM tokens, etc. I really wanted the keyboard because the keyboard they were giving as a prize were keychron keyboards which are amazing keyboards (not sponsored... O-O). We didn't win that prize... However, we did win the BAML track which was a prize of $500 total split between our members. As of 2025-08-03 it has not been distributed... :(. Regardless, the hackathon was a fun experience and I look forward to attending more in the future.