During a little digital get-together of my CTF team, the possibility of joining the Google Developer Group DevFest Hackathon 2025 was brought up. Team size was limited to three to five, and we were exactly five people who wanted to join. Perfect. It was no longer a question of if we would join, only whether we would get enough sleep so that every single one of us could make it to the location, which was the main lecture hall of our university.
The theme of the hackathon was “AI”. Everything we had to do was related to AI, preferably with Google products, as this was a hackathon organized and sponsored by Google.
The topics had already been announced two days before the actual hackathon during a preparation event, which I couldn’t attend because it took place long after my last public transport connection home. The team did some brainstorming, and we agreed on making an automatic coding assignment grader with highly detailed feedback.
8:00 a.m.
At around 8 a.m., I managed to get to Linz (Austria) the city where the university was. After going to the local supermarket to get enough caffeine to push me through the last part of the journey, half an hour later I was the first one from my team to arrive and register. When they asked me for a team name, I told them we didn’t even have one yet. “No problem, you can always register it later as long as it is before the pitch,” they said.
We quickly decided on the team name “Vibecheck”, which was slightly changed after a poll to “Vibecheck Inc.” because “Vibecheck” alone didn’t really sound like a hackathon name. Adding “Inc.” apparently fixed that.

9:00 a.m.
The first, kind of boring but still important part began: someone went on stage and tried to cheer us up. I’m sure he really meant well, but none of us participants had enough sleep or caffeine to start cheering and applauding one hour after sunrise. It got better throughout the presentation as everyone had enough time to wake up.
The main rules were:
- Basically everything was allowed
- Just don’t get help from people outside the hackathon
- Make a valid submission with a PDF presentation and a tech-stack diagram
- Submission deadline is at 5 p.m.
Much more interesting was that we were provided a free month of Lovable for website design. For those not knowing what Lovable is: it’s basically an agentic website-building AI thingy that can actually produce really cool-looking websites, though they are usually not very performant or ready for deployment… but this is a hackathon — nothing has to work as long as you can communicate the vision. Of course we would use Lovable; this is an AI hackathon after all!
One of the “mentors” (people who walk from team to team to make sure everything is okay) told us after hearing our idea that we should use GitHub Classrooms as the base infrastructure. We agreed, because during the pitch (which consists of 2 minutes of presentation and 2 minutes of Q&A with the jury) it would be easier to say that it integrates into something by GitHub.
10:30 a.m.
The first coding session started. We got everything set up and collected all our notes from our Discord channel into a live text pad hosted on the server of our CTF team. Cybersecurity didn’t matter; all the email-credentials and passwords to all our accounts were saved in plaintext and uncensored, displayed on every single one of our screens.
We created an n8n account, which we would use as our main pipeline tool, and also a Supabase instance for saving the results produced by the pipeline.
Around this time we also made the first trip to the fridge with the provided soft drink that had water and cola. It also had sugar-free cola, probably the only sugar-free cola that tasted exactly like the sugary version. But that isn’t important. During this day I drank four bottles of cola. I see now that I shouldn’t do hackathons very often if my health is important to me (but it was tasty though).
Lovable was creating the first version of the website, the n8n pipeline was being built, I was writing prompts for all our agents, and we were already starting to plan the pitch.
Everything seemed fine.
Everything was running.
Everything was too good to be true.

1 p.m.
Lunch time. Food was provided. I think the organizers miscalculated how many vegetarians there are among students nowadays. They ordered way too many vegetarian meals, and only about 15 with meat, for around 75 contestants. I “only” got a vegetarian one, but it was still quite delicious. I got pumpkin curry with rice.
While eating, we planned our next steps. Nothing world-breaking — we just concluded that we wouldn’t have enough time to make an actually running prototype. But this is a hackathon: nothing has to work as long as you can communicate the vision. From this moment on, a bit more effort was put into faking things.
We would make each module work by itself, but communication between them would be given less priority.
So the second coding session began.
3 p.m.
The pipeline was advanced enough for a first run. We used a token from the Google AI Studio and found out that the daily rate limit was only 250 requests. We could not waste test runs.
Every run had 5 requests:
one for code quality,
one that judged whether the comments made sense,
one that judged whether you only changed code that needed to be changed,
one that analyzed the linter output,
and one that combined everything into one big JSON.
Turns out n8n doesn’t automatically convert objects to readable JSON, and you have to manually apply JSON.stringify() to every single input.
But it worked. The scoring was maybe a bit generous (for a project that just submitted a repo with a readme saying “Blehhh”, I got 25/100 points because the linter was spotless).
But it was going in the right direction.
4 p.m.
We iterated on the prompts a bit. The scoring now made a bit more sense. I still got 10 points on my “Blehhhh” submission though, but we didn’t have time to fix that. We also found out that no one had really prepared the hackathon submission, which was due in less than 60 minutes. A race for every second began. We compiled screenshots into a PDF for submission, made the most beautiful tech-stack diagram, and faked the GitHub authorization so it would just redirect you to the website without actually going through the process.

Because the pressure wasn’t already big enough, the organizers put a huge threatening countdown titled “Deadline” on the projector, resulting in a permanently displayed, one-meter-large source of stress hovering right over our heads because we sat in the first row of the lecture hall.
4:58 p.m.
The last update to our submission. With less than 90 seconds on the clock, we didn’t want to change anything anymore. Too much could go wrong. We had a valid submission, and we wanted to keep it that way.
5 p.m.
It’s over. We did it. The organizer stepped on stage to announce one of the best parts of the day: before we started with the pitches, we would have free pizza. Several huge stacks of pizza boxes were brought in, labelled with some very ominous “Chi” and “B”. We brought three pizzas to our table and found out it stood for “Chicken” and “Beef” respectively.
They were probably some of the best pizzas I’ve ever eaten in my life. At this point I have to admit that I didn’t realize there was pineapple on the pizza, and I didn’t even notice. Now I can’t complain about people saying they like pineapple on pizza anymore. But I was tricked into it. I’ll still order my pizza without pineapple.
The rest of the evening wasn’t really that adventurous. We did our pitch, and it went really well. The jurors asked how we integrated AI in our product and what exactly we were giving as input. It was four minutes in total in which I only passively stood on stage. Because we were the last team to present, I was able to ask the jury directly afterwards, and they thought we had good chances for the top 3. The winners will be announced in a few weeks, and I am sure I’ll post an update.
A nice little side effect was that I got a few new stickers for my Surface that I use as a portable device (called “luna” in my device overview). Don’t worry — even though the Microsoft logo is on it, it has been running Arch Linux from the second I got it. I actually never booted Windows on that device.
One of the things you absolutely have to see from our submission is the submission itself. It is a masterpiece of shitposting:

Thank you for reading this. I am actually surprised you made it this far. You may want to have a look at the Submission Page. You can find a little demo video there, and also all the participants from my team.
I’ll make sure to post an update as soon as the rankings are available.
Something to take away for your first hackathon:
- If you think something will take one hour, it will take two
- Fake it until you make it
- Don’t take it too seriously
- Never drink a bottle of cola three hours before sleeping
- AI is probably stupid
- Jurors don’t want to hear marketing bullshit