My Apps

I write and maintain a number of applications, open-source frameworks and hacky side-projects, all of which can be found here.


These projects have made it to the revered Apps category, which means I consider them stable and useful enough to be used by everyone. Most of them are open-source and can be found on my GitHub pages.


Cascable is an iOS application that allows you to control your WiFi-enabled SLR. It’s a powerful, slick experience designed to fit right in with the modern iOS ecosystem. Features include remote control, assistants for astrophotography and using ND filters, photo downloading, Apple Watch support and much more.

More info at

Fitness Converter

Fitness Converter is a small Mac application for converting fitness files between the GPX, TCX and FIT formats. It has a simple but beautiful UI, showing the route of the file on a map and the various telemetry data in colourful graphs.

More info on the Fitness Converter page.

Couch Slouch

Couch Slouch is a Mac OS X application that allows your TV’s remote to control your Mac, and can also have your Mac and AV system react to one another — whether it’s having your Mac wake up when you switch on your TV or having your TV and AV receiver switch off when your Mac goes to sleep.

More info at

Teleport: AddOns

If you play World of Warcraft on more than one computer, you’ll have run into problems keeping your setup just how you like it. Sure, World of Warcraft syncs its own settings, but not your AddOns or their settings.

Enter Teleport: AddOns, a free program for Mac OS X and Windows that syncs your AddOns and their settings via Dropbox or an external hard drive or USB stick — with more sync sources coming soon. Whether you play World of Warcraft on your Mac or PC (or both!) Teleport: AddOns has you covered.

Available for Mac and Windows coming soon. Download Teleport: AddOns for Mac here.


Mac OS X has a nifty shortcut — Ctrl+Eject — for shutting down your computer. On older Apple keyboards, these keys are on opposite diagonal corners of the keyboard, and at the end of the day you can simply hit the two corners of the keyboard then Return to switch off your computer. However, with the new Apple Aluminium Keyboard, the eject key is in the middle of the top row of keys — hardly as convenient! Instead, F19 takes the top right spot.

ProShutdown is a free program that restores the “opposite corners” shortcuts by listening for Ctrl+F19 and friends, and displaying a shut down dialog when these are pressed. It displays a small (removable) “F19” icon in the menu bar to remind you that this shortcut is available.

Download ProShutdown here.

Timelapse for Aperture

Timelapse for Aperture is a dead-simple Aperture Export plugin that creates video directly from your Aperture library — simply export your photos using “Time Lapse…” in Aperture and you’ll have a video suitable for editing in your favourite video editor in no time.

This plugin requires that Aperture is running in 64-bit mode.

Download Timelapse for Aperture here.

500px Aperture Uploader

500px Aperture Uploader is an Aperture export plugin for uploading your photos straight to the popular 500px photography site. The plugin allows you set the name, tags, description and category of each photo, as well as optionally marking them as private. This metadata, as well as the URL of the photo on 500px, is saved back to your photo in Aperture so you’ll always know where your photos are.

This plugin requires that Aperture is running in 64-bit mode.

Download 500px Aperture Uploader here.

Open-Source Components

These projects are for developers to use in their apps.


An Objective-C framework for hosting iTunes Visualiser Plugins in your own audio application. Available on GitHub.


Objective-C implementation of Apple Guide for guiding users around your application. Available on GitHub.


A simple Objective-C serial port class. Available on GitHub.


C# core for Teleport: AddOns. Designed to run on all Mono-supported platforms and .NET. Currently unstable and not used in the Teleport: AddOns application, but it will be soon! Available on GitHub.


C# implementation of the Sparkle auto-updating framework. Only runs on Windows. Available on GitHub.

Other Projects

I also work on some less-polished projects, which are more about hacking and having fun than producing a polished app!


C# command-line application for interfacing with the sensors and servos on an Arduino-powered RC car, as discussed in It’s Alive, But Still Very Stupid. Available on GitHub.


A project playing with a set of IKEA Dioder LED strips connected to an Arduino Mega 2560, as discussed in a series of posts: Part 1, Part 2, and Part 3. Available on GitHub.


A libspotify-based Spotify client for Mac OS X Lion. Available on GitHub.