Work

I currently work for Collabora on various open-source projects. The main one is Telepathy, a presence, messaging and voice/video over IP framework based on D-Bus; it's used on Nokia's Maemo devices (notably the N900, which even uses it for phone calls), on the GNOME desktop (via Empathy), on One Laptop Per Child, and elsewhere.

I mainly work on the API specification, Mission Control (the reference implementation of an account manager and channel dispatcher), and the GObject binding telepathy-glib; I've also contributed to the Qt4 and Python bindings and to most of the connection managers.

I'm also the maintainer of dbus-python, and part of the pkg-telepathy team that maintains Telepathy in Debian.

Current personal projects

I sporadically contribute to IkiWiki, the wiki compiler used by this website (including various plugins and some significant performance improvements), and do various QA work in Debian (fixing release-critical bugs and asking for the removal of redundant packages).

I've also written gfcombinefs, a filesystem to reconstitute secrets shared with libgfshare.

Various old projects

The Paradox Productions section contains some old game modifications, some with source code.

Pseudosite and Pseudoweb were two attempts at a website generation framework.

Other old projects include runit scripts for Debian (runit is a GPLed init(8) replacement similar to daemontools), and a GUI Photo Indexer done for the programming component of my A-Level Computing coursework.