Software Development

This category contains a selection of some of the software development work I've been involved in. There's a significant body of work which cannot be included in this section, due to confidentiality agreements, or simply because I didn't consider it worthy of inclusion at the time.

More recent examples of my work may not yet have been added - see Release Notes for information on some of those.

For an overview of my career and experience, see my online resume.

Request Router is a routing engine. The default install methodology exposes a Geolocating Intelligent DNS Load Balancer.

It features:

  • Geolocation cost based routing (with overrides)
  • Protocol Aware
  • Delivery Status/Load Aware
  • EDNS Client Subnet (ECS) support
  • Wildcard support
  • HTTP Redirect (302) Routing Support
  • Content Optimised Routing in HTTP Routing
  • Alt-Svc Header Support

My original bug tracker - BUGGER - was ultimately replaced with a self-hosted JIRA install

I wanted to continue to make some project information publicly available, but wasn't overly happy about exposing a complex Java application to the world without good cause. Ultimately I created the Jira Issue Listing Script in order to create a static HTML mirror of selected JIRA issues (though my initial motivation was to allow my search engine to index non-public issues)

JILS is the basis of, although it also hosts a static mirror of my old BUGGER tracker (or at least, the incomplete rewrite of it - the original is no longer available)

I provided CDN services to - providing a network of low latency caches for them to deliver via

Their site was essentially a date sorted index of various subreddits - somewhat unsurprisingly, with a focus on various NSFW subs. As a result, they occasionally received DCMA takedown requests, but because of the setup on their origin were quite slow to process these.

This periodically resulted in me, as a provider, receiving an escalation from the person complaining. So, to remove these disturbances I created a small piece of software so that the site operators could process a takedown by inputting the URL path - that path (and all associated images) then get blacklisted across my edge, preventing any further delivery, while they continued with their process on the origin to remove the content at source.

I was contacted for this, as a result of research I'd previously conducted into the feasibility of delivering high resolution video via encrypted overlay networks (in this case, Tor).

The customer was a small group of people who had an idea, but weren't sure on how best to implement it - the idea being a privacy sensitive service delivering legal adult content, in effect a PornHub without all the tracking and profiling that MindGeek does.

My role was to help them design and develop the infrastructure required to deliver this. This included working out how best to route users who simply cannot be geolocated, in order to achieve the minimal possible latency, as well as designing the CDN upon which it would all be built.

The site worked well on a technical level, and delivered full-HD content over Tor quite successfully. However, the group's plan to financially support the site proved to be a little over-optimistic, and so the site was ultimately shuttered.

Virya Software was a wholly owned subsidiary of Virya Technologies

My role within Virya Technologies increasing included software development demands - where the work wasn't bespoke to a customer, the result was usually sold on through Virya Software - at least, if it was a Joomla Extension.

I was involved in development of (amongst others): Bookmarks Reloaded, HTML Map 2, RoomBookings Reloaded, Joomdle payment plugin for Virtuemart, K2 Extra fields Search plugin, K2 Url-Shortener support plugin, Microdata Library Plugin, Opengraph Markup insertion plugin, Akeebasubs integration for Virtuemart