These events can show non-coders new potential, teach effective software development practices, help students acquire specific technology and interpersonal skills, and bridge the gap between academia and the real world. In school, you learn and then apply; in the real world, you have to apply without learning. These events help participants “learn how to learn,” learning through application.
The student-led hackathons will generally be remotely supported by Intel (funding, video calls, target platforms, etc.), run by student ambassadors with guidance and facility management from experienced faculty. One (or more) of the planners should be in charge of maintaining an event blog and gathering the code (generally on GitHub) for posterity.
Once your core team is in place, it’s time to start planning.
- “Code for Good”- beneficial to society (e.g. teaching middle school students basic algebra, healthy lifestyle choices to combat childhood obesity, etc.)
- Not so general as to give no guidance or ideas
- Not so narrow as to specify app to be created
- Local community concerns are a good place to start
- Early signup
- Ongoing communication to maintain preparation and involvement
- Ethernet connections as backup
- Power outlets and strips
- Any platforms and servers required
- Grazing between
- Caffeine for late night boosts
- With Intel buying the food, it’s often best to order online (from Safeway or similar)
- Unlocked door(s) for access
- Parking and security if necessary
- All of the above assured overnight
A few things to keep in mind to keep the shirt designs standardized and useful:
- Color limitation (not counting shirt color)
- Badge section on front
- Full event design on back
- Code for Good logo on right sleeve
- Mix of sizes or ask during signup
Specific technology training
Some tools, engines, and technologies have a steeper learning curve than others. Make sure to prepare a workshop before the hackathon when using these or the work time will be drastically inhibited by learning how to use them.
Downloadable toolkit image
It’s often helpful to package up the relevant tools for quick deployment to all development platforms (often student laptops). Here’s an example bundle:
- Notepad++ for basic text editing
- GIMP for images, Aseprite for sprites
- Possibly a level editor such as Ogmo, Tiled, or Dame
- Audacity, bfxr and/or musagi for audio
- Event-specific tools such as XDK or Project Anarchy
Remember to consider the mix of operating systems.
Tips and tricks for a successful hackathon
- Games keep participants motivated and are easier to demo/see progress
- Competitive events would only appeal to half of the participants; collaboration is better for learning
- Rather than judging with rankings, give tickets when participants exhibit beneficial behaviors or reach milestones. At the end, raffle prizes small to large.
- Commitments should be for the entire duration; having a freeform “drop in and out” arrangement might feel more accommodating, but the damage to the team dynamic severely impedes productivity.
- Schedule beforehand to have status check-in times at regular intervals (1-2 hrs).
- Schedule meal breaks to not be near or after check-ins. Make sure these are at standard times- hungry people don’t care about much but food.
- Maintain decorum during check-ins. Working through someone else’s status is fine, but having a disruptive conversation is simply rude.
- Check in the loud groups first to quiet their conversations. If all are quiet, go with the quietest to stir them up.
- Predetermine milestones. Estimate the first 25% for design and prototyping, alpha (functional engine working) by 50%, beta by 75% and gold by 90% to leave time for demo/wrap up.
- “However long you think something will take, triple it.” – Jon Shafer. By that same note, cut your dev time into a third; if you’re doing a 24 hours hackathon, what can you get done in 8 hours? Not a sprawling MMO, aim for smaller scale.
- Programmer art is fine. If you have a fun game that stars only boxes, you have a fun game. Polish is for later.
- Have a camera, take pictures. Prep time, work time, check-in time, wrap-up, all of these are ripe with photo ops.
- Similarly, have a video camera. Record check-ins, demos, and really any time someone talks to the group. It’s interesting to see the evolution of the games and teams over the course of the event.
More basic DIY hackathon tips are available at http://software.intel.com/codeforgood/hackathon-in-a-box/