leonidg's notes for running a hackathon ======================================= This is basically just a braindump I made while running Pterohacktyl (2010-06-26). Before: ======= Announce the hackathon at the SIPB meetings coming up to it. Send out an email to sipb-announce@mit.edu, mentioning date, time, place, name, etc. Sound excited and enthusiastic. Add a "tl;dr" for lazy people. They traditionally start 1pm and go until 11pm or so. Any earlier and people don't wake up early enough and the office is lonely. Create a Facebook event. You probably want to be an administrator of the SIPB Facebook group for this. Add it to the SIPB Google Calendar. You need to get bits for this as well, obviously. Advertise the event on your Zephyr class. Send a reminder email the day before. Expenses: ========= SIPB allocates $150 to a hackathon (assuming approval of the vice-chair). Most of this should be used on food (see below). If you have extra money, you can be creative. For Hackasaurus Rex and Velocihacker, we purchased prizes off of ThinkGeek and raffled them off on the hour. It was reasonably popular. You should expect to spend, out of pocket, most of the $150. You will be reimbursed by SIPB. Make sure to collect itemized receipts for all purchases and put them in an envelope in the treasurer's drawer ("incoming" folder). Food: ===== Purchase snack food at La Verde's. Two 2-liter bottles of soda, two large bags of chips and two jars of salsa have served us well in the past. Greg Price also suggests hummus and baby carrots as good alternatives. You will also want to purchase dinner food. Ask around for preferences. In the past, we have purchased large amounts of Indian food, including 20 mango lassis. If you call and ask to talk to the manager, you can likely get a small discount. (N.B.: Dhesi Daba is not a good choice for cost efficiency reasons.) It is generally a good idea to have a good idea what people actually want. In particular, take note of spiciness and vegetarian preferences. You should order food well enough in advance that the restaurant has time to prepare and deliver it by the time you want it, but also not so early that you don't have a good sense of how many people are at the Hackathon and what they want to eat. Probably around 2-3 PM is the best time. Technical stuff: ================ Login script: ------------- (Make sure you are on moira group sipb-www, as you will need to create files in that locker). For statistical purposes, it is useful to know how many people came to the hackathon. A simple Python app is available at /afs/sipb/project/sipb-www/web_scripts/hackathon-signin/ http://sipb.mit.edu/hackathon-signin The file /afs/sipb/project/sipb-www/web_scripts/hackathon-signin/HACKATHON_NAME contains the name of the current Hackathon. This script will record the users' input in YAML-encoded text in the file /afs/sipb/project/sipb-www/web_scripts/hackathon-signin/records.txt You can use this file for raffles (for prizes), statistics, spam, stalking, etc. Wiki: ----- After this, you should create relevant pages: http://sipb.mit.edu/hackathons/ Take a look at, e.g. http://sipb.mit.edu/hackathons/velocihacker/ for ideas. Also, have http://sipb.mit.edu/hackathon and http://sipb.mit.edu/ redirect to this page. http://sipb.mit.edu/hackathons//projects This should be a list of projects that are being worked on, including people and locations. Have an item for "your project here!" or similar. Also have http://sipb.mit.edu//projects redirect there. Note that the wiki has no "create page" button, and there is no "edit" button on pages that don't exist. To create a new page, go directly to https://sipb.mit.edu:444/ikiwiki.cgi?do=edit&page= To add a redirect on a page, the wiki code you want is [[!meta redir=]] Zephyr: ------- Encourage discussion on zephyr, either on -c sipb or -c $HACKATHON_NAME. Social stuff: ============= A hackathon is every bit as much a social event as a technical one, if not more so. It provides a unique opportunity for people to meet each other and work together in informal environments, and for people to get to know SIPB (and vice-versa). As organizer, you should make every effort to talk to new people. Make sure they feel welcome, answer their questions (and ask them some!), and generally try to make sure they are engaged and entertained. It is very easy, especially near the end, for SIPB regulars to get into a niche and for new people to feel excluded. Try to make sure that that doesn't happen. Someone should try to help people find projects they are interested in. One way to do this is to have enthusiastic happy person who knows whats going on at the door greeting people, asking what their interested are and routing them to the people leading those projects. Afterwards: =========== In general, it seems that Hackathons end with mostly hardcore SIPB members sticking around the office (which is, of course, understandable). You should make sure that you clean up the office (if you have to leave early, either clean up before going or delegate someone else to do so). If you want, you can try to organize a small event (e.g. movie night). Note that movie nights should not be organized as official, public SIPB events (which the hackathon is) for legal reasons. Send a follow-up email, discussing stats, thanking people for coming, etc. Mention it at the following SIPB meeting.