A Day in Microsoft: Having Fun with Windows 8 App Development

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.

HTML5 for Metro Apps talk given by Alex Goh. Photo Credits: Spiffy

Before the hackathon began, there were two lab sessions held. Since both of the lab sessions were held at the same time, so the participants could only choose to attend one of them, either JavaScript lab or C# lab. Desmond and I finally decided to attend the JavaScript one because we’re interested to see how a metro-app could be built using HTML5 and JavaScript. I couldn’t find the slides they used in the JavaScript lab session. However, Hammad Rajjoub did share some links to the related topics on the Facebook group of the event, for example how to style controls to your preferences in metro-style apps using JavaScript and HTML. For the C# lab session delivered by Bruce Wang which both of us didn’t attend, his slides can be found here.

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.


Photo was taken when I visited Singapore River with Desmond and Thuat

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!”.

EsplanadeGo! - Draft

The screenshot of the first version that I built in half an hour

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.

Working Hard on Our App: EsplanadeGo!

Working hard on our app, EsplanadeGo!

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.

Besides the nice view, I enjoyed the speeches given by the developers and staff from Microsoft Singapore. The lab session also helped me to understand more about the possibility of WinRT, especially the way we could use JavaScript to build a Win8 app.

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


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s