Moving… Again

Almost 5 years ago, I packed up my life in New Zealand, said goodbye to friends and family, and jumped on a plane to a place I’d never been to before; my new home, Seattle. What followed has been the most exciting and rewarding period of my life, both personally and professionally. I’ve made this place my home. Made a lot of new friends, grown enormously, and immersed myself headlong into everything Seattle has to offer. It’s therefore bittersweet to say that this chapter of my life is soon coming to an end.

Today, I handed in my resignation at Microsoft. In a couple of months, I’ll be moving to New York City.

Read the rest of this entry »


Recently, my friend shared a link on Facebook about some dudes who’d made their own infinity table. While I don’t necessarily have the time or dedication to build an actual table, I was intrigued by the idea of running an LED string using a Raspberry Pi. And so, one impulse purchase and a few days of development later – I had built PiLight!

In short, PiLight is the software that I came up with to configure and run my lights. PiLight is a Django (Python web-framework) application, so naturally there’s a web-based interface for tweaking the settings. This is a nice solution, because it means that you can configure the lights from literally any device that has a web browser – your phone, tablet, computer, etc. You can read more about how to download and install PiLight on the project page, so this blog post will focus instead on my own end-to-end experience with setting up the Raspberry Pi and getting PiLight working. You can follow it as an informal (but very detailed) guide to doing something like this yourself.

Read the rest of this entry »

Windows Phone 7 game development tutorials

Wow, updates to the blog have been few and far between lately!

Recently I have been exploring the creation of video as an extension to my photography work – you can see some of the fruits of my labour on my YouTube channel. These have given me the taste for basic video production, and I decided to combine coding and videography, to put together an open-ended series of screencasts about how to create an XNA game for Windows Phone.

If you have any interest in this topic, I would love for the readers of my blog to go and check it out and let me know what you think!

Here’s the first episode:

You can find all of the episodes I have produced to date in a playlist. I am aiming to put a new video together roughly once a week – so be sure to subscribe if you like what you see!

Windows Phone 7.5 “Mango” Update – Hidden features

So Mango has finally shipped, and I’ve been able to install it on my phone. I’m loving a bunch of the new features, especially:

All of these (and many more features) are great, but what I’m especially loving is how many of my little “niggles” have been dealt to, without me even asking! Here’s a list of some of the smaller changes that I’ve noticed so far, but that probably wouldn’t make it into a press release:

This is a fantastic update that tackles a variety of problems with the original platform – both large and small.

However, even after all these great updates, I am still left with just one question; Why, oh why aren’t there bus directions in Maps?! I can get walking and car directions, but no bus. The ONE TIME I typically want to catch a bus is when I’m out and about, and only have my phone available. This is a HUGE oversight, and I was disappointed to not see it fixed in Mango.


Today I was rudely reminded of how ridiculous telco pricing is. I’ve ranted on txt messaging before on my Twitter, but today I’m going to talk a little about data.

I was recently on holiday up in Vancouver, BC. Unfortunately my GPS unit had not been preloaded with Canada maps, so in the interest of not getting lost, I elected to open a map once or twice on my smartphone. I knew that this would be charged as “roaming” data, and as a smart person I had done my research, and established that AT&T would be charging me the exorbitant price of… $0.015 per kB. Didn’t seem soooo terrible – I figured that opening a map would use a handful of kB tops. If I was unlucky I was looking at a few dollars worth of usage. How wrong I was.

Total usage: 4.6MB. Total charge: $69. FML.

Let’s put that in perspective. I pay $33 per month for internet at home. I can use up to 250GB on my plan without repercussion, although let’s say I average around 100GB. That means I pay around $0.000000315 per kB.

The upshot of this, is that the data I used in Canada cost me more than 47,000 times as much per byte than my home internet plan. Forty. Seven. Thousand. For those keeping score, that means that if the roaming charge was the standard rate, I would be getting a 99.9979% discount on my internet bill every month. You can’t make these numbers up, we’re talking mind-bogglingly disparate numbers here.

Now don’t get me wrong, I understand the implications of roaming. AT&T has to negotiate with third-party providers to use their networks and their bandwidth when I’m out of the country. I understand that there is a significant difference between the cost of transferring data over a cable connection and a 3G connection. But if you think that all of those issues justify a 4.7 million percent markup, you have got to be pulling my leg. Canada is a first-world country, with (presumably) first-world cell networks and internet access. AT&T can give me an unlimited smartphone data plan for $20/mth, but can’t negotiate a better rate than $60 for 4MB of data?!

Give me a fucking break.