~/nyuma.dev

Winning Cal Hacks 10th Anniversary Hackathon's cover image

Winning Cal Hacks 10th Anniversary Hackathon

The full story on how Oregon State University took over Cal Hacks during Halloweekend 2023

12 mins read

In October, me and a few other beavs flew down to University of California, Berkeley to attend Cal Hacks 10.0. We didn't know what were getting ourselves into. But somehow, we took 1st overall and had (to this day) my favorite hackathon experience.

In this post, I'll be taking you through the journey we took to win the event.

Hackathons

If you're reading this, you likely know what a hackathon is. But for the sake of clarity, a hackathon is a timed (usually 24 or 48 hours—some even weeks or months) coding competition, where small teams work together to build a product.

I use "coding" loosely here, because hackathons are not just for coding. I've seen figma designs and hardware solutions which are just as valid as software stuff. Hackathons are more about the problem you're solving ( execution still does matter! )

Cal Hacks is one of the largest collegiate hackathons in the world, hosted annually by the University of California, Berkeley's HackBerkeley Team. Here's a cool pic of (the Metreon) which was the main venue for the event.

Cal Hacks 10.0 Hackers

Building the Dream Team

Going into the event, I didn't even have anyone in mind to go with. I just knew I wanted to go. Attending Oregon State University, especially back then, was a bit of a challenge.

The core problem is there is no "hacker" community per se. It has never been common among OSU students to go to, let alone fly out of state, for hackathons. Also, with it being halloweekend, it was only natural that most if not all people I asked were busy.

Not gonna lie, at this pointI was ready to soon gave up; this was ~2 weeks before the event.

But then, I remembered. There's people that I've done hackathons with, and won, at my university. One of the first hackathons I ever did, where we built ISpyAI - an ai tool to automatically convert any youtube video to a blog post was a huge success. Our team worked really well together, and we won the event. So I knew there was something special brewing there.

I reached out to my previous hackathon teammates. Unfortunately, one of them, Crypto, who was the former president of the App Dev Club, had graduated in the spring. Therefore, he couldn't join us for Cal Hacks in the fall.

But luckily, the rest of our group was still here, and more importantly, they were interested in going. Before wasting on time on ideation, etc. — I created a Discord group chat to get us all in one place.

Cal Hacks 10.0 Group Chat

In hindsight, creating this group chat was the single thing that lead to everyone becoming on board.

After we got itineraries situated, booked flights, etc. — we all met up in person at the event. Sandy got there first, and I vividly remember being super intimidated by the amount of people there:

Cal Hacks 10.0 Crowd

Here's us before the event started: (Go React! >.^)

Cal Hacks 10.0 All Smiles

Hacking period

I'm not sure if it was becuase we were all fresh out of midterms, or the fact that we didn't do much planning prior, but initially, we had aboslute no idea what to build.

The thing about Cal Hacks this year was that the theme was pretty open ended. With the amount of sponsors, we knew that if we leaned in ANY direction, we'd be able to build something that'd at least use one of their products.

So we continued ideating.

4 hours later...

We still; had no idea what to build. UNTIL—I thought ofTalkToBeavs.

Backstory

In Winter 2023, for my Advanced Web Development (CS494) class, me, and one of my Cal Hacks' teammates built a social media website for Oregon State University students.

This is when our idea hit.

The idea

For some context, Fall 2023 was still the onset of the AI hype train. And more specifically, the LLM boom. ChatGPT was released in November 2022, and was already changing the world. Although, it still wasn't powerful enough to be used for day-2-day software engineering tasks, especially when compared to where we are today with Cursor, Bolt, and Claude.

The most sophisticated use of LLMs at the time was GitHub Copilot, and even then, I still never used it.

We knew that we couldn't yet use these LLMs for something intelligence-based. Although, we did know that we could use them for something that it was good at (pattern-based recommendations) while still aiming to push the boundaries of what was possible with LLMs.

Nexus

The app we made, Nexus, was our way of connecting people through voices.

Nexus Demo

Let's be real with ourselves for a second y'all. Traditional social media does connect people. There's no getting rid of it, and that's all (including the negative parts) here to stay. HOWEVER, where it fails is creating meaningful connections—especially those based on shared interests and experiences. You have to:

  • Seek out Discord, WhatsApp, Telegram, etc. communities
  • Scroll for hundreds of hours on [insert social media platform here] to curate a feed of people who share your interests

In all cases, you're still not getting the things you want, when you want it. There's a joke I hear within some circles about them "building ts brick by brick" which relates to the fact that you have to scroll through a lot of content to build the perfect feed.

Nexus takes all these problems, and solves them by being a real-time voice chat application that pairs users based on their interests, allowing for more authentic connections.

Think of Nexus like Twitter Spaces (audio-only live streams) combined with Discord (persistent voice-only chats) and Omegle (random one-on-one matching).

The core concept was simple: users could choose between one-on-one conversations for deeper connections or join group voice chats for broader discussions. The flexibility gives people who may use our app control over how they wanted to connect with others, creating a more personalized social experience.

Why at Cal Hacks?

We liked the Nexus idea a lot because it felt not only doable for a hackathon, but also a fun, unique way to take on the "viral social media apps" that's been raging for a while now.

Nexus's tech stack

Super simgle, super reliable. Notice the random serverless solutions 😆 since, at hackathons—the last thing you want is to be debugging .yaml files mid-hack.

  • React and TypeScript
  • Tailwind CSS and DaisyUI for styling
  • 100ms for real-time audio communication
  • Clerk for authentication
  • Convex for database and vector search capabilities

Building the app during the hackathon wasn't without challenges. We spent considerable time reading documentation and learning these new technologies since we never used them in stuff like school.

No but like for real! Look at how locked-in I was in this photo >.<

Cal Hacks 10.0 Crowd

If I remember correctly, when this photo was taken, I was re-writing the backend to use Convex's built-in vector search capabilities.

The poor internet at the venue didn't help either - of course, costing us valuable development time. (Peep the failed internet connection on my laptop screen 😂)

Funny photo on that:

Cal Hacks 10.0 Crowd

In typical hackathon fashion, sleep deprivation was a constant the entire weekend.

Here's us during a 3am coding session, pre-IHOP run, deciding on what Nexus's matching system should look like and fixing some deep, dark, merge conflicts:

Cal Hacks 10.0 Bed Coding

Looking back, I'm so glad I took all these pictures, lmfao. They're always so fun to look at, and for this hackathon especially, they mean 1000 words.

The last 24 hours

The reason why this hacakthon ended up being so fun was partly because of the judges, at least to me. While Nexus was a fun app naturally, being social media-esque, pitching the app was very natural and freeing.

Like, everyone's used Facebook, Instagram, Twitter, etc. So it was easy to talk about Nexus in a way that was relatable and engaging. But enough about that.

The judging period was a bit of a rollercoaster. In the morning, when we got back to the Metreon, we saw all of the tables with number displays (up past 150 🤯).

Cal Hacks 10.0 Crowd

We found an empty table inside, and got sitated quickly—there was only around 2 hours left before we had to stop coding, and start pitching.

Here's where things get interesting.

The codebase was in an interesting state. We had all the working pieces, but nothing was connected into a cohesive user experience yet. I ended up doing a2 hour straight sprint of polish and bug fixes. Since it was such a critical time, I had to end up taking over the driver seat, allowing my team to focus on writing our Devpost submission and building our pitch deck.

An underrated hackathon OP move is to have teammates who you can trust to allocate parts of work to. No one really talks about it, but if you have two people coding, one going building a slide deck, and one writing a Devpost submission, you're essentially bulletproof.

I had 2 Red Bulls and a shot of Tito's to keep me going, so I ended up just locking the f*ck in, and finishing the Nexus MVP to hopefully make our live demo as smooth as possible.

Here's me during that exact moment, lol (shoutout to Sandy for the flick):

Locked In at Cal Hacks Before Pitching

The pressure was intense to say the least. Jeff was my partner helping me code while Sandy and Derek were working on the pitch deck and Devpost. But he, unlike me, was feeling the sleep-deprivation and lack of caffeine that I (in hindsight) completely just ignored by using stimulants.

Looking back, he was right. I shouldn't have been drinking my problems away. Although, they do say winning comes at a cost.

Tip

If you're going to do a hackathon, be more like Jeff, not me. (unless you're crazy, then go slay it)

After a few more hours of work, we finally got Nexus to a place where it was ready to be pitched, before the deadline. Here's us right before judges started arriving—all smiles because we were finally done and built something we were proud of:

Nexus Pitch

We somehow managed to create a fully functional application that allowed users to:

  • Create profiles with their interests
  • Get matched with others who shared those interests
  • Engage in real-time voice conversations
  • Seamlessly switch between one-on-one and group settings

And honestly, this was more than anything I expected going into the event.

In the end...

Long story short, we won 1st overall.

We won 4 iPads (1 of which i use religiously to play Roblox), and our school featured us in the engineering blog for our win. The prize is nice, but honestly, the memories I made that weekend are what I value the most.

However, I'll always remember when they announced as first overall.

By then, we assumed that we weren't going to win, since all of the runner ups were just SO GOOD. When they did a huge drum roll to announce 1st overall / Otski's favorite, and it was us we were just so shocked.

At the end of the day though, it's now just a memory for the four of us.

Go Beavs. 🧡

Cal Hacks 10.0 Winners

Here's an absolutely legendary shot of us with the runner ups during our photo shoot:

Cal Hacks 10.0 Group Pic

The after party

After the event, some of the judges from Chainlink invited us to an after-party at a nearby apartment complex that an investor of theirs was staying at. With all the winners being invited, attending was just the right thing to do. But boy oh boy, am I glad we did.

They were some of the most talented people I've met and also just really good people. We enjoyed some good food, drinks, and conversations about our projects, interests, etc. we took this photo at the end to cap off the night:

Cal Hacks 10.0 After Party

Some fun facts

  • We didn't get the idea until 4 hours into the hackathon
  • I slept for a total of 6 hours over the course of the weekend
  • We won 1st overall despite having no idea what we were doing
  • I bought a bottle of Titos and drank it through the entire hackathon
  • We're the first OSU team to both attend and win Cal Hacks
  • I got a total of 2 hoodies, 11 shirts, 3 hats, and 50+ stickers
  • By the end, I went through >11 Prime energy drinks (I'm not even kidding)
  • Intel shot down sponsoring our club because they had a bait and switch incident at our school with another club (true story)
  • We got exclusive access to the MindsDB team due to our win (thanks MindsDB!)