An MDSI student perspective on attending the NASA Space APP Hackathon
By Anthony So
What is a Hackathon?
A hackathon is an event where the participants collaborate to tackle some problems and challenges set by the organiser. This kind of event is getting more and more popular across the globe. Corporations, governments or NGOs have seen the benefits in organising these competitions. First it is a good opportunity for them to create some buzz around their organisations, secondly they can find talented individuals they may want to hire and finally they can benefit from all the ideas and concepts the different teams may come up with. For participants it is a good opportunity to get some hands-on experience with real problems, meet new people, win some prizes and maybe find a new job.
NASA has organised its own hackathon for a few years now. But this year is the first time it was held in Sydney. For 48 hours more than 130 cities around the world worked on 40 different challenges that NASA made available. If you want to learn a bit more about the event take a look at the website: https://2016.spaceappschallenge.org/challenges
Here I come. This is it. It is Saturday morning and I am on my way to my first hackathon.
First thing when you arrive you have to register and you receive your super cool t-shirt of the event. For a fraction of a second I thought about running straight away with the t-shirt 🙂 I think everyone went through the same feelings for their first hackathon. I am so scared and anxious. Do I really have the right skills for this? After discussion this with my team mates we realised it was the first hackathon for almost every one of us. Cool! I won’t slow down the group more than anyone else.
The organisers reassured us at the beginning of the event. The challenges are real problems that NASA hasn’t solved yet and they are obviously not expecting to get a finalised perfect solution in just 48 hours. What are they are looking for are new ideas and concepts they may not have thought of and help their researchers try new experiments.
The challenge we picked was called Astrocize, which is related to the issues astronauts are faced during their travels in space: muscular and bone density loss due to the absence of gravity.
In our group we had a very diverse set of skills. We had a web developer, a PhD student, a software developer, a fitness trainer and 2 data scientists (Sereen and I).
Time to work! We first started the challenge by a brainstorming session. We ended up with a very colourful wall full of post-its.
We started by defining the problems and their root causes. From there we tried to identify their impacts, what are the current solutions and what can be improved. Finally we identified opportunities for each point. We defined 2 main streams: make the fitness routine more efficient, and secondly more interesting and fun. The first one was definitely a good opportunity for data scientists but unfortunately NASA didn’t provide any data set and we tried to look at some existing fitness database but couldn’t find any. We were facing a dead end for this stream. Sereen and I were quite disappointed as we wanted to have a crack at analysing some interesting data set. The second stream was a bit easier as it was relying on our creativity so we kept generating ideas for it: gamification, social media, challenges between astronauts and earth, inter-galactic competition…
One of the mentors came to see us and we explained what we had done so far and our difficulty about finding some data set. His answer was: “why don’t you propose a solution that will build this dataset?” My jaw just dropped. I was focusing on finding the best dataset that may not exist yet and I was almost giving up. I totally missed the point. I am here to solve a problem, and change a situation not just analyse some data. The level of maturity of every organisation regarding data science is not uniform and is wide spread. A solution to a so called data science project may just be to raise the maturity to the minimum required level: build the dataset needed. I was too focused on getting a data set from which I could run some machine learning techniques that I didn’t acknowledge the fact that there was no data available. So I decided to work fully on the second stream but extended its scope by creating a community on this topic and gather data from it.
Obviously this couldn’t be built in just 2 days so we focused on one feature only, but this helped me to define a strategy and a plan with the different phases required. We all worked hard to develop a demo and presented it to the judges.
We didn’t win any prize but we had a lot of fun. The most interesting part was, one of the judges really liked our idea and pushed us to keep working on it. He is now introducing us to a start-up incubator company. The beginning of a new adventure?
What I learned
I learned a lot about myself, how to manage a team and how to analyse the “business” requirements and identify the root causes of the problems. I also learned that data science is not only about focusing on data. The real objective of a data scientist is to help the business solve a problem. That in some cases you just can’t wait to get a good data set to start working. Sometimes you just have to work with what you got and come up with a solution that can help address the issue and gather more data. You may have to go through several rounds of experimentation and get more data and insights at every stage. That’s what one of the mentors told us: “if you don’t have data, define a way to create them”.
Aside from this, it was interesting to work in a very challenging environment. I didn’t know anyone from my group, I pretty much didn’t know anything about space and you have to deliver something in 2 days. I discovered a lot of tools and techniques such as accessing Twitter feeds through an API, using Amazon Web Services for cloud computing, what are the latest trends (web/app development, VR…) and also a new industry that is booming and requires a lot of innovative and talented professionals.
Like everyone I was a bit scared of what would have been my added value to the group but the reality is that everyone else in the group was thinking exactly the same. The magic of hackathons
does operate very quickly as soon as the challenge starts: the group will create a dynamic by itself. What it requires is:
- Be open-minded: listen to everyone in the group, talk to other groups, don’t focus only on a specific topic but be ready to learn new things even if they are not related to your fields. During the hackathon at some point I was debugging some AngularJS code… I had never ever ever coded in that language before and I succeeded to find the bug!
- Collaborate: don’t stay in your corner. Ask questions, talk about your ideas and provide feedback to the group. Collaboration is key! Even a simple task like performing a search on google, talk to the group first, someone may tell you they know or has heard about a website. That will save you time or even change your perspective.
- Make it fun, make it fun and make it extremely fun!