Tips and tricks for (Web3?) hackathons
Ready to hack at ETHNewYork ๐ค.
Hackathons are amazing โจ
One has to be a bit crazy - or to really love building - to spend her/his weekend on a 48h+ coding challenge. But it is worth it. You'll meet amazing people, learn new technologies, develop ideas, find a job, build a company, win things...
Over the last few years, I was fortunate enough to participate in multiple hackathons. As a hacker ๐จโ๐ป, a mentor ๐งโโ๏ธ or a judge ๐จโโ๏ธ.
It all started with a hackathon organised by Louis Vuitton, Unlock the Future of Luxury hackathon in 2015. My first Web3 hackathon was the Polkadot Hello World hackathon in 2020 on Gitcoin. Later in 2022 at ETHDenver, I joined the judging team for the NFT track. At LUKSO, we also organised two hackathons: Hack your Profile and the Build ๐ #1 hackathons for which I was part of the judging team. The last hackathon I did was ETHNewYork in 2022 where I participated as a hacker. And finally, this year, I'll join the mentor team for ETHDenver 2023 #BUIDLathon.
From these experiences, I gathered a few tips and tricks that I want to share with you.
During the hackathonโ
The hacking area at DEVCON VI Bogotรก ๐จ๐ด.
๐ฅ Teamโ
Have a well-balanced team. I find teams over 3 to be a bit too large, especially if you don't know each other. Try to mix your team skills as much as possible: frontend, backend, smart contracts, design, etc. Usually, you can connect with hackathon participants before it starts. Go on Discord, Twitter, etc. and create connections before the start of the hackathon.
๐ง Projectโ
Your project doesn't have to be too technical, for instance don't underestimate educational projects. Try to do one thing well rather than a lot things bad. Everyone knows it is a hackthon project, you don't have time. The most important thing is to have a good idea and to share this idea with the judges.
๐จ Don't under estimate the impact of UX/UI/presentationโ
I think many teams fail because they can't explain well what their project is about. At the demo time, it won't really matter that you have an amazing super optimized Kafka distributed event streaming platform if no one understands what your idea/product is about. So don't under estimate "less technical" roles in your team. They can work on the presentation, and they will definitely make sure your project "has a reason to exist".
โฑ๏ธ Spend your time wiselyโ
It may not be worth to spend 5h to debug or build a super crazy cool function that no one will see during the demo. Sometimes, you need to make compromises. Go fast, use libraries, use no code platforms (Airtable backend?...) - just use whatever brings the best value for as little time as possible. If you win, you'll have enough time to adjust and improve your technical stack.
๐ค Sleep wellโ
Trust me, you don't need to be up for 48h or to sleep under your desk to win a hackathon. Have fun, sleep well, be productive.
๐งฐ Know your stackโ
You will be more efficient if you work with a stack you already know. 48h is too less to jump into a new framework or language. Just stick to what you know best.
๐จโ๐ซ Prepare your demo/presentation on timeโ
Don't underestimate the time needed to make a good demo/presentation. You could spend 2h to fix a bug or slightly optimise something, or you could use these 2h to make a nice presentation to explain what you are building. I think the later is a better way to spend 2h.
๐ Deploy a live version of your web appโ
Asking the judges to git clone
and npm install
your project is just too much to ask. Sorry. Is your repo safe? Do I have the latest Node version?... You can deploy a frontend in minutes with Vercel, Netlify, Google App Engine, Heroku, etc. Just set it up at the beginning of the project and share your preview URL. You will get these extra bonus points for making everyone's life easier ๐ค
I find the NextJS + Vercel stack amazing to quickly setup a live version of your project.
During the demoโ
A demo at ETHDenver 2022 ๐๐ฆฌ๐ฆ.
๐๏ธ Confirm your team nameโ
Things go fast, judges jump from teams to teams. Before starting your pitch/demo, just make sure the judges know which team you are in.
๐ Make things bigโ
We don't see much, the hacking area is busy and crowded. If you make presentations, make everything super big so everyone can see what you want to show.
๐ Use QR codes and short linksโ
If you want to share something (project demo, GitHub repo, etc.) think about using QR code or short links.
๐ Make diagramsโ
Diagrams will never hurt, especially if you build a complex DeFi/NFT protocol.
Make sure every judge has understood what you are building. Read their faces - if they seem confused - ask questions. You can stop your pitch and ask if everyone understands what you are presenting.
๐ซก Respect the rulesโ
This seems obvious right?
- Make your repo public
- Make a presentation video
- Submit on time
- ...
Just stick to the rules. As good as your project can be and as much as we want to make you a winner, if your project does not respect the rules, giving you the 1st place ๐ฅ won't be fair - therefore, we can't give you the 1st place. So, just stick to the rules ๐
๐คช Use emojisโ
Yeah, it makes it cooler at literally no cost. On a Mac, you can use Ctrl+Cmd+Space
to open the emoji selector.
1๏ธโฃ Make sure your project is new and uniqueโ
Some people simply send the exact same project to multiple hackathons and only change the name and the favicon. Come on, save everyone's time. Don't do that.
Conclusionโ
Participate to hackathons, keep your team small, know your stack, don't underestimate the UI/UX/presentation, have fun and make friends ๐