I have been fortunate to work on a lot of great projects. Here are some of them

Hi, I'm still getting things sorted out here - I am moving things from a rather old CMS and lots of images need better resolutions etc. Please come back soon to see more stuff - Blair

Stats NZ website

Launched on November 27 2017, the Stats NZ website is where 70,000 New Zealander's and international visitors go every week to find data about our country. As product owner and solution architect, I led an internal team which now continue to develop the website using agile / scrum methodology.

statsnz homepage.PNG


The homepage content was re-prioritised based on heatmaps, customer feedback, and discussion with many other statistical agencies around the world.

Some things I've written about while working on this project:

Content on the new website

Learn to dance in VR


Work in progress

I am currently working on a project as a developer/designer with some other swell people (who are much better dancers that me) to deliver an MVP application designed to help anyone who wants to learn how to dance do so with more control over how they like to watch an instructor, the pace they like to learn at, and in the privacy of their own space.

We are using the Axis Neuron mocap solution for capturing instructors, and will likely be doing other interesting things to map their likeness onto 3D avatars.

Currently I am working on a diegetic UI, which seamlessly allows the user to navigate through the app's features.

The MVP currently targets the Gear VR, providing some interesting challenges for a lifelike yet still performant experience. The above screenshot animates (with dynamic hair!) at 60fps on a Samsung S6, which we are pretty happy with at the moment. I'll write more about this as things develop.

Glide Star

Glide Star was my second mobile game released on iOS in 2015. Glide Star is a procedurally generated gliding game, inspired by old games like Wipeout, High Octane, and Sky Roads.

Procedural generation

All Glide Star's levels are generated at run time, using a custom built 'corridor generator'. Each world type has it's own corridor generator, which generates corridor from a series of randomly selected modular parts. These modular parts are sometimes shared across world types, and sometimes unique to the world.