Have you heard about hackathons but have no idea where to start? I’ve been there. It can feel intimidating. But fear not!
In this post, I’ll outline five simple hackathon tips that will help you win your first hackathon, and I’ll also share my personal hackathon experience:
- What is a hackathon?
- What are the benefits of participating in a hackathon?
- How to get started with hackathons
- 5 simple tips for a successful hackathon
- My recent hackathon experience
What is a hackathon?
A hackathon is an event where people come together to work on creative software or hardware projects. Hackathons usually have a specific focus—such as building games, websites, or apps. Participants often have to complete their projects within a certain timeframe.
What are the benefits of participating in a hackathon?
Hackathons are a great way to learn new skills, meet new people, and build something cool. Even if you don't win, participating in a hackathon can be a fun and rewarding experience.
How to get started with hackathons
To start, find a hackathon that interests you. There are lots of them, so it's important you find one that matches your skills and interests. Found one? Great! Register for it and start preparing:
- Read the hackathon website to get a good grasp of the scope. It’ll help you frame your project.
- Brainstorm and make a list of potential projects you could work on.
- Decide whether you want to use an existing skill set or to learn a new one (and apply it to your project). Note that this depends on your available time.
- Choose a project and get started!
5 simple tips for a successful hackathon
There's no one-size-fits-all answer to the question of how to win a hackathon. But it’s important that you come prepared. That means, having a clear idea of what you want to accomplish (and how to get there) and having all the necessary tools and resources to hit the ground running.
Here are a few tips:
Tip 1. Set up your coding environment
Create your hackathon coding environment. Make sure it has the necessary operating system, language framework, and required libraries. You’ll be able to reproduce it and prevent the possible corruption of your computer setup.
Choose from the following:
Or choose one of the preconfigured cloud coding environments:
Tip 2. Use code templates
Boilerplate code can help you get a working solution faster.
For example, if you’re creating Streamlit web apps, you can leverage the Streamlit App Starter Kit to have a functional app in seconds. You can also customize the app by adding functions, data, and widgets (learn more here). Or you can use the TrainGenerator to make the starter code for machine learning projects (also in seconds!).
Tip 3. Focus on the problem
Another key to success is focus. It's easy to get caught up in the excitement of a hackathon and try to do too much. If you want to succeed, focus on solving the problem. Remember to stay within the time limit and don’t worry about the details. A finished project is better than a perfect one!
Tip 4. Get unstuck
Google, StackOverflow, and coding forums are great resources for getting unstuck. Follow the routine of copying and pasting code errors into search to find solutions to your errors. If there are none, ask for help (read this guide to writing an effective post).
Tip 5. Create your own custom resource pack
Potential hackathon resources vary depending on the scope or topic.
For example, before participating in a data hackathon, you’ll need to come up with a list of potential APIs or datasets. Thinking about data will help you figure out how to use it and what analysis approach to apply to a visualization.
Bonus tip: Have fun!
Hackathons are meant to be a fun experience. Even if you don’t win, you’ll have a good time and create something you're proud of. And that’s a huge success worth celebrating! 🥳
My recent hackathon experience
I'd like to share with you a project that I’ve worked on at Streamlit’s recent Hackathon.
I followed three simple steps:
1. Create a solution to a problem
Problem: I wanted to share my social links on social media platforms but I didn’t want to share a long list of links. Solution: I created an app that stores all of my links in one link: https://chanin.streamlitapp.com/.
2. Make an app feature wishlist
I illustrated/summarized the four components of my app’s prototype in the diagram and the table below:
3. Implement the app
Once the app copy was up and running, I polished it, then refactored and lightly documented the code.
Participating in a hackathon is amazing. You get to learn new skills, meet new people, and create something useful and inspiring. I hope you’ll attend your first hackathon soon!
Happy hacking. 😁