Hackathons are cool. They bring developers together in a space where they can channel their insatiable curiosity and endless ingenuity into solving problems, creating things and learning from like-minded people.
The team at OfferZen think hackathons are cool. However, like most South Africans, we think loadshedding is really uncool; it is, after all, pretty difficult to hack anything other than firewood when the lights are out.
So we decided to team up with Dan Wells and Herman Maritz – the duo behind the wildly popular EskomSePush app – to host a remote hackathon for the Programmable Banking Community, which we’ve been supporting with Investec for the past two years.
We invited members to create solutions to a real South African problem – loadshedding – using the new EskomSePush API. The response was fantastic. 22 members (mostly collaborating in teams) submitted innovative projects. They produced some incredible solutions, all of which are open source and free for others to use, experiment with and build upon.
Perhaps the most remarkable thing was that we pulled it all off in two-and-a-half weeks, end to end. We learned a lot from this experience and thought we’d share it so that you can too. If you’re interested in running a similar event for your community, this step-by-step guide will help you get it right.
1. Get your technology partner onboard
If you want to run your hackathon alongside a technology partner, the first step is laying the groundwork with them. Create a proposal document outlining what will happen before, during and after the event, as well as the proposed dates.
Explain clearly what you’d like from them in terms of involvement, whether it be access to their API, an introductory video or a presentation. Don’t forget to articulate what they can expect out of it. This can be branding, publicity or access to a developer community.
For our hackathon, we asked EskomSePush to create a short video introducing themselves, the API and some potential use cases for it. We provided them with a brief outlining exactly what we wanted from the video.
Tip: Try to make things as straightforward as possible for your technology partner.
2. Decide on the details of your event
Time invested in sorting these out will make life easier for you, your partner and, most importantly, your participants.
How long is the build time?
Your time frame depends on the complexity of the technology involved and the problem being solved. Bear in mind that your participants likely have day jobs and will only have time to spend on their hackathon project over the weekends. We found two weeks to be the sweet spot for our EskomSePush challenge.
Tip: Launch your hackathon at least two weeks before the deadline, so people have time to plan before the weekend.
How do people register for the event?
Registration forms indicate how many people are interested in the hackathon (even if they don’t submit anything in the end), making it easy to communicate with participants and enabling your partner to provide access to any exclusive technology for the purposes of the build.
Tip: At a minimum, you need their name, surname, cellphone number and email address.
What and where do people submit their builds?
Prepare a submission form that captures the following information:
- Team name
- Participants’ names, surnames, cellphone numbers and email addresses
- A link to their solution and code repository (released under the open-source licence of your choice)
- Clear documentation on setting up their solution
- A two-minute video demo of the solution
- Their agreement to any terms and conditions you have in place
What communication channels will you use?
Use what you usually would to communicate with your community. Be sure to set up dedicated channels on Slack or WhatsApp, for example, to avoid spamming people who aren’t involved.
Will you provide use cases?
Use cases give participants a useful source of inspiration or help them structure their thoughts.
Tip: Chat with your technology partner about use cases that they have come across while speaking with their customers.
What are your judging criteria?
The bigger the prize, the more important your judging criteria. Decide on what these are as well as who will judge them beforehand. Pay particular attention to the quality of the idea, its potential strategic impact, and how it was executed and implemented by the developers.
Tip: Schedule a briefing session for judges before submissions close and a review session before scores are tallied.
3. Create your launch collateral
Prepare all the documentation and material you’ll need ahead of time, addressed to your community in your standard tone of voice. This includes all the details discussed above, as well as potential things like:
- A prelaunch teaser to get people excited
- Important dates (don’t underestimate the importance of making this super clear)
- FAQs and helpful tips
- Resources for help and support
- Information on what happens after submission
Tip: Even if you’re confident you’ve got everything down, ask someone not involved in the hackathon to proofread the material if possible.
4. Set up your hackathon support systems
Once you’ve made all the big decisions and prepared your material, the next step is getting the necessary systems in place.
Registration and submission forms
Google Docs and Typeform work well for these. The latter has the advantage of integrating with Slack, which provides real-time updates whenever someone registers. Remember to share your registration spreadsheet with your technology partner if you have one.
Event registration and setup
An easily accessible online space with all event details is essential. OfferZen has a space for our Programmable Banking community, where we publish our hackathon information under a Build Event section. Videos are uploaded using Loom, which enables you to remove background noise and add a call to action.
Set up a dedicated Slack channel and add people to it as they register. Keep the excitement high through regular, enthusiastic communication. Invite your broader community to join the channel too, so they can keep up with the events of the hackathon even if they’re not participating.
For our community members not on Slack, we used Mailchimp to set up a customised mailing list with a call to action. This is a good place to include links to get people hyped, such as a video introduction from your technology partner.
5. Launch your event
Send out a teaser message a few days before the launch to get the community excited. When the day arrives, launch your hackathon on email and Slack, along with any additional channels your technology partner might have. This is an opportunity to make your most engaged community members feel appreciated by inviting them to join the hackathon personally. It’s also a great reason to reach out to those who have been drifting away.
Remember to send out reminder communication between the launch, submission and the demo event.
Tip: All your communications should include a call to action with a defined purpose.
6. Prepare for your online demo event
Your demo event is the highlight of the hackathon, so it’s important to prepare carefully so that everything runs smoothly on the day.
Review your submissions
You may not be able to include all submissions in your live demo, so you’ll need to go through them to determine which ones to show. If you have specific criteria for awarding certain prizes, this may impact which submissions you include in the demo, so be sure the judges see them first.
Tip: Add the submissions to your online community space, alongside your hackathon details.
Schedule demo practice runs
Not everyone has done a live demonstration before, and we’ve found that doing practice runs with our participants has helped produce top-quality demos on the day. We support community members by providing them with guidelines around demo length and what to include, as well as an example slide deck.
Write a briefing document
A briefing document is a useful resource for everyone involved in running the event. It should include the following information:
- Hackathon run order, including time slots
- Any URL links they might need during the event
- Respective roles and responsibilities
- Contact details for everyone involved in the event
Tip: If your technology partner will be involved in the event, be sure to share the briefing document with them beforehand, and send the run order to all those doing demos.
Create an event presentation
A presentation slide deck gives structure to your hackathon demo and guides the audience through the event. Include the agenda and pictures of all the teams/individuals participating in the demonstration. Remember to thank your community and technology partner at the end.
7. Host the demo event
This is the moment everyone’s been waiting for when your participants get to show off their builds, and your community comes together.
You’ll need more than one screen if you’re hosting an online event. So make sure they’re set up to make it easy to share your screen for the slide deck and see the attendees on Zoom.
Ensure your team members are co-hosts
Do this as soon as you start the Zoom call, so they can help you share screens if necessary. It also keeps things running smoothly if you encounter a technical issue and have to drop off the call.
Get consent to record the demo event
You’ll definitely want to record the event for community members who can’t watch live. Keep in mind that you’re obliged to ask for everyone’s consent as soon as you start recording.
Keep an eye on the time
Use a timer to make sure your presenters stay within their timeslots. Before the event, brainstorm a few light-hearted ways of interrupting them if they run over.
Take a group photo
Or more than one! But it helps to have at least one picture where everyone’s smiling or waving. This is great for reports or blog posts about the event.
Most importantly, have fun!
You and your community have prepared hard for this day, so be sure to enjoy it. Demos are the best part of running a hackathon.
8. Post-event wrap-up
Congratulations! You’ve just hosted a hackathon. Your work is done – well, almost. There are still a few key things to take care of.
Send out relevant communications
Right after your event, send out a thank you message to the community and a request for feedback. You should have this already written, so it’s just a matter of hitting your mailing list.
Tip: You can send another message out a few days after the event with the final results, key takeaways and anything else of interest.
Share videos and slide decks
Upload the recording of your event to YouTube and post it to the community, so that anyone who missed the event or might be interested can view it.
Review and retrospective
Go over your feedback forms and schedule a retrospective session with your team to figure out what worked, what didn’t and what follow-up steps need to be taken.
Send out the prizes!
If you’ve got prizes, send them out ASAP while there’s still a bit of buzz around the event.
Get involved in the Programmable Banking Community.
If you have questions or want to say hi to the Programmable Banking Community core team, you can mail us [firstname.lastname@example.org], and we will get back to you.
If you want to see what the community has been up to, you can:
- Join the community
- Browse the community’s open-source projects
- Read the dev docs
- See more demos
- Read other programmable banking-related blog posts