Portfolio of work

Note, there are a number of recent case studies that are not available to the public, for contractual reasons. If you contact me directly, I can provide more details.

Small sites

DrupaleCommerceHTMLLinuxMySQLSite ArchitectureTutoring

As well as the larger contracts, I'm also called on to help out a number of small businesses and web builders in different ways.

  • Troubleshooting HTML and layouts
  • Assistance installing and configuring Drupal, getting a domain etc
  • Tutoring sessions, teaching content managers how to use their systems effectively
  • Help choosing, patching, upgrading or changing modules
  • Specialist assistance setting up the trickier things like WYSIWYG, Video, eCommerce
  • Architectural support, configuring servers, troubleshooting database or performance issues
  • Full site build and theming of individual sites

There are no great graphic design marvels or super features in this collection, just a few everyday web-build jobs.


Metadata Management for Drupal

Part of the Metadata management documentation

As part of my contributions to the Drupal Open-Source project, I am working with various methods for metadata mangement in Drupal. I have several modules in development for working with:

  • EXIF data
  • XMP data
  • Watermarking and credits
  • Conditional image processing based on metadata
  • Working with image metadata as part of the Drupal content management workflow
  • Bulk imports of annotated images, eg importing titles and captions when uploading galleries

These initiatives work closely with other Drupal projects like RDF and my own Imagecache Actions module
Not all the code is production-quality yet, although parts of it have already been deployed and used in some of the sites I've built.

There is a lot of documentation in the open code repository (and help docs distributed with the code), outlining my research into this area, and comparative evaluations of image/media management software. This is slowly being developed.

Online (raw) help docs outlining the process and Walkthrough documentation (sans illustrations) are available online.

The Vintage Aviator : High resolution fluid site

The Vintage Aviator. Front page 2008

The Vintage Aviator is an intensely visual website, showcasing a local workshop that produces handmade aircraft and replica gear. It was built over an extended period using Drupal 5.

I was the sole technical developer, working in association with Mark Williams of Gomi who provided all the graphics. I wrote up a huge technical case study for drupal.org and the site design has received critical acclaim from many places.

lightbox image gallery

The site itself contains many unique features I developed, some of which are behind the scenes, some of which are purely aesthetic, but the most special is the smooth proportional scaling of images and borders within a fluid (variable-width) screen. All pages are laid out in such a way as to fill the screen with a dense magazine-style balance whether viewed on 800x600, 1600x1200, or anything in between. This is pretty special.

resize animation

Read more about the full story here

Sticky Pictures

Sticky Pictures Website, Front Page, 2009 revision

Sticky Pictures is a local film and television production company. I was asked to upgrade their website to a system that would enable them to update news updates and new content.

Using Drupal CMS, I migrated the older content and the original design (originally from dnation) into an XHTML-valid theme, and modified some features.

The site contains a few basic features, including: Video Clips, WYSIWYG editing, Custom Award badges.

sorted.org.nz - Conversion to CMS

DrupalHTMLMySQLPHPSite ArchitectureTutoring
sorted.org.nz 2007-12

Sorted is a portal project created by the Retirement Commission of New Zealand providing tools and advice on money management to the public.

It contains many online calculators for assistance in budgeting, investment and borrowing, helping people plan for their goals, or review the true costs of financial planning.
More about Sorted

The site was begun in 2001, and was constructed over time with a combination of handmade management tools and custom code to effect the calculators and budget management features. It is one of the most high-profile websites in New Zealand, promoted constantly in television advertisements and advertised on and referred to as a resource by many other major NZ portals such as trademe, Stuff, Scoop, Xtra as well as banks and consumer sites.

In 2006, I was called in to help repair problems they were having with the scaling of the legacy code, as it had received hundreds of thousands of user registrations, and was hitting much higher traffic rates than had been predicted in the initial code releases. Working with the team from Sparks Interactive, I went through processes of stress-testing, Code Review, MySQL database optimization and other reporting tests to prop up the performance. A combination of solutions (MySQL tuning, PHP Accelerator) were rolled out carefully on the live site.

In 2007, as part of the long-term plan, the entire site was converted to the Drupal CMS. I had much experience in that platform, and assisted in a mentor role for the Sparks Interactive team. I developed several custom solutions, including

  • CMS architecture for the content management and menus
  • a migration path for all the legacy PHP code without major rewrites needed (the precursor of Drupal wrapper.module)
  • migration of the user data and details into the new framework
  • Theme and layout solutions for custom requirements
  • Coding dynamic menus (jquery) in association with the database-driven section menus

Case study on drupal.org

Import HTML

Import HTML logo

The import_html.module was developed to assist migrating from old, static file sites (or spidered mirrors) into the Drupal CMS

Since I first developed it, It has been used in many different contexts to assist importing legacy content for:

  • Government sites
  • Print magazine archives
  • Legacy discussion board archives
  • Upgrading dynamic news sites to Drupal
  • Port or mirror old functionality (as a wrapper)

import_html is an open source (GNU) project under Drupal, and I've been maintaining it since Drupal 4.6. Extensive documentation is included with the distribution but I also frequently get small support contracts from many users to assist in getting it tuned right for their uses.

OurMedia! - small community news site

EPMU website - 2007

OurMedia represents the media branch of the NZ Engineering, Printing & Manufacturing Union. This was a small-budget site set up to handle news releases for union members.

With no great design or technical requirements, and limited 'brochure' content to begin with, this was mostly an exercise in rapid set-up.

There was an existing ASP based content system, but that was proving troublesome to manage. After helping the client select a host, the basic Drupal install, theming, and content migration was basically done within a day, leaving only a little training, support, and feature development time (RSS feed syndication, MP3 distribution) to follow up with.

This was a start-to-finish, small private contract.

New Zealand Life & Leisure Magazine

DrupalPHPSite ArchitectureTutoring
NZ Life & Leisure 2007

Working with Sparks Interactive, I assisted in the site architecture for the New Zealand Life and Leisure Magazine portal site. This involved creating an archive and browse system for publication releases and regular columns.

We built the site on the Drupal CMS, with several customizations to support the special requirements. The site provides article summaries and advertisements for upcoming features. We started off with a good number of past issues, which we imported several back articles each from, giving the site a rich backlog of content at release time.


My role in this project was mainly supportive - sharpshooting Drupal-specific modifications and structuring the navigation/archive/update issues.

Advertising Flyers - Rockbar & Alehouse

Rockbar Flyer 1

In the course of my promotional activities, I created menus, posters, advertisements and flyers for the bars I worked at. Here's a small sample

Abbey Alehouse Flyer 1 Rockbar Flyer 2

Seascape Sail, Dodecanese, Greece

Seascape sail, 2003

While working on my bar in Greece, I also had the opportunity to revamp the online presence of Seascape Sail - yacht charters throughout the dodecanese and more. dolphin

An older style site was converted into more browser-compliant code, and several features were added.

Some Features:

  • Advanced navigation tree, similar to a help system. Based on an automatically generated RSS sitemap.
  • Interactive DHTML sailing 'game' where you could 'plot your course' by visiting the islands and seeing details about them
  • A downloadable screensaver, presenting an atmospheric, animated slide show.

    ... It's really a nice screensaver. Quite long, and not exciting, but it definately tells a story and makes you want to be there! The Web-viewable version can be viewed here (1.8MB, but it's 60 photos), or the screensaver install package can be got from the live site.

  • An online editing script built into the server, so the site maintainer could view the site, press "edit" and see the editable parts of the page turn into form fields. Pressing "save" made that update live.

    The site remains static files. The tool (a version of one I've developed for other environemnts) was built in Perl.

part of the interactive map game

Telecom New Zealand - Intranet

ASPIISJavaScriptSite ArchitectureTutoring
Telecom Intranet (Sales and Service) 2002

The Telecom Intranet is one of the largest in the country (along with the Inland Revenue Department and Department of Labour, which I also worked on).

I coded a custom web management system to convert the thousands of independantly created subsites and pages into a common look and feel, and apply a new, self-maintaining navigation system site-wide.

My Primary Roles:

  • Client Liason with different corporate entities over several years
  • ASP/Jscript coding of a unique web management system
  • HTML Template creation through many iterations, including an all-new themed version after several years of use
  • DHTML menus, random ASP updates (legacy)
  • Version control (FTP syncronisation via web interface)

The Intranet was infested with thousands of pages on different servers created over time by different authors using different tools, notably early versions of Frontpage, with little regard to either corporate or web standards.
Phase one was to automate the conversion of existing content (much of it framed) into a consistant format. This I did by creating heuristics to extract the content and structure of legacy pages while discarding the redundant navigation, themes and chrome.

For many reasons, databases or dynamic pages were inappropriate to the environment, and I commited to avoiding any technical dependancies or meta-storage for both legacy and future portability.

Upon applying a template, child, sibling and parent pages (later uncles too) were automatically linked in to the navigation bars, removing a lot of redundant work for the authors.
New standards and guidelines (such as page naming conventions) were also introduced and documented for the multiple content managers involved.

An in-place, online editor system was designed for quick content changes. This was integrated with users browsers, and worked under a basic content sign-off/release system which pushed changes through test platforms.

The entire system was operated using a web interface, which, despite the limitations of HTTP transactions, was able to control thousands of documents where Frontpage would time out after hundreds.

The templates (specially commented HTML files) could be applied repeatedly, and site-wide changes could be made, all the while keeping the content in flat, normally edited HTML files.
After several years of use, a completely new look and feel was applied by adding a new template. Thousands of documents were totally re-written and tested in a matter of days thanks to the regular content.

One of the trickiest problems encountered in the project was running out of storage allocation space (not disk space) due to the incredible depth of the heirachy.

University of Victoria, Wellington NZ

ApacheIISMySQLPerlPHPSecuritySite ArchitectureTutoring
Victoria University homepage 2000

The university website encompassed tens of thousands of pages within hundreds of sub-sites. As webmaster, I was responsible for the internet connectivity for thousands of clients as well as legacy and development support for all things 'web'.

My Primary Roles:

  • Webmaster (Unix/Apache,Win2K/IIS4.0), cachemaster (SQUID), proxymaster (content filtering)
  • Content control, Access Permissions (Unix & IIS)
  • Search Engine maintainence (AltaVista,Google)
  • Client Support/helpdesk, HTML tutoring, TCP/IP troubleshooting
  • Database connectivity & development (Oracle, MSQL, MySQL, Access) new and legacy
  • Documentation, System roll-out, backup recovery, Security issues
  • Bandwidth usage billing and analysis
University Tech support page

My role was to manage an extreme range of technologies used on and off-site, and support the educational staff in publishing their content, which was mostly managed independantly.

Besides updating and nuturing the dozens of existing systems, I developed tools, standards, templates and procedures to assist users and staff with maintainence tasks.

With documentation and seminars, I guided university web maintainers through topics such as browser compatability, logfile analysis (WebTrends), security restrictions (intranet/extranet/internet) and version control (development mirrors with multiple authors).

Development projects included transferring large amounts of content into a personally-designed, self-maintaining navigation and 'skinable' template system (ASP/pure XHTML)

Gallery Dimopoulos - Online art exhibition

Gallery Dimopoulos (1999)

Online art, new media, virtual installations.

We created a showcase for not only the original artwork of Konstantin Dimopoulos, but new web effects and some electronic-only experimental works and interactive exhibits.

My Primary Roles:

  • Conceptual design
  • Java Applet coding & testing
  • 3D modelling
  • Graphic production

This was a creative exercise intended not only to create a web presence for the artist and his works, but to push in some new directions using the technology that was becoming available.

Working closely with Kon and other team members, we produced gallery.helios.co.nz. (site now replaced))

Inside the site I created several complex java applets, some navigational, some more interactive.

There is a small 'virtual gallery' of existing physical works, but also several 3D (VRML) 'sketches' of installation works in progress or other concepts.

A bundled version of the entire site is available for download as a Microsoft Help CHM file (download before opening)

ASB Bank 1999 - Online Banking

ASB BANK Main site as it appeared July 1999

Over an extended development period, I gave the site a complete makeover into the corporate look.
Many features were added, and the almost all the content re-drafted.

My Primary Roles:

  • Technical lead / Team leader
  • Head Coder
  • Content & Development change control
  • Layout and testing

Working as Technical lead for a development team of between 4 and 8, I was responsible for not only keeping together dozens of development threads, but also coding many of the more advanced and delicate parts of the site myself.

The site navigation was designed to take advantage of DHTML code, with pop-up menu navigation giving access to the wider range of content available.

A new dynamic site maintainence metaphor was developed using XML to generate not only a heirachical site index, but every unique navigation bar in the site in one process.

Every week throughout the 8 months of development, I was called on as the net expert and troubleshooter on matters both technical and new-media by both Cardinal Systems - the database server developers, and ASB Management, Marketing and Business units.

New Zealand Qualifications Authority - Document organization and publishing

HTMLSite Architecture
NZQA Browse Screen

...makes thousands of documents easily accessible across dozens of platforms.

The NZQA maintains & publishes a database of all the skills and dependancies required for all courses, sub-components, diplomas and degrees that make up the New Zealand education system.

This information was made public using the interface I coded.

My Primary Roles:

  • Advanced HTML layout
  • Information design
  • Intensive Cross-platform Coding

My first challenge was to develop a search metaphor that could present the dynamic database of tens of thousands of individual MS Word and PDF documents in an aesthetic way.

Visit the site and you'll have to agree that was achieved well.

My second was to make sure it looked perfect in every browser down to Netscape 2 on the Macintosh. Being an educational establishment, the target audience was seen to have an eclectic mix of platforms from which these pages would be viewed. Printing on all platforms was to be supported as well.

On the web such a feat is often almost impossible, but the results were (finally) excellent.

The target platform was IIS3 using ASP, but I was responsible only for the interface design and layout. I provided sets of extremely modular file fragments which were converted to routines on the target server.

My partnership with the staff inside NZQA was extremely co-operative and fruitful.

Fastnet Online Banking


Ease of use, corporate branding & speed of download were major priorities in the design of Fastnet - New Zealands first & most successful Online Banking application.

In designing the interface for ASB Bank, I successfully addressed all these issues and many more and a top-class site was launched in April 1999.

My Primary Roles:

  • Perl/CGI coding
  • Interface redesign
  • Graphic production

Along with a rebranding of the corporate site, I coded routines to make new banking functionality available to the public using a custom-built demo.

This involved coding scripts to emulate the behaviour of the high-security JADE database in a platform independant way.

Fastnet enables customers to securely check balances, display & download statements, transfer money between accounts (including credit cards), integrate transaction records with Microsoft Money or Quicken packages, pay bills, and to view & pay invoices ('NetBills') from selected debtors.

The demo was coded in PERL, and made available both through a low-security website, and as a stand-alone application server, capable of running on CD. Even off CD it was capable of making and recording transactions and emulating a complete user banking session.

The demo was accessed hundreds of times a day, and the high-security application is used regularly by a user base of over 20,000 customers.

New Zealand Electronic Commerce


A forum for discussion & publication of issues relating to the development of Electronic Commerce in New Zealand.

My Primary Roles:

  • Site hosting & registration, Server setup
  • Development of administration area and functionality
  • Content layout

NZEC us a special interest group affiliated with TUANZ - New Zealands primary forum of business development agencies and interested parties.

Within the small site Helios created for them are publications of articles and commentry, contact information, and a calender of events.

The site was created and hosted by Helios as a pro bono contribution to this non-profit ecommerce organisation.

Creative New Zealand - Arts portal and database

Creative New Zealand front page as it appeared 1998

Artistic and striking, this designer site also leverages a powerful database and a wealth of funding information.

In addition to coding over 100 content pages, I also steered the creation of the sleek navigation interface and database lookup screens.

My Primary Roles:

  • Image & graphic post-production
  • Content management
  • HTML & Layout
  • Ongoing maintainence

Creative New Zealand is the Government Department responsible for funding and grants to artistic projects.

Working with both a designer from the client, and a graphic artist within the company, I was ultimately responsible for making the ideas and the look work, as we drew the middle line between art and practicality.

The site houses a database of 'Cultural Contacts' - an index of thousands of artists and venues throughout New Zealand. This is browsed using an advanced search, and updated using an online interface.
This database was specially designed by the Helios team in the course of a detailed investigation into the clients current and future needs. It uses a PHP web interface to an SQL ( MYSQL) back end, hosted on the (Apache/Linux) server.

Several other admin and update features are contained within the site.

During the development of this site, I created an online project site. This gave a graphic representation of all the pages, the navigational structure, the progress so far, and possible points of concern or interest. This 'project map' turned out to be very useful when co-ordinating the large amount of content needed, and the metaphor I created has since been adapted and refined in other custom-made project sites and development diagrams.

In the years following the original release and the dissolution of the original design company, I have been called upon to add extra features such as feedback and news forums as well as enhancements to the original database.

The site has since been redesigned somewhat although much of the original functionality and code remains. Screenshot shows the original release.

Transpower New Zealand - Corporate website

Transpower New Zealand website, as it was upon project completion 1998

A small but extremely tidy corporate publication site.

60 Pages of content, including an interactive map of the national power grid and easily updated online magazine.

My Primary Roles:

  • HTML layout & coding
  • Javascript coding
  • Online publication distribution

Working in a small team along with a graphic designer and content manager, this website was a success of within-budget, within-timeframe production.

The Grid - Custom coded Online Magazine with remote administration functions

I developed a set of very simple and elegant templates, and a few maintainence tools to enable easy distribution of media releases, PDF publications, and even a very tidy online magazine.

The Grid - Custom coded Online Magazine with remote administration functions

ASB BANK 1997 - Online Banking

ASB BANK Main site as it appeared through 1997 and 1998

New Zealands first online banking service was made available with the release of the ASB BANK website

My Primary Roles:

  • HTML coding and layout
  • Content control
  • Regular updates of content and periodicals

A major step forward in electronic commerce, the ASB BANK site contained several hundred pages of static information, several dynamic features such as up-to-the minute rates and fees (including a java foreign exchange calculator using live rates), and Fastnet - online banking.

Other features of the site included a Real Video news broadcast and a Java Applet 'click and win' competition.

During the life cycle of the project, I was responsible for many day-to-day maintainence tasks, consistant branding, promotional specials and competitions, and new features.

The site was hosted on Cardinal system's JADE server, and I worked closely with the development team there to manage both the dynamic pages and release testing.