For many years I have been working on various projects relating to data, computer software, operating systems, art, design, photography, cryptography, psephology, mathematics, and economics.
Sometimes this work is for others, sometimes for me; sometimes it's public, sometimes it's private; sometimes it's serious, and sometimes it's rather frivolous.
This page signposts some of my publicly available work which may be of interest to curious visitors.
Here is a list of projects on the web that I have been responsible for creating. Select a project name to go to its website.
This began as a simple spreadsheet program and then became much more as I added other GUI programs, command line programs, and libraries to explore my ideas.
This Linux GUI app is a revisit of mtPaint to experiment with a simpler, more modern user interface. I also used C++/Qt instead of C/GTK+, and added a few command line utilities for testing purposes. The source code is part of the larger mtCellEdit suite.
A minimal widget toolkit for SDL. With modern software growing ever larger and more ambitious, I wanted to build a small footprint, C language based, widget toolkit.
A 6502 disassembler. I created this for archaeological purposes: I wanted to examine some programs from my old Acorn Electron.
A fork of mtPaint. I created this as a prototype after someone from the One Laptop Per Child project asked if customizations would be possible. The purpose was to change the UI and back end of mtPaint to be simpler.
A pixel art and photo editor. Despite its humble origins as a rather niche program, once I had expanded its features it began to be included as a default program for distributions such as Lubuntu and Puppy Linux. In 2007/8 it was bundled with the Linux version of the Asus Eee PC netbook device.
All of my published source code comes with documentation in the form of man pages or HTML handbooks. To review this online consult the following website:
I always welcome constructive feedback regarding my work, and I am especially grateful to anyone reporting bugs. If you wish to contact me privately about my work, please press this button: