Events Guide/Code Sprints

Before you plan your hackathon

 * Think about the types of things that people can realistically do in the time allocated. If you are getting them to build stuff, are they familiar enough e.g. with the source code of the core application to be able to start straight away on the day?
 * Be wary about getting people to work with a platform service. Dodgy wifi, system downtime and unforeseen bugs can mean headaches and people not being able to get anything done. A far safer bet is a good set of installation instructions to get the software running on their local environment, or tasks that will augment existing work (e.g. data-wrangling), without being reliant on the software being alive and kicking at all times.
 * Think about what type of people are coming, if there is a chance that you have both technical and non-technical people coming, have you planned something for both? You don't want people to be sat twiddling their thumbs... awkward turtle
 * Concrete aims attract people - when advertising your event, let them know exactly what skills you are looking for e.g. ability to scrape, python...
 * Have fun!

First, find a venue.
You will need to arrange:
 * a place to meet that has available: wifi, chairs, tables, power, toilets
 * an organising team (it's *hard* to organise a hackathon on your own)

Then start telling people about the hackathon.

 * Make a place that you can point publicity at: a wikipage is good for this
 * Email, tweet, phone people up, and do this regularly: one email won't be enough to get people excited
 * Start a sign-up form. You can do this with a googledoc, or if you're planning something big, an EventBrite page will give you more control over things like emailing everyone who's signed up.
 * Get onto events lists: meetup is a good start
 * Get local publicity too - local radio, tv, websites etc

Start getting people thinking about what they could do on the day

 * Collect people's ideas about what they'd like to do, and find out what they'd need to help them (experts? resources? specific skills?)
 * Collect topic-specific information, for instance datasets that could be useful, and links to existing sites that might help participants
 * Find local experts who could help before or on the day
 * Get the practical things sorted early: Sponsorship for drinks/ food/ badges etc
 * Where to obtain drinks/food for the participants

Plan the day

 * When are you going to start and end the day?
 * How will you get people started - with a short talk? With a lego exercise?
 * When will lunch arrive?
 * How and when will you wrap up the day? Then do the final touches just before the day
 * Do a final check on the venue layout - what's going to go where * Print out namebadges (if you're using them: sticky labels are an easier alternative)
 * Buy in supplies : tea/coffee/milk, pens, flipchart pads, roll of sticky labels
 * Make sure you can describe how to get to the venue from the local station, bus station, nearest carpark etc.

1 hour before:

 * Put up signs telling people where to go
 * Move tables, chairs etc into hacker-friendly layout
 * Make sure the tea, coffee, milk etc are out ready During the hackathon:
 * Have fun!

When the hackathon ends:

 * Tidy up.
 * Make sure local media get pictures and video so you can get sweet press.
 * Follow up with your attendees - find out what worked, what didn't, and let them know about what's happening next.

Thanks
To the organisers of Open Data Day for the majority of this text. Licence: Public Domain