Somewhere around the end of July, I saw this interesting one-month hackathon organized by Ministry of Education of Malaysia. As I would be having a 1.5 month holiday very soon (plus the prizes looked very attractive haha), I decided to give it a try and invited 3 of my other classmates to join together.
Brainstorming Phase
This hackathon was organized by government bodies, so the problem domains were related with Malaysian problem. Besides, the product of this hackathon must be in a form of mobile application, be it IOS or Android application.
Like a usual long hackathon, the first phase was idea submission & design phase. After some discussions, one of us came out with a decent idea. It was about developing an app that allows users to propose their business ideas and look for investments from other users. We came out of this idea in response to increasing employment in Malaysia due to Covid-19.
After that, we spent another few days to come out with the mobile wireframe which was just the design of the app. It wasn’t too hard, basically my team just went to figma and designed it.
After about one week or two, my team was happily shortlisted as one of the 10 finalists (yes, only 10 finalists, so getting top 3 felt like hopeful to us). Then we began to enter the development phase.
Development Phase
So, what did we do first? Planning of course! We divided the work and since I was the only one with some experience on developing Android app, another person who learned about Java before and I worked together for this part. Meanwhile, one person was doing the server with Python Flask and another one was responsible for database and SQL.
Just like a normal group work, we used github to collaborate. The plan was really great, but execution? Slightly worse. Due to our inexperience (I had only made some simple apps, nothing complex), it took us quite long to preogress through like the starting phase.
It took us about like 2 weeks or so to get used to the development for my team, to finish one of the very first things like login, registration and profile page. Then, we moved on with a few more things like hosting the API codes on pythonanywhere. (I chose pythonanywhere instead of heroku because pythonanywhere gives an online storage of 512 MB which suited our needs as we simply used sqlite3 to store the records instead of mysql)
Anyways, we worked hard throughout the month, and managed to pull out the main features but of course mostly were incomplete. Furthermore, due to limited time, we had to abandon one of the features, that was the discussion page. Nevertheless, I just submitted (yes I was the leader) the project right about 5 minutes before deadline because we still neede to rush for some unfinished work.
Presentation Phase
I believe it was about 1 week after the submission date, we had to do a presentation about the app (actually it’s just this morning). Nothing much fancy about it, my group just did a 5 minutes demo on the app, and another 5 minutes to explain other details. The judges did ask several questions on our app, and I think the biggest flaw in the app would be incompleteness. Beside that, everything else looked good to me, perhaps there’s some chances for my team to win? I don’t know, we will only know the result in 30th September.
My take on this
Overall the competition was quite interesting as well, with a mentor session somewhere during Development Phase. I did learn a few things in this competition, and of course sharpened my Android development skill & some backend skill as well since we needed to integrate the app with the server. Also, the competition itself was held very effectively as well.
Is this competition a very great experience for me? I don’t know. During this period of time, I was very busy with some of my teachings and also another project that I’ve undertaken (probably I will write about it soon). I was very stressed during this time and had a few sleepless nights because I was worried that I couldn’t finish the work.
Nevertheless, I still see this competition as a somewhat positive experience. I got to know how to work properly with other people and explored a lot about Android development. However, from my perspective, unless you’re planning to take the hackathon as an experience, you should always get a team of experienced (or at least intermediate level, in my opinion) to be able to win the competition. Oh and not to mention, someone innovative who can come out of great ideas is important too!
Lastly, if I have a chance, I think I will be joining it again next year with a deeper knowledge to try and win!