Hello World. Meet Omeadow.

For a while, I was inspired by the idea of learning in public that I got introduced to by swyx’s post. A wonderful experience of participating in a hackathon with a group of friends has finally pushed me to produce this blog.

I will outline why you should forget about any obstacles you might have in your mind and take that leap of faith | as a hackathon participation is almost guaranteed to be a great experience.

The Story

I am sure for many the hardest preparatory step before a hackathon is assembling the team. Being proactive during this step proved to be very important. I stopped relying on a random chance that some acquaintance will end up inviting me to participate and started aggressively inviting everyone from my not so large social circle to participate with me. 

The team was assembled and we dived right in without knowing what to expect at all. 

A typical hackathon team

Hackathons curb your perfectionism!

You are on equal footing with every other team – everybody has to present a solution in just 24 hours, no matter how imperfect it will turn out in the end.

I concur that everyone should develop a productive and sustainable work ethic as a knowledge worker, but the psychological barriers get in the way of our work no matter how disciplined we are. 

Getting to forget about how your skills or the work you will produce will compare to those of others will put you into an exceptionally productive mode. 

You and your teammates are everything that matters for these 24 hours. Even if you are not participating for your own sake, put in your best effort for you mates! 

After all, every single one of you are dedicating these 24 hours and sacrificing your sanity in an overcaffeinated frenzy all for the purpose of rolling out the best solution you can, given the constrained circumstances!

In the end your collective goal is not to win at any cost, but to try your best and have a great time in the process.

JIT learning > JIC learning

Just-in-case learning is always nice, whether it is a semester long theoretical course or a rabbithole on your favorite obscure topic. But all of us want to get results. To get results fast when it is absolutely needed in a real world scenario, you cannot invest the precious time on understanding the intricate logic of every little component of your code.

Enter Just-in-time learning. 

The problem’s data is presented in a mysterious file extension you have never encountered before (.parquet in our case)? Only learn how to extract it right here and right now. You have never made API calls to an LLM even though it is a key requirement of the problem? Drop a file right into your codebase and vibecode an implementation on the go!

Generative AI was immensely helpful in rolling out these solutions fast, but the approach has always been the same even in the pre-AI days.

Problem solving feels great!

We are all problem solvers by nature. The process of trying to apply your unique skillset acquired over your entire lifetime and the joy of finally submitting a ready solution is wonderful. Especially when you share this experience with a group of like-minded friends.

The Solution

Now the actual code of our solution might end up looking embarrassingly unimpressive to some, others might say: “Five people spent 24 hours to make THIS?”. 

But in the end everything that matters is that we as a team are happy with the result given our capabilities.