My THack (Hackathon) Experience

Published on October 23, 2011

guidebnb logoI participated in a 24hr hackathon over last weekend, and created Guidebnb – an app to find local guides. It is an Airbnb for local guides.

If you want to try out, head over to

The whole hacking session was fun, and here are some random things I would like to share.


Setup your servers first

The hacking started at 10am, and we didn’t write a piece of code until 4pm! For 6 hours, we were merely setting up our server and development environment. We have a plan of what to use, but things didn’t work out. This is what we did:

  • The plan is to use Heroku PHP. However, Heroku does not support MongoDB! (they supported eventually, a few days after the hackathon)
  • So we go for Amazon EC2. We setup the instance, installed Apache. However, MongoDB has a dependency which could not be installed. (probably our fault)
  • So we go for Slicehost. PHP and Mongo driver setup successfully. However, their PHP version is an older version (5.1), which caused some headache with Facebook API.

In the end, we settle for EC2 with MySQL.


SQL database has lots of boilerplate code

I hate SQL database, because they need too much setup. You need to create database, create table, design schema, then write complex SQL statements. You need to use mysql commands.

And when you need to add a column, you need to write SQL to add the column to the table, and also change all your affected SQL statements.

I have done that many times before, yet I am doing it again, all because the NoSQL-MongoDB could not be installed..


Facebook API is not that easy

Facebook API is one of the widely used, yet also the also widely criticized API of all time.

It does give you problems, and high learning curve since there is a lot that you can do with it and you need to go figure it out yourself. They have non working examples too.


Hoiio & Expedia API are easy

We used 2 APIs

Both are easy to use and do their stuff as intended. Took less than an hour to integrate the APIs.


I became a CSS ninja

I am a mobile developer, and API designer.

I don’t dwell with web development and CSS stuff. However, for the hackathon, I have to do quite a bit of CSS. I started with a template that help start things. I typed a lot of inline CSS to solve things quickly. I used chrome developer tool and inspected elements one by one. I learnt stuff like preventing CSS caching.

I can write, but it is not my cup of tea.


Don’t change MAMP password

Being quirky about security, I changed the default password of my MAMP’s MySQL’s password.

That is extra, and that wasted 1 hour. (run into problems and ended up reinstalling MAMP)


7 min presentation ain’t enough

When you have something cool and a lot to brag about, 7 min ain’t enough!