Lachlan's avatar@lachlanjc/notebook

How to Start Your First Hackathon

This is adapted from my notes for my talk of the same name at Hack Club’s Flagship summit, July 2019.

Me presenting this talk at Flagship 2019

Introduction

I’ve run 3 hackathons:

  1. Hack Happy Valley, central PA’s first high school hackathon, 2 organizers, 16 attendees, June 2018
  2. Hack Pennsylvania, Pennsylvania’s largest, 6 organizers, 115 people, January 2019
  3. Matthew ran Windy City Hacks, which I co-organized, Chicago, 8 organizers, 155 people, June 2019

This post will run through:

  • Why you might want to start a hackathon
  • How to get started—picking a team, planning the basic
  • The critical components of organizing—which are sponsorship, venue, marketing, & attendee experience
  • How to lead a team, briefly

Disclaimer: this is all from my experience. Your community & event will be different, don’t blindly follow everything I’m saying :)

What is a hackathon, & why run one?

  • A hackathon is an event lasting typically 24 hours, where 10–1,000 high schoolers all code. At the end, they present for judges who award prizes.
  • What’s involved in organizing? You need a bunch of people in a room with food and internet for 24 hours. (Also mentors, judges, prizes, & lots more.)
  • Organizing hackathons is the most stressful thing I’ve ever done, but also one of the most rewarding. It’s created real impact in my community, & I’m super proud of my events.
  • You should do it if you want to take your club to the next level, or if there aren’t any coding opportunities in your area.
  • You need to be super, super excited about this! You should imagine what the event will be like & be dying to make it happen.

Starting out

  1. Team.
    • Organizing a good hackathon is more work than you could ever predict. You should have at least one other person.
    • Team members need to be intrinsically motivated—to care, deep down.
    • Having a huge team for your first event will hurt more than it helps. With more than like 5 people, it’s more work to manage & communicate with everyone than just doing the work.
  2. General plan.
    • Why?
      • Literally write down, why are you doing this? For me, organizing Hack Pennsylvania, there were just zero technology opportunities for teenagers where I’m from. Learning to code fundamentally altered the trajectory of my life. I wanted to bring that to my community before I graduated. If your motivation isn’t genuine, I don’t think you can run a great event—it’s just too demanding. Figure out why you’re doing it.
    • Who? Define your audience.
      • If you’re in high school, your school is a great place to start, but what about making your event regional? With Hack Pennsylvania, we advertised across the state, mostly to high schoolers but also some local middle schools.
      • In my community, not many people know how to code, so I marketed to beginners as “learn to code,” but adapt based on your area.
      • Your hackathon can be any size. My first one was like 15 people. Running a 300-person event shouldn’t be your goal—serving your community should. That said, once you’ve got a goal, double or triple it, & aim for that. Then, the failure case is getting close to your goal :)
    • Where? Especially for your first event, do it where you live/go to school. You’ll have to find a venue, contact local companies for sponsorship, contact local teachers for marketing, etc. You need to know the area.
    • When?
      • For a high school hackathon, a weekend, probably not during summer.
      • Most events are 24 hours, like noon on Saturday to noon on Sunday, though some are just one day.
      • Give yourselves at least 2 months for organizing—you’ll quickly realize that’s a fast schedule.
      • Check local & school calendars, to avoid conflicts (like the SAT or big sporting events).
      • Set a tentative date as early as possible, so you’ve all got your eyes on one goal.
  3. Name & website/social media.
    • Don’t spend too much time on it, but you should be proud of it. Los Altos Hacks, Hack the Fog, Hack Pennsylvania are all good names. Make it fun if possible, but not too abstract.
    • Get a website online. Just cover the basics. Name of event, dates, city, venue TBA, describe what happens at a hackathon, add some pictures. You need a registration form, Google Forms works fine, copy it off another hackathon’s site. Buy hack[mycity].com or something close. Get your site up in a weekend, not a month.
    • Get an Instagram. Great way to communicate with attendees.

In my experience, there are 3 digital tools you need for the team:

  1. Email accounts for everyone—you’ll be sending thousands of emails.
  2. A place to talk—most teams use Slack. Everyone needs to be there every day.
  3. A shared task tracker, like Basecamp or Trello. You might think Slack is enough, but a single, up-to-date list of every task with a deadline & who is assigned is incredibly clarifying.

Recap:

  • Assemble a small team you trust.
  • Make a basic plan. Why, which weekend, approximate size target.
  • Pick a name, get a website & Instagram online ASAP with a registration form.
  • Get email accounts, a way to talk, and a to-do list for your team.

4 things

Now, you’re ready to organize! There are 4 things you have to do well, especially at your first hackathon: sponsorship, venue, marketing, & attendee experience. The rest is mostly noise.

Sponsorship

  • I raised $5k for Hack Happy Valley, nearly $15k for Hack Pennsylvania, & Windy City Hacks raised nearly $14k.
  • The first thing you need is a nonprofit bank account.
    • Storing money with your school or a local nonprofit is typically a disaster—I’ve heard horror stories of school administrations embezzling money and overbearing nonprofits requiring approval of every purchase.
    • If you’re in the US, just use HCB. (Disclaimer: I designed HCB!) I would never have started organizing without HCB, & I can’t imagine doing it without. There’s no upfront fee, you get mailed physical debit cards for all your organizers, you see every transaction online, sponsors can pay you online, it’s great.
    • If you don’t use HCB, you’ll need to spend thousands of dollars hiring accountants, CPAs, & lawyers to open a bank account, incorporate, write legal documentation, & become a nonprofit, which takes years. (This is a joke. Use HCB.)
  • You need to write a prospectus. This is 2-3 page PDF document explaining the problem, how your event solves the problem, & how a company can contribute to your event.
    • For Hack Pennsylvania, the problem was simply there are no opportunities for teenagers in tech in central Pennsylvania.
    • The solution is that I’m running this 24-hour event teaching beginners to code.
    • You can help by donating products, employees as mentors, but mostly, give me money. For $500, I’ll put your logo on the shirt, for $1500 you can talk at the opening ceremony, etc.
    • Here’s Hack Pennsylvania’s & Windy City Hacks’ for reference. Feel free to use them as inspiration, but please don’t copy. Also, your event is different!
  • Once you’ve got a prospectus, make a list of companies—local & larger tech companies you might want to have as sponsors.
  • The basic process of how to get money from companies
    • Start with a conversation. If you know someone who owns a local business, go talk to them. If there’s a tech company in the area, find their CEO, or Head of Marketing or Operations or Community Development.
    • If there’s a faraway software company you think is cool, find an executive there, email them. Don’t email customer support—you want to find someone who can spend company money directly.
    • There’s a bunch of free sites like hunter.io & findthat.email for finding people’s email addresses. Use them.
    • Explain what you’re doing. Hey, I’m 15, I’ve grown up in this town. There’s no CS at my school, but learning to code changed my life. Now I’m organizing this free, nonprofit event to bring this opportunity to our community. Can you contribute $1k to make this happen?
    • You’ll probably get on a phone call or meeting with them to talk about it. See what they’re trying to get out of sponsoring (good PR for how their company contributes to the community), figure out their maximum contribution, negotiate.
    • Plan that it will take several weeks from your first email to having the money in the bank, & know that the majority of sponsors, especially where you don’t have a personal connection, won’t work out. Some companies even commit money & never pay. You should email probably dozens of companies, have several paying sponsors (Penn had about a dozen, with contributions from $500–$6k) & backup plans if you don’t succeed.
  • Hack Club’s Meginar (by hackathon organizing stars Megan Cui & Mingjie Jiang) is a fantastic resource with a lot more info here.
  • You can run a hackathon on $1k or $10k. It’s all about budgeting—make a spreadsheet of your costs & how much each sponsor is giving, keep a close eye on those.

Recap:

  1. Get on HCB on day one.
  2. Make a list of companies to reach out to.
  3. Email/have a conversation with an executive at every one. Some won’t reply, so be it. You can always email more companies.
  4. Get on calls with sponsors & invoice them.
  5. Make a budget.

Venue

  • It’s tough to find the right kind of space, & then you need it to be cheap, or free.
  • Priorities depend on location, but needs to be easy to get to. In a city, needs to be safe & close to public transit. You need security of some sort.
  • You’ll want a theater-like space for ceremonies, a classroom-like space for workshops, & (preferably different kinds of) desks, chairs, couches, bean bags, etc for people to hack in. You need somewhere to serve food, having a room for organizers to chill is great, some private spaces (conference rooms) for judging/deliberation.
  • My first hackathon was in the back of a Catholic Church, because I couldn’t find any other space. Windy City Hacks was in a fancy company office in a Chicago skyscraper. A college campus building can work great too.
  • Have a conversation with your venue setting super clear expectations. Are you responsible for cleaning or are they? How does security, HVAC, the projector work? What happens if the Wi-Fi goes down?
  • Make sure to book your venue with at least 3-4 hours before & after the event for setting up & cleaning up. Both can take a long time, especially with a big venue.

Marketing

  • Other organizers might disagree, but personally, the best form of marketing I’ve found is directly emailing teachers. Describe the event & ask them to tell their students or print out a poster for their classroom. You should email every STEM teacher at your high school, then every other nearby school you can find.
  • If your emails aren’t working, change them! Experiment with different subject lines, stories, see how many people get signed up from each, keep improving.
  • The most obvious way to think about marketing is what you’ve done—but it’s the wrong way to think about it. While I was struggling marketing for Hack Pennsylvania, Zach told me: if there are any high schools in your county that don’t know what Hack Pennsylvania is, you’ve failed. Think about how to get not just a few, but the majority of people who could ever possibly come to know exactly what the event is & when it’s happening. Every single student.
  • List your event on hackathons.hackclub.com—it will automatically be emailed to local subscribers & improve your SEO.
  • Check your SEO (there are tons of web tools)—especially if you’re in a city, coming up on Google for “[city] high school hackathon” is super valuable. Windy City Hacks started getting signups before we were even marketing.
  • Email your local newspaper, with a similar pitch to your sponsors/prospectus—be super genuine, provide photos & all the critical info (date/time, location, website. Hack Pennsylvania got an article like this.
  • Other ways of marketing: emailing principals to email their whole school, putting up posters at schools/local hangout spots, getting into parent groupchats (!)…
  • You should expect about half of signups to not show up. If you want a 50-person event, get 100+ signups.

Recap:

  • You need a huge base of students to know about the event.
  • Email a ton of teachers. There’s always more.
  • Email principals, put up posters, try different incentives.
  • You usually need double the signups of your expected event size.

Experience

  • In the end, the only thing that matters is the attendee experience. Don’t leave this until the last minute while you’re focusing on sponsors—your attendees don’t care about your sponsors or your marketing plans, only the event they actually came to.
  • Food. You need tons of snacks & soda. Serve at least dinner, a nighttime snack, breakfast, snacks throughout. It’s expensive, but Panera catering is an awesome option. If you can get a local restaurant to give you free food, amazing.
  • You need mentors at the event—adults who know how to code, walking around and answering questions or helping people find solutions. If there are local software companies, find some of their employees!
  • Workshops are critical if you’re marketing toward beginners. Have an introductory workshop at the least, like Hack Club’s Personal Website workshop, & having some more advanced/interesting topics is awesome too.
  • Prizes are nice, but don’t spend too much time or money on them. You’ll need to buy 3-4 of everything (for each team member). If you can afford it, AirPods. Make prize categories like best overall, best game, best beginner team, assign a prize to each. Spend a day, not a month.
  • You need judges if you’ll have prizes, preferably professionals in the tech/business world. A great place to find judges is your sponsors—they have a vested interest, & probably are in tech. The other place is Twitter/LinkedIn, but it can be tough to find. Any legit tech business owner or executive works. Remember, it’s a big ask to spend a Saturday or Sunday morning judging high schoolers’ projects, so be very nice. You should never pay for judges, but make sure to give them chocolate or something generous :)
  • Extra perks, if you have lots of money/planning capacity: laptop loaners, travel reimbursements, buses to nearby cities. None of these are critical.

My primary advice here is to plan the experience, end-to-end, from the attendee point of view. Before the event, what emails should people get, when? (I used but no longer recommend Sendy, available through HCB. I now recommend Buttondown.) What will check-in look like? Opening ceremony? How are mentors available? When are workshops? How will judging work? How are you deciding prizes? What’s happening at closing ceremony? Are we taking photos, posting on social media? (Does that mean a photographer?)

Break down the event into 15-minute chunks & run through the entire schedule, maybe multiple times, with your whole team, listing all the required preparation for each piece of the event. You’ll be shocked how many little things come up. I highly recommend assigning 1-2 organizers to run each part of the event, especially bigger aspects like meals & judging. This way you can balance out work across the team, give organizers breaks (especially for sleeping), & make sure there’s someone in charge of what’s happening at every point in the event. Here was the plan we made for Windy City Hacks:

Hackathon experience plan, made on iPad with the Muse app

Recap:

  • You need lots of food.
  • You need mentors to help with code.
  • You need workshops, esp for beginners.
  • Don’t waste all your money on prizes.
  • Invite some cool judges, be nice to them.
  • Plan the attendee experience the most. That’s what a great hackathon is—a great experience—so this is the most important!

Leading a team & balancing everything

  • Being the leader is stressful as all hell. I haven’t met an organizer who didn’t agree.
  • You always have to be doing 5 things at once. Sponsors want to know your venue, your venue wants to know who’s sponsoring, attendees want to know your venue & sponsors & judges, venue can’t happen without attendee count. You have to do all this in parallel.
  • You need to be closely monitor everything, but also praying that it comes together in time. As soon as you’re doing better in one area, you’ve probably neglected something else critical. Especially close to the date, everything is on fire.
  • Have weekly team meetings, for like an hour. (I recommend having them at the same time every week, & expect all team members to be present.) Prep, have a tight schedule, run the meetings sharply. You need to give progress updates, set clear expectations/deliverables for each team member (“someone needs to do this” rarely works out), then keep your team motivated.
  • The toughest part is, the buck stops with you, always. If parents’ emails aren’t answered, maybe you assigned that to someone, but finally, you have to make sure it gets done. It’s rough.

Resources

  • Join the Hack Club Slack—we have a private channel for hackathon organizers, ask a @staff member or DM me @lachlanjc for an invitation
  • I can’t recommend HCB enough
  • Watch Meginar for sponsorship info
  • If you want to organize an event & have questions, send me a DM on Twitter or the Slack (or an email, but I might be slow to respond)

Happy organizing!