GovHack 2017: My First Hackathon


We had approximately 48 hours to use open data and create a hack (web app/ mobile app). This was never going to be easy considering:

  1. I don’t know data science
  2. I didn’t have a team when I registered

Luckily, I knew the language I was going to work on: Javascript. In addition, I sporadically dabble on FreeCodeCamp’s online coursework ( Javascript ). FreeCodeCamp’s meetup group in Auckland are people like me, ones who are code newbies working on the same coursework. I met them prior to the hackathon to talk about project ideas and we came up with a few. But the meetup group was huge (12+) so we split into two teams and they used their idea (youtube presentation).

By Friday evening I was in a team of 6 people. Three developers including me, and three non developers.

A: Choosing a Project

This was the hardest part. It took us 8 hours during the hackathon to decide. The biggest mistake that we did was we assumed that data would be available (more on that later). My team started talking about the issues we were dealing with: transport, immigration (due to the changes proposed), housing prices etc. One of us dropped a bombshell and said let’s make a game. Suddenly I didn’t care about dealing with problems: I wanted to make the game.

I always wanted to make games but I don’t know much about it. Plus, I don’t have a clearer picture of where I wanna go with the game development so I haven’t tried it yet.

Our idea was simple: You start the game about 15 years prior. You start buying houses and earn money and in 15 years time you should have certain amount of money to win. Brilliant (and typically the premise of every tycoon game) idea. We knew it worked. To implement it we needed open data of house prices in the city/country.

We don’t have to work on the data at all. We just had to use it as stepping points. All of us loved the idea and even before we found the idea we started working out the mechanics of the game.

Turns out Auckland has no housing data of any kind. Sure we could find data related to renting or number of people in the city but house prices? Nope. This is an important point because there is a house price bubble in the city: housing prices are going up.

On Saturday afternoon we dropped the idea. I wanted to make that game but without data it wouldn’t be eligible in the hackathon. We had another brainstorm and finally settled on looking at the employment statistics.

B: Our App

His idea was to look at how industries are distributed and how many people are depended on it. This way we can tell predict which economies are vulnerable to decline in that particular industry. We planned on using a heatmap to show all the districts with varying colors depending on the distribution.

We found the data fairly easily.  We needed three components: a heat map, piechart for further distribution and lastly a slider so that we can see all fifteen years. We used C3 charts and Here API for creating the heatmap and pie chart (FYI: use C3, they are super easy and look amazing). I worked mostly on the layout and the slider.

Here is the finished product presentation and you can try it out here.

The Weekend

I haven’t seen this much work done in such a short amount of time except in university when the assignment is due. Neither one of us were willing to settle for anything less than what we had envisioned.

My friend also wanted to come but didn’t because he didn’t know coding. What he didn’t know was coding was only 50% of the work and the easier bit. We had to make a video on our project and the skills required for that is rare. All of us occasionally gave feedback to one another, encouraged one another. I ate all the food because someone has to.

There is something amazing about working straight for 36 hours. Sure I was tired, I still am a little bit. But if I was doing everything alone in my time, I would probably take couple of weeks for this, if I didn’t give up on this in the middle by frustration.

I was lucky enough that my teammates were amazing, accommodating to the fact that I don’t know more than the basics about Javascript. I am looking forward to next year, when I get to do this again and maybe by that time we would have better open data available.

Internship Monologues


PS: I got an internship recently, and this is how I feel everyday.


Angel-Devil-OnShoulders
Credits: The Mighty

What are you doing?

I am trying to understand this code.

You have to admit it is way beyond your comprehension.

No I got this.

You will screw up. They will know you are a fraud.

Shut up! You worked your ass off for this and damn it I am not going to let you quit now. Come on now, move!

Oh, this is gonna end well.


My mind is constantly working. When I am reading, my mind is concocting the next military fantasy novel, when I am coding my mind is trying to create ideas for the next big application. My mind does not deal with small issues.

Go Big or Go Home.

I sometimes hear my mind speak in a voice not very distant from my own, but it has a certain sense of arrogance that I can never manifest in mine. My mind wants perfection, it craves success and lastly, it wants that high of achievement.

I push myself to get it: constantly for almost everything. I have met people who say that it is tiring and they get burnout at the end of the day. I am lucky enough to not experience that so far. My mind is also smart enough to know when to stop trying.

Alas, it doesn’t know when to stop talking.


Oh shit! I screwed up.

No you did not, relax.

What have I done in my program: it completely crashes everything.

It is okay. Take a deep breath, you got this.

No I don’t. I should never have come here.

You are trying. That is all one can ever do, if it works or not is not in your hand.

Yeah I guess I can try.


It gets weird at times though. It is like I have the devil (he is not evil, mostly) and an angel sitting on my shoulders. One tells me to be the master of everything, to push above and beyond I have ever gone before. He tells me not to take shit from anyone ever, to keep chasing that perfection. It doesn’t give me the option of failure.

The other: it catches me when I fall, which is very often. It supports me, allows me to watch lots of dog videos when I am feeling down and slowly gets me back on track. It tells me it is okay to fail.


My internship has made the two voices extra loud. I am scared. Seriously scared about what will happen if I can’t do this.

You will not fail, you can’t.

I am struggling to understand how to code at the level of 4 year experienced coders. I have no idea how well I am doing.

It is okay, you are trying your best.

I am not afraid of asking for help, in fact that is what an internship is all about. Learning new things, working your way through challenges.Everyone is helpful at work, they never say no to helping out. They are also funny which is a bonus. I am just afraid of asking for too much help which can make them think I am not cut out for working at their level.

No you are!

I am afraid of being proved incapable. I am afraid of finishing my internship and realizing that maybe I wasn’t smart enough for all of this. I am afraid that my brain, which was once the my strongest asset, is no longer any asset.

If this does not work out then something else. You can manage things bro!

 

#100DaysofCode challenge: These guys made my week!


I have enjoyed coding a lot since coming to Auckland. I had a lot of time in my hands, ample resources to learn and now I am always keen on coding. I just don’t know what to code: I don’t have any project in mind.

One day, reading an article on Design.blog I stumbled on CodeNewbies.org: a website which caters towards beginner coders. They have something which I instantly signed up for.

If you have followed my blog then you would know I have completed NaNoWriMo 2015. 30 days of daily writing needs serious commitment. CodeNewbies challenged beginners to code daily for 100 days.

I was signed on half hour later. Today I am on day 14th. Everyday I try to code an hour and so far I have missed two days. I have made my portfolio (which needs some actual projects) and a tribute page (both of them have terrible content) so far and there are heaps of projects in it. After coding, I have to log my progress and also tweet about it using the hashtag: #100DaysofCode.

Last week, on Wednesday I got a call from a company nearby to schedule an interview. It was an unexpected call and at that time I was almost through my list of companies in the country. My calls had turned up nothing concrete other than some advice but no leads on getting any jobs.

Then I got a call. He asked if I can join him for an interview next day and I said yes while jumping up and down.

I changed my coding practice and then I tweeted this:

 

//platform.twitter.com/widgets.js

I slept that night without waiting for any reply. Granted, I was literally asking for the replies but the response I got made me smile ear to ear next morning. These are the replies:

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

//platform.twitter.com/widgets.js

Lastly, thank you CodeNewbies, FreeCodeCamp and #100DaysofCode community.

//platform.twitter.com/widgets.js

PS: I got selected for the internship from the interview and I start tomorrow.