Last month when I read a Facebook post from Spiffy that Microsoft Singapore was going to organize a hackathon, I immediately emailed my friends about it. Desmond, one of my OneSync Dev Team teammates, gave me a prompt reply saying that he was interested to join it as well.
The event is called Dream Build Launch. It’s an event specially prepared for local developers to build their (first) Windows 8 metro-style app. Since the event was held on Saturday, I can happily participated in it without applying for leave. There are a few reasons why I would like to join the hackathon. Firstly, I wanted to learn more about WinRT. After listening to the talk delivered by Hammad Rajjoub and Bruce Wang from Microsoft in the Microsoft Campfire, I always wanted to try out the interesting features offered by WinRT.
Secondly, it’s a very good opportunity to meet imba software developers in Singapore. So, during the event, I was quite happy to see many friends from School of Computing (SoC), NUS taking part in the event also. Some of them were actually Microsoft interns. It’s also fun to share our ideas about what we’re going to build with them.
Thirdly, due to the fact that the event was held at Microsoft Singapore office, so I was very excited to see the working life in Microsoft. Their workplace was just renovated not too long ago. The office shared the same building as the NTUC centre. It’s a very clean and comfortable workplace.
The hackathon began at around 1pm. We had about 22 hours to complete our app. According to the rules of the hackathon, our app needed to have a theme and the theme was ” I ❤ SG” (I love Singapore).
Introducing EsplandeGo! – The First Esplanade App on Windows 8
Three days before the event, I was thinking what kind of app we should build. After having dinner at Raffles City, I walked to CityLink Mall and then I saw an advertisement about the events in Esplanade. Then I suddenly had an idea. Why don’t we build an app about Esplanade? So, I walked to Esplanade which is located nearby to get more ideas for the app that we’re going to build.
After coming back from Esplanade, I was so excited about the idea. Thus I immediately wrote the first version of our app and emailed some screenshots of the app to Desmond to explain to him the idea of building an app which listed Esplanade events. I named the app “EsplanadeGo!”.
Yup, so during the event, we continued on building the app.
Desmond was in charge of writing a program to crawl the live data from the Esplanade official website. Since there would be delay when waiting the results from the crawler, Desmond used Asynchronous Programming with Async and Await. It’s a newly introduced approach to do asynchronous and concurrent programming in Visual Studio 2012 RC. Yup, so that was my first time to see how await keyword worked.
I was trying out the Search and Share contracts. After listening to the Windows 8 talk on Microsoft Camp, I always wanted to see how easy it was to add the contracts to the program. It turned out to be not so straight-forward. I also added App Bar to our app. There is a set of guidelines for developers to understand what should and should not be put in App Bar.
There is one thing that I forgot to do is making sure our program could run in an environment which had no Internet access. So, when I tried to run it on MRT after the end of the hackathon, then I realized our app actually crashed because there was no Internet connection. >__<
Nice People, Nice Food
I like the Dream Build Launch hackathon very much. I like the workplace as well. Coding in such a nice environment is truly enjoyable. I could see the beautiful Singapore Strait clearly from the office. Watching sea, drinking free coffee, coding stuff. That partially explains why people like to work in Microsoft Singapore.
In the event, I also met some friendly participants during the event. It’s fun to talk to them and listen to their ideas.
Last but not least, the lunch, dinner and supper provided by Microsoft Singapore are extremely good. So, Desmond and I had to queue for about 20 minutes just to get the food.
Yup, I’m happy to take part in the event. =D