Over the years I have challenged my limited web development skills by improving various websites - most notably my own. As a volunteer I have sought out websites with content that not only interests me, but also with designs that have become dated; these are websites where a little work - and I - can make a dramatic difference.

The common platform of the web not only makes it possible to reach out and offer assistance with ease, it also makes it simple to deliver something new. Demoing a rapidly-generated prototype is almost as simple as uploading it to a publicly accessible address (the other bit concerns browser compatibility, but fortunately for simpler things that is less of a concern these days); being able to show with a minimum of fuss that it works to anybody anywhere in the world is immensely gratifying.

Primary Access Node

The Primary Access Node (PAN) was my first website. It was first developed in the early 2000s and has evolved ever since.

The current design uses a PHP program to marshal the resources needed for an XSL transformation to generate the markup. A simple cache allows markup to be reused between updates, and the occasional image galleries are implemented with jQuery.

Project Rho

Project Rho is the website of the esteemable Winchell Chung (a.k.a. Nyrath the nearly wise.) In 2010, I volunteered to improve the layout, appearance, and maintainability of the Atomic Rockets section; this was joined by similar work to the sibling 3-D Starmaps section in mid-2012.

Both sections used PAN's website framework program to generate dynamic web pages. As the first exposure to requirements beyond my limited view, Atomic Rockets was, and is, a significant influence on the evolution of the program.

Aviya Technologies

As a coop student, I had the privilege of working at Aviya Technologies during the summer of 2010. As a secondary endeavour I took a leading role in redesigning the company's main and careers websites. The was done between May and August 2010. Both sites used a near-identical backend based on Primary Access Node version 6.

Unlike PAN version 5, version 6 drew on XML data files and used XSL transformations for markup generation. Unlike the PAN's version 6, Aviya's variant could pick one or many XSL transformations, depending on the type of page being generated. For example, one transformation created a page with a tabbed pane layout, but another was used to create the index page with the Flash navigation wheels.

Before the upgrade, the main and careers sites did not use a code generation backend, and both were designed differently. The careers site was one large Flash application, unlike the more conventionally designed main site. One challenge when “porting" the careers site was including the functionality to change the background Flash movie played on the index page, based on which other page on the careers site the visitor was coming from.