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 its public, sometimes its private; sometimes its serious, and sometimes its rather frivolous.
This page signposts 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 tool for creating high quality random data, managing one time pads, encrypting/decrypting files, and using steganography to store a file inside a PNG or FLAC file. The source code is part of the larger mtCellEdit suite.
This is an animation which I created as an audio visual aid to understand the events during the assassination of John F. Kennedy. I published the work in the hope that others would find it as useful as I do in cutting through the myths and misunderstandings surrounding the case.
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:
If you wish to contact me privately about my work, please press this button: