I started programming in the late 1990's when I was at secondary school. Only a few of us took the opportunity to learn programming as an after school activity, and we were taught QBasic.
Back then it caught my imagination, and progressed further and begun teaching myself Turbo C++, and then I moved onto C++ Builder where I wrote a couple of games: City Builder, and Snake.

In 1999 I graduated secondary school and then went onto college to do a computing course where I learned Pascal, C++, COBOL, and HTML. I had high aspirations of getting a job as a computer programmer.

In 2001 I got a temporary job as cartographer in a small mapping company. I told the owner that I was into programming and showed him some of my work. He was really interested and was considering taking me on full time.
Then it all came crashing down, they lost a huge contract and had to lay-off all temp staff.

I struggled for months to get a job, eventually ending up doing a telecommuncations apprenticeship.

It wasn’t until 2010 when I really started getting into using Linux that I begun programming again, although that just some basic BASH scripting.

In January 2016 (almost 20 years after I first started) my love of programming has been rekindled with the creation of NoTrack – a program which has been used by more people than any other application I’ve ever written.

City Builder

City Builder is a clone of SimCity 2000. It was the biggest game that I ever wrote, and it took ages to draw all the buildings.
Despite the size of the game, its very incomplete, with little animation, and no changes to the buildings throughout the gameplay.

Sadly it suffers a buffer overflow, which renders the game unplayable on a modern system.
I believe it occurs in the calculation of working out which squares have power supply.
Unfortunately it can’t just be recompiled as some of the source code is missing.

Unless you have an old Pentium 1 computer to run this game on, your best bet is to try it with Windows XP or ME in VirtualBox.
I can’t remember much of the game, but I recall that items can be placed on multiple squares by holding down Shift key.

I wrote City Builder using Borland C++ Builder in 1999.


After being inspired by Snake on the Nokia 3310, I decided to write my own version. Its perfectly playable, and even comes with a few different mazes.

The game works on modern versions of Windows (tested in Windows 7), but unfortunately doesn’t work in Wine.

I wrote Snake using Borland C++ Builder in 2001

File Viewer

File Viewer is a file manager which comes bundled with an Image viewer, Text viewer, and Binary file viewer.
In its day it was faster than Windows Explorer, but in XP Windows Explorer gained the ability to cache files, which resulted in it being faster than File Viewer.
You can customise the Colours and Fonts used in File Viewer.

File Viewer fully works in modern versions of Windows.
It mostly works under Wine, the Binary viewer fails, and known File types are a bit sparse (this is due to the cut down registry in Wine).

This is the fourth version and I named it Adv File Viewer.
I wrote the initial program in 2001, and finished the final version in 2002.

Early QBasic Games

These are some of my very first programs that I wrote at school:

  • Noughts & Crosses
  • Stone, Scissors, Paper
  • Gold Hunt

Space Fighter 1

Space Fighter was the first complex game that I wrote. Unfortunately its ruined by the controls, which are restricted to just the keyboard.

Trying to play it nowadays in DosBox is too laggy, and one hit deaths really don’t help.

I wrote Space Fighter 1 using QBasic in 1998

Space Fighter 2

Space Fighter 2 was a huge advancement over the first game. For one thing you can play the game with either Mouse or Joystick, so control is perfect. There is an energy bar, enemies shoot back, and there are special items to be had if you complete the stage without getting hit.

Emulation in DosBox caused the graphics to flicker. Running in modern Windows via command prompt was much better, although the PC Speaker sound didn’t work.

I wrote Space Fighter 2 using QBasic in 1998