Sign in
Log inSign up

My Hackathon Experience

TH.0 GovTech 2021 Hackathon

Jade Kneen's photo
Jade Kneen
·Feb 19, 2021·

25 min read

Day 0: Kick Off

Here we go! Last night was the official kickoff for my third hackathon (and second virtual hackathon). This one was hosted by a company called TH.0 and honestly I was nervous. This would be my first hackathon I wouldn’t know anyone attending.

In all honesty, those nerves didn’t calm down until about 8pm last night. Kickoff was at 7.

Let me start from the beginning.

I found out about this hackathon event on LinkedIn. When I was “GovTech” I thought it would be hosted by the UK government and that sounded exciting. It took a while before I realised “GovTech” meant technology to do with the government.

But still, it would be interesting.

I signed up at a developer without a team. I was informed that the hosts would find me a team. I’ve seen that happen in previous hackathons but this would be the first time I would need it.

So Friday came. Kick off day. And at some point in the afternoon I got an email with an invite to the hackathon’s Slack channel. This was it! I must have been eager because I was one of the first few to send a message on the channel – well, eager or there weren’t actually that many people who would take part. At that point I didn’t know. That’s the anxiety of a virtual event.

Next we had to inform the hosts about our preferred challenge. They had set out four challenges: engaging voters, modernising the voting process with block chain, using AI for engaging voters and preventing fraud in elections.

I chose engaging voters.

Within an hour I was added to another channel with four other people. There was another developer, a UX specialist, and a HR person. In three different time zones.

Which did not help my nerves when no one in the channel responded when I sent some initial messages. In fact by 7pm I actually messaged the hosts to see how long I should wait before trying to find a new team if no one in my team actually ended up participating. They told me to wait until 8am the next morning to allow for the different time zones. Ok then.

Then it was time for the kick off meeting on Zoom. There were several people in that meeting which was reassuring. People were actually taking part, phew!

After the initial Zoom meeting finished there were a swarm of notifications from our team channel. The hosts were adding a few extra people into our team. That’s when the chatter started. The hellos, the hi’s, how are you’s and general introductions.

One of the other people went ahead and set up a GitHub repository. I set up a Trello board. Then she also set up a Zoom call and I jumped on that (it took a while for the guys to join us but we got a good majority in the call).

By this point it was just after 8pm – well, for me that is. Two on the call were in the mid afternoon. One was three hours ahead of me, another was only an hour. Then there were the individuals who were still offline because it was 3am!

Juggling time zones was going to be a nightmare.

While we were trying to figure this out I asked if some sort of excel/google document would make sense to help highlight what time people would be working. Saving people from having to constantly translate to GMT time zone.

That’s when the woman who set up the Zoom call mentioned a website called LettuceMeet. It’s an app which allows users to “block out” their availability in their local timezone and then does the leg work for you.

Brilliant! We input our information and realised that, thanks to the time zones, there would be someone working at every point of the weekend.

The next issue was how to document our thought process. We already had Slack, and Trello, but another team member mentioned a whiteboard app. It would allow us to all write our ideas etc on the same document at the same time and see other people’s work in real time. That was great so that was set up.

img_20210214_210435_1952908317651742658983.jpg

Now it was time to get working.

By this point it was around 10pm so I was going to be calling it a night within the next hour or so. Which worked quite well as the ones who were in the middle of their day had to jump off for school, work etc.

But we thought it would be great to start bouncing ideas around. This was facilitated by one of the UX specialists and he had some fantastic processes which helped us narrow down our ideas. And there were a lot! It was so useful because it helped us really narrow it down.

Around 11.15pm I finally called it a night. Ready for an early start the next day.

Day 1: Getting the Idea and Starting

8 am

Good morning! Ok, so I had a late night and completely messed up with my plan to get up bright and early. So I quickly jump on the morning Zoom call from bed. From the number of people who had their cameras turned off during that zoom call, I expect I wasn’t the only one dialling in from bed.

8.30

So the morning zoom call is finished, and I’ve finally dragged myself out of bed. I am dressed. My laptop is turned on. Time to get back to work.

I dial into the team zoom, and two of the other team members are already in the middle of a discussion.

This particular conversation sets the tone for our morning. The UX specialist highlighted that he didn’t think that what we came up with last night addressed a specific enough issue for us to solve.

As a developer, I am the first to admit I am not familiar with starting a project from scratch. Generally, I am interpreting work which a Business Analyst or Product Owner has already decided.

Thankfully the person who highlighted the issue also had some exercises to help us solve it. By solving it, I mean pinpoint one specific pain point for voters we wanted to address.

10.30

Now it was time for our first Key Speaker. Speakers are a common trend that I’ve seen in hackathons. I always jump out of work mode to attend these talks because it gives me a break with a quick context switch, but I will still learn something new.

This talk was by Richard Hallewell from Government Blockchain Association.

Though I went into the talk with no real understanding of blockchain, it was an exciting talk. I was excited hearing about the benefits of using blockchain within diplomacy and how governments can use it to protect against voter fraud and even increase population participation in politics by voting on important matters.

11.30

Back on the team zoom. After we have finished the exercises, we feel like we have a better idea of a specific pain point and address it. Before we broke off for the key speaker, we tried to determine what kind of information should draw a user to the app. Now it was time to (hopefully) conclude that debate.

Initially, four of us were on the call, and now another member of the team jumped on the zoom call. As a team, we paused the conversation to bring him up to speed. We explained the changes that we had decided on that morning.

Again this caused another discussion, which was good because it allowed us to see the decisions from someone else’s perspective and address any pointers that we had not considered. One point the newest arrival brought up was rewarding users for interacting with the app to engage them.

Rewarding users was something that we had discussed last night. It had initially been a significant aspect of our app. However, this morning’s discussion made us realise that we had decided the problem around the app features that we wanted – rather than considering the issue and then decide how we could solve it. We had been putting the cart before the horse essentially.

So while the reward system was something we did want to introduce, we agreed it was not something that the app would require for the minimal viable product (MVP).

Listening to this conversation was a great experience because it highlighted a crucial hurdle in hackathons: we don’t have the time to develop a full-blown application. We need to consider the resources and time frame.

12.30 pm

It’s time for our second speaker. Wow, this morning is flying by! This time we are hearing from Walter Pasquarelli, who is a Policy Advisor at Oxford Insights. He spoke to us about how other countries are approaching GovTech and how essential incubating startups in this sector is becoming.

He highlighted the key point about making everything user-friendly and improving the experience for ‘lazy’ users (who wants to go through all the hassle of setting up their Government Gateway ID?).

13.00

We’re back. We have some ideas for the page layouts. We discuss moving our thoughts from Mural to Trello cards to tidy things up. We have someone take on that role. Us developers agree we have enough to get started with coding.

I am starving so time for lunch.

Oh no, we still need a team name!

15.20

I’m back from lunch. Unfortunately for the team, I gave us a random team name while they were all on a break, but there doesn’t seem to be an outrage. I missed the third keynote speech but TH.0 record each slot so I’ll check that out in a bit.

I dial back into the team zoom call, and again, I appear to be turning up in the middle of another debate. This time we’re setting up user stories and acceptance criteria. It’s vital that everyone, especially the developers, are clear on what we want to build.

However, we have less than 24 hours before the submission deadline, and things start getting tense. When some people want to jump on coding, others want to stick to prototypes, while some want to continue pinning down the key points. Unfortunately, when you’re working on such a short timeline, these conversations will start cropping up quite often.

16.00

Do you have those moments when you hear yourself saying something before your brain has fully engaged? I’ve been working for too long. Let me tell you; I would have never expected as a C# developer who is most comfortable figuring out SQL databases to hear myself saying “let’s stick with the MERN stack”.

But here we are.

I’ve volunteered to take on the backend and database side of things for this hackathon. It’s nothing too intense since obviously we are less than a day away now (and I will be going to bed in about 6 hours). I’m not too worried. But, at the same time, who even am I anymore?

16.30

Just as we all separate to our breakout rooms, there is the fourth and final keynote speaker of the weekend.

This time around we’re getting pitch-perfect notes from Somdip Dey from Nosh Technologies. He even gets us warmed up with an energy booster chant at the beginning of the talk.

17.30

The hackathon is getting serious now because it’s time to get coding. We all jump on a team Zoom call before the MERN specialist and me go to our coding breakout room. Having the breakout room was great because we didn’t bore the designers with how many questions I had about setting up a MongoDB collection.

18.00

Now the database has been filled with some dummy data; I’ve jumped back in with the design team. The other developers are figuring out the database and codebase connections.

The design team is working on branding after another company had already taken our initial product name.

Time to brainstorm all the ways you can mix and match “vote” and “politics”.

19.00

Things are moving quickly. We’ve settled on a name, and I’m back on the code. We realised that we didn’t have models set up for the data side of things, so we fixed that. Next, we’ve decided to test if the calls work with Postman.

We’ve also a preview of the logo the designer is creating. If we don’t manage the code side of things, I think we should win this just for the creative side.

21.30

We’ve started on the presentation.

We’ve agreed on the logo.

We have successfully connected the database to the code.

Time for a one-to-one session with TH-0’s CEO and Joshua the co-host.

22.10

Wow that meeting was high. Especially for this hour of the night! I am ready for a nap, and Sarah, the CEO, is so excited about our idea. It was great to hear such positive feedback and some great ideas to ponder tonight to expand on our app idea.

Going off the team’s feeling in the Zoom team call right now, I think everyone has caught up in the positivity.

22.30

Ok I know I’m going to be lazy, but hey, I’m calling it a night this early. I want to get up and be focused bright and early for the big day tomorrow. Fingers crossed that those doing the “night shift” will have some fun and we’ll wake up to some significant progress.

But to be honest, I have no doubt we’re going to do well tomorrow.

Day 2.1: Submission Deadline

8 am

Oops. Another morning. Another lie-in. I have some vague dream-like memory of my early alarm going off at 6 am, but I knew straight away there was no chance I’d be getting up again. By the time the Team Regroup chat started at 8 am, I just decided to dial in from the comfort of my bed.

8.45

I think I’m awake. Sort of. I get onto my laptop and check out the Slack channel. Lots have been going on through the night (well, my night). There have been discussions about the designs, the logo has been changed, but we have code. We even have our cryptocurrency. Our team member in Mexico is pulling an all-nighter to get this done, so I better get some caffeine and get back on it.

9.45

This morning is just whizzing by! I’ve spent the last hour research stuff for our presentation. Now it’s time to update the README file on Github and tidy up our submission folder ready for the noon deadline.

10.23

The one downside of this hackathon being virtual is that there’s no free food. I was tempted to order a Dominos pizza just for tradition’s sake but hey, maybe without pizza we’ll win (right?)

11.30

HALF AN HOUR TO GO. We’re all on a team call adding the final bits to our submission.

11.55

Is it all there? Go through the checklist. Yes, it looks like we’re good.

All submitted.

Time for a break before our next meeting. I take advantage of the free time to do my usual weekend chores which I’ve pretty much ignored the last two days.

12.30

I’m back. There’s been some confusion over the next meeting which has been pushed back half an hour, but at least we’re all online ready. Time to get the presentation sorted for 2 pm! Not going to lie, I’m ready for a nap right now.

13.00

There is a technical check for the presentation right now, and I feel a migraine coming on, so I step away from my computer to give my eyes a rest. Sometimes it’s hard to remember the self-care side of things during a virtual hackathon because there is so much going on. As we’re all sat somewhere by ourselves, we don’t get that reminder to step away from your computer, grab a drink or some food, or generally turn away from the computer screen like we would if we were all together in person.

14.30

It’s presentation time! Here we go! Our team (Team Timezones) is up first after a 10 minute warm-up from Sarah. I watch each five-minute presentation with anticipation. We’ve selected our UX specialist as our presenter, and he does a fantastic job. Originally the plan included demo-ing the code and the proto-type. There has been a decision to omit this section due to time constraints. It ends up being a great decision as the presentation finishes at exactly 5:00 and handover to the next team.

15.10

The presentations have all been finished. There were a few tech issues, but the concepts were all fantastic. I’m feeling optimistic for a top-three position, but I have learned so much this weekend that I’ll be happy with any position.

We jump on a quick team zoom call to praise the presenter and make our predictions for the awards. We’re all hyped up for the final countdown. After about half an hour, we break off and have a quick break before the 4.30 awards presentation.

And with that, I’ll end this post. Come back tomorrow and see how it ends and what I learned from the experience!

Day 2.2: Awards Anticipation

This was it. It was 4.30pm and we were about to find out where the judges had ranked us. I was sure of a top 3 position. Others were betting on a win. But we all agreed that no matter what Sarah was about to announce, we had all enjoyed the weekend and appreciated each of the other members of the team.

I dial into the zoom call. Except wait there’s an issue. Sarah warns us that there will be a five minute delay to the start. They’re doing a recount because it is so close. In fact, they’re doing several recounts.

On the team Slack channel we’re all chatting nervously while we wait.

There’s just one point in it.

Finally Sarah is back. The results are confirmed. But she keeps us all in suspense for a bit longer to make sure the TH.0 team and keynote speakers get a round of applause for their help hosting this event.

They were fantastic.

And now it is time for the top three teams to be announced…

img_20210214_210435_2087757718303625831601-edited.jpg

Yes that’s right. We came second. Amazing! This is actually the second time I’ve come second in a hackathon but this one feels real (the first the whole team had only been coding for a month so they took that into consideration, now I felt I was a real developer).

We all jumped on another team call and excitedly chatted about our achievement. From being thrown together as strangers on Friday to creating a viable app to solve a widespread problem. We had done it!

From there we set up a group chat on Linkedin to keep in touch. Then all the notifications started pouring in as we posted about our achievements on social media.

So if you have made it to the end, and if you have always considered taking part in a hackathon but didn't know what to expect - I hope this has helped you. And hopefully I'll see you signing up one day too!