Our First Hackathon: What We Learned

When the idea of having a hackathon of our own was first mentioned, it was rather low-key. The tentative date was a long way off, and we quickly moved on to other topics. Little did we know of the greatness that was to come!

Our team is all pretty spread out for the most part, and we work remotely. While this has many obvious benefits, it can be a struggle at times when we’re trying to brainstorm ideas or give feedback on the larger-scale projects.

This was going to be our first chance to bring all of the programmers together to work with a little more direct communication, and we were hoping it would be helpful, not a hindrance to progress.

We nailed it for the most part, but also need to work on a few things. Here’s a quick recap of what we learned:

1. Get your game plan ready ahead of time.

This is more for logistics than the actual hackathon. It’s not the “fun stuff”, but when it’s done right, it sets you and your hacking crew up for uninterrupted hackathon success.

Of course, there will always be hiccups along the way (perhaps 2-hour parking limits), but the better you plan ahead of time, the less time you will spend scrambling and making everybody wait.

More on this in point #2…

2. Your location is critical to success.

If you’re going to put together a hackathon, you’ve got to find a place that can handle it. The Iron Yard and their CoWork spaces were exactly what we needed, and the crew there was incredibly accommodating. They hooked us up with a whole floor of workspace, complete with executive office chairs, power strips, and an HD projector!

We had everything we needed to get work done without having to waste time on setup:

They made it super simple and even shared their refrigerator – too cool.

That, and downtown Greenville is an enjoyable place to visit as well. Pick a place where you can get stuff done, and where you can enjoy your breaks too.

3. Distribute your game plan ahead of time.

Our lead programmer (JohnG) knew what he wanted done, so he laid it all out on GitHub for the coding crew to be able to access right away. Each person’s task was separated onto their own set of issues to make it simple to implement updates on the go.

We had a little bit of everything on the hacking schedule, from 3rd party integrations to bug fixes and brand new features. More on what we got done later…

4. Find fun ways to get (and keep) your team motivated.

We wanted everyone to enjoy the hackathon, get stuff done, and want to be back for round 2 when the time comes. We started off with some nifty gift packs for everyone:

5. Surround yourself with fuel – food & drinks.

This much should be obvious – find out your hackers’ energy drinks of choice and load them up! We already had access to the coffee and refrigerator at the Iron Yard, but we stocked up on extra energy drinks just in case.

It was a good idea.

Day 1 included pizza from Bellacino’s, which we were able to share with some of our CoWork friends. Lunch on Day 2 was at Sticky Fingers – awesome bbq! All of the amazing food made sure our programming crew kept the coding going strong!

6. Don’t take it TOO seriously.

In other words, don’t forget to have some fun. It’s not every day that our crew gets together, and we wanted to make sure everyone had a good time. Fortunately, The Iron Yard had a great ping-pong setup, and we were able to get a few matches in.

Part of the excitement was the prizes scheduled for different categories of hacking genius:

  • Day 1 Hacker of the Day
  • Day 2 Hacker of the Day
  • “Scratch the Itch” Hacker (thinking outside the box in implementing a new feature or bug fix)
  • Best Hack Presentation

Some of the prizes included were gift cards from Starbucks and iTunes, as well as a rapid-fire NERF gun, and an apartment-friendly bean bag lounge chair.

7. Be ready to test your new features and fixes.

It can be tough if the team isn’t all online at the same time to test out new features that the development team wants to roll out – at least in our case, but this is where the Hackathon really shines – instant testing and live feedback, just extended email threads and Gmail chatting.

We were able to test things as they were made available, find out the obvious problems, and point out exactly what needed to be done, and in record time.

If at all possible, have a handful of testers ready to run through whatever your team puts together during the course of your hackathon.

8. Keep your goals varied to make the most of your time.

We had mentioned getting the word out ahead of time for what you want to get done. We put our game plan to work right away, and here’s what we were able to put together:

  • New custom hero images for profile pages (PRO)
  • New workout stats, charts, and workout/exercise history customization
  • Various bug fixes
  • Laid the groundwork for integrations with BodyMedia, DailyMile, and MapMyRun.

Pretty productive for 24 hours!

What We Could Have Done Better

While everybody had an awesome time and was pumped for round 2, we weren’t quite perfect. Let’s outline a few problems we ran into, so hopefully, you can avoid them when planning a hackathon of your own.

1. Plan your breaks ahead of time. This will help prevent any indecision and eliminate the need to take a vote on where you’re headed for lunch. Scope out the surrounding options before you get there and put the best options (look for places with something for everybody) on the schedule.

2. If you’re having presentations, make sure you save some time.  As the Hackathon picks up steam (especially on the last day), it can be easy to lose track of time. We ended up with some pretty hasty presentations. If you want your hackers to be able to show off their hard work, give them enough time!

Considering it’s a hackathon, maybe it’s not so bad to leave some freedom and steer clear of a rigid schedule.

We don’t claim to be experts, but we had a lot of fun with our overall Hackathon experience. We’d love to get your thoughts on our takeaways here – share them below!

Here are a few more pictures from the event, just for kicks: