NASA Space Apps Challenge, 2014

Two weekends ago, I attended the NASA Space Apps Challenge, held here in Kitchener-Waterloo. This was the first, outside-work hackathon I’ve ever participated in - in the past few months, I registered for several, but never ended up attending.

Saturday morning, I formed a team with three strangers (not strangers anymore!) to work on a project. The goal of the hackathon was to solve an interesting, space-related problem. We chose to tackle the challenge titled “Asteroid Prospector” by developing an interactive asteroid mining game, which would allow folks of all ages to explore the different classes of asteroids, and their mineral compositions.

Throughout the day, we gathered relevant asteroid distribution data and converted it into a usable format, so that we could use it to create algorithms which would spawn asteroids in our game. We chose to use the Unity 3D Game Engine, which two of us had some experience with. Despite my previous lack of exposure to Unity, I was able to contribute on the scripting and data integration side of things (one of the three languages used by Unity is C#, which I’ve been using at work for almost a year now).

Most of the early half of Sunday was spent just trying to make things work together! In the end, we were able to create (most of) what we wanted (there were a few things here and there, some last minute setting out of fires, things I presume are common at hackathons…). It was definitely a fun challenge! I think what helped most was our focus to just get a product out there, and have fun while at it…

Our demo could’ve certainly gone smoother - we had some scaling issues when I connected my Macbook to the demo projector - our in-game buttons refused to work when clicked on, and only after playing around for a bit, I was able to figure out that the buttons worked if you clicked a few inches below them… Luckily, the judges came around to our desk after the official demos, and we were able to demonstrate features of the game that we were not able to show off in the presentation.

To our surprise, we won the regional challenge grand prize!

Which means that our project, Rocks! Lasers! Profit!, has moved on to the next level - global judging by NASA! We spent most of our spare time last week working on fixing bugs, introducing enhancements and new features, and in general, preparing the project for prime time. Last Sunday, we finalized what can be termed the second release of the project, submitted the required video, and are now awaiting results.

We don’t exactly what the future holds for our project, but one thing is for sure - this project brought along a lot of firsts for me. Not only was it my first hackathon, it was my first foray into game development, along with the first serious competition I’ve been in since I started university! It was a week filled with experimentation, trial-and-error and hands-on learning, aided by constant collaboration.

You can follow our project, track issues and enhancements, and check out the wiki on GitHub. If you just want to test out the game, head over to to play a web version of the game.

Happy Mining!


Now read this

Deploying a Meteor application to Digital Ocean using Codeship and Meteor Up (mup)

I’ve been working on a Meteor project that just reached a somewhat deployable state – figured it would be fun to experiment with and document the deployment process. Before proceeding, do note that this is not a tutorial or a... Continue →