Last weekend, I took part in my first hackathon, hackUST, hosted by my university, HKUST
I read a lot about hackathons. But I have never attended them myself. As I am only in my first year into my studies as a computer science major, I still have a lot to learn. I knew that I wouldn't be up to par with some of the hackers attending the event but I signed up for it anyways ☺
Our project was called Freeloader. The name is quite stupid but that’s because we initially started with a stupid idea and then registered for the event with the name of that stupid idea. I thought about changing the name during later stages but unfortunately that was not possible. So we stuck with the name. Team Freeloader! Most of our code is available here. Only the web version is available on GitHub.
So here’s where our idea came from: HKUST holds a lot of seminars and events. Often, after these seminars and events, there will be refreshments. Legend has it that there is a WhatsApp group which notifies students with the information of the event and where the free food is. Freeloading food at such events is quite inevitable so we thought ‘why not have a platform to freeload properly like a pro?’ It wasn’t the best idea in the world but that was the best we could come up with.
We built more on top of Freeloader that the idea itself became more appropriate. We decided to focus it onto events based on your location. Freeloader will notify you if there is some event going on near you. We also thought that businesses could use it to promote their products to more people.
As a publisher, you can broadcast your event on Freeloader and people near you would be notified of the event. Freeloader will try to notify and reach out to the people who are approximately 200~300m radius distance away from you. If the publisher is a business and would like to reach more people, then the business can simply purchase a premium broadcast which will alert people within several kilometers away or simply notify the city.
Then we started hacking. Our team consisted of 4 people. 3 computer science majors and 1 social science major.
I couldn’t code as much as I wanted to because I had a midterm exam in the middle of the event (the midterm was for a required course all computer science sophomores had to take so I was really surprised on how the two events collided. ) By the time I came back, the back-end (which I wanted to learn and help out with) was already almost done ☹ and the front-end already started ☹
So as usual, I helped out with the design and the UI. I used React.js again. React native just recently got released and I wanted to use it but we decided to stick with using Swift for our iOS version. For the Android version, we simply packaged our website onto Cordova again.
Our demo was a bit bumpy as it had just been put together 1 hour before we were supposed to stop coding. But it all worked out to be well ☺
But enough about our product. Let’s talk about the atmosphere ☺
There were a lot of energy and buzz at the start of the day. I was quite overwhelmed by it because on the night before was the midterm exam for the algorithms course and the midterm exam for the course on OOP and C++ was going to take place in a few hours (I had to go to both. My schedule wasn’t so nice to me ☹ ) which meant that a handful of people had or will have an exam in a few hours. But it was nice to see people not fret about the exam and get cracking on their projects.
The area smelled really nice thanks to fresh popcorn and coffee ☺. Everyone seemed hyped. Some had already began coding while some were busy forming their teams on the last minute.
Like most hackathons, the fun happens at late night. We had several mini games to help people destress from the constant coding. Throughout the night, the organizers constantly brought in food and beverages so that we had enough energy to last the early hours of the day. Of course, every time food came in, it disappeared within a few minutes. Plus we sat at the table the furthest away from the center (because we wanted to sit next to the window) so we couldn’t grab as much food ☹
You could easily see that people were losing the focus and the energy the event started out with. I saw many people watching movies and playing games.
I went to sleep at 2AM. I was supposed to wake up and come back at around 5AM but somehow I managed to sleep through my alarm. Thankfully I woke up by instinct at 7AM and rushed back to the scene. I felt really guilty for oversleeping ☹ and tried to quickly catch up to the work I had missed.
The coding was to stop at noon. Thankfully, I managed to fix my part at around 10AM. One of my teammates had fallen asleep with his head next to his laptop (he stayed up all night.) I was feeling a bit hazy but told myself that I should be ok as I had enough sleep compared to some people in the event. Most of the coding was done but one of my teammates suggested that we add in a video streaming feature. I said that would be nice but asked if that would be possible as one of the teammates was sleeping and I didn’t know how to implement that feature and nor did the remaining teammate. We only had 2 hours left and only 1 person knew how to implement it.
Amazingly, we did manage to add a video streaming feature. I don’t know how we did it but we did. And I’m glad that we did because it became a selling point of our product: live video streaming. We made it through the first round of judges with our short improvised pitch and when it came to the real deal in front of all the judges and participants, there was a round of applause when we began to stream a live video of the audience :’)
All in all, I wish I could have done more. Perhaps it would have been better if I didn’t have a midterm in the middle of the event. But I enjoyed working with my teammates and the atmosphere of the event. It was inspiring to see people being so passionate.
We didn’t exactly win the event but we were very satisfied with the product we made. Several people talked to us during and after the event to tell us that they are interested in the potential of the product and the technology behind it. We were very encouraged by these positive comments that we decided to carry on with Freeloader (which BTW, will soon be renamed to something without a negative connotation) in the future and hopefully launch the product. So overall, we like to think we won the event ☺
hackUST is only 2 years old. And it was very impressive for a 2 year old event. Despite the fact that the event was an overall success, there is a lot of room for improvement.
Perhaps in the future a recycling scheme can be implemented as there were a lot of recyclable waste (plastic bottles and aluminium cans) being thrown away everywhere.
I look forward to other hackathons I plan to take part in the future ☺ It’s certainly an event which I would love to take part again.
To top it all off, I would like to thank the student and staff organizers for this event. Without them, the event wouldn’t have been as epic as it was. And also a big thank you to our sponsors (and a personal thank you to GoGo Van who sponsored our prize ☺ )