Quite often I get the question from students, “Hey Chris, am I ready to attend a hackathon?”
“YES, do it!”, I’ll say. And I can see the fear boil up in their eyes, because to my students what I just said translates into:
You’d like to try a hackathon? Great!
I’ve put together a list of 4 things you can do to prep.
These lessons are inspired from a real story: three One Month Rails students joined together in October to face their first hackathon: RailsRumble2013.
1. Learn How to Work Together
“The biggest takeaway was learning how best to manage our development team using tools like GitHub, Hipchat and Hangouts” – Ean Platter, TeamOMRails
You’ll most certainly want to know enough about GitHub to manage your code. And if you’re long-distance you may also want to use something like Google Hangouts, or Skype.
Here at One Month we use Hipchat as our primary channel to communicate. It’s a great place to get an overview of progress, chat, and share fun images. We’ve even synced it with Heroku, GitHub and Basecamp so that we have a record of all the code pushes – here’s an inside look at our Hipchat room.
2. Learn Git Branching
Git can be tricky. The basics commands are covered in One Month Rails, but when it’s time to work in a team you’ll need to learn branching. Branching allows 2 people to work independently on separate “branches”… and then merge their changes to the “Master branch”. It’s magical.
Michael Hwan, who was also on the RailsRumble team told me, “The one thing we screwed up on during RailsRumble is that we didn’t create separate branches for each of us when we committed our code to GitHub”
Work with your team to practice committing code with branching in the days leading up to the hackathon.
3. Don’t Break the Rules!
You’re a rebel. Cool I totally get it. We like rebels around here…
Breaking rules is a great for innovation, but it won’t help you win a hackathon. It may seem obvious, but make sure you understand all the rules BEFORE the hackathon begins.
I felt horrible when I got a call on Sunday night from TeamOMRails: they weren’t able to submit their app because they hadn’t met the RailsRumble guidelines (they had used Heroku, when the rules clearly stated they needed to use Linode). We can’t blame the hackathon, we can only blame ourselves. Lessons learned 🙂
If you need clarification reach out to the organizers – I’m sure they’d be happy to help. You don’t want to waste any time during the actual hackathon by not meeting the organizers requirements.
4. Look for Small Wins
Even though we failed in by not being able to deploy our application with Linode, the experience was incredible! -Ean Platter, TeamOMRails
If you participate in a Hackathon the truth is (…if I must be frank for a moment) you may not win, but you most certainly will:
- learn from awesome developers
- learn how to work on a team
- be challenged to create something from nothing
- …and make some new friends
Now go out and sign up! Leave a comment if you plan on attending a hackathon. Which ones are worth checking out?