Portfolio - Introduction
Largely, my work has been in the area of the web, as the following portfolio will show. I will soon add my own personal projects as time permits.
Websites
- Yorkshire Film Archive Online
YFA Online is actually two sites, which offer teaching media for schools. Each site offers much the same material, but the public site has more of a focus on open feedback through the Open Space area.
My involvement in the site was to create the HTML templates for both sites, while trying to ensure that the site remained identical in appearance across the main browsers including IE6-8, Fx3 & 3.5, Safari 3 & 4, Chrome, and Opera 9 & 10.
A large part of both sites is the use AJAX to display data within tabbed areas on the site. I bespokely developed this to function well on all major browsers, and it performs very efficiently.
- Prime Focus Technologies

The PFT site required a very simple CMS to be set up for it that was as simple to use. Because it only needed a very basic set of functionality, and was not required to be multi-lingual, it was decided that it might be better to build a bespoke CMS for it. The site also went through several tages of design, and at one point during the project life-cycle, it underwent an entire re-design. This was made easier due to the way the data was being stored in the database, which kept the content separate from the design.
Because of server availability at the time, the site was built on a Windows server, using a MSSQL database, with PHP as the base language behind the entire site.
As well as the CMS, I completed the entire front-end based on designs supplied to me as Photoshop images, all the while keeping accessibility in mind.
- Project Database

This project developed from a need to share information that was previously kept in a spreadsheet and distributed in a round-robin method to all necessary parties for editing. The main requirements for the new system were that it allow updating and adding or new records to be done through a web interface, by multiple users, and be fully customisable.
One major hurdle with this project was the matter of concurrent users updating the same record at once. I tackled this by creating a custom versioning system for all the data on the system, where conflicts can be later dealt with by an administrator.
The system can send out emails for each and every edit made, allowing all users to be kept up-to-date with the latest information.
- KPost FTP System

This is a a lot simpler than the FTP system set up for Prime Focus London, in that none of the transcoding or advanced email functions exist. Also, the permissions model is a lot simpler, requiring a user to have a unique login for each project they need access to.
- Prime Focus London FTP System
This system allows for the management of an FTP system via a web-based interface. This integration allows for the management of FTP users and groups all through the browser, in such a way that one user of the system is able to log in via the web interface or FTP and access multiple project sections based on a complex permission model.
Part of the file management also allows for videos of various formats to have web-friendly copies transcoded into Flash Video, from which JPEG thumbnails are created at various intervals, allowing for a representative thumbnail to be set for each clip. All of this functionality is obtained through PHP communcating with BASH scripts.
Email tracking is a large part of this system, and administrators can track what emails were sent, and whether they were read or not. This is important, as almost all of the user notifications will be handled via email correspondance.
This system relies on the Linux platform, as Windows would be far too slow with the transcoding, and has far greater memory overheads. Also, much of the functionality the system gives with regards to FTP users is easier to integrate with at a system level than it would be on the Windows platform.
- Celebrities World Wide

Celebrities World Wide wanted to revamp their existing site and convert it from ColdFusion to PHP. As well as the conversion, the site required much more functionality to be implemented. As part of the process, I improved the search functions to be much faster, dropping down the number of SQL statements for a search from 5 to 1, and implemented a metaphone search, which allows for site searches based on the sounds of words, in effect giving a much more accurate match for mis-spelled words.
Other improvements include making the site more accessible to search engines, converting the JavaScript links that ColdFusion seems to favour into proper links which engines like Google is able to follow, which has greatly improved the traffic to the site in the past few months.
- blue Post Production

blue Post Productions required a new look to their website to give it a more modern breath of life. I worked on the site from supplied designs. As well as the redesign, I developed a custom-built CMS for it. This CMS allows images, audio and video clips to be uploaded to the site, and can automatically create thumbnails of various sizes for all the images. The site also makes use of a custom script that I wrote to create image headings in-place of text, which is capable of wrapping text across multiple lines using any font specified.
This site also has an accessibilty advantage over its predessor, which, as well as making it as open to the masses as possible has had the added advantage of placing it at number 3 (time of last check was 11:52 10th June 2009) for a search on "post production", just behind Wikipedia and the BBC.
- Ferro Design

This site is a portfolio site to show the catering design works completed by Ferro Design. On this site I only worked on the HTML area, which was meant to emulate the Flash design as closely as possible, for all visitors who did not have the Flash player.
- HSBSG Design
Note: this site has since changed, but I've left in the link and description to describe the work that was involved.
The website of the company I worked for, built around a flexible database backend, allowing it to be easily updated. The site was designed to be fully accessible for all visitors, regardless of viewing medium or disability.
The Flash animations at the top of the site were all developed by myself. Most are interactive in some form, although no reference is made of this, so visitors instead are left to find this out for themselves. Javascript is used to include the Flash animations, in order to work around the plugin limitations in IE6 and Opera (the user does not have to click to activate the Flash movie). The traditional method is left as a fallback for the 6% of users who either have no script support, or have turned it off.
As well as the Flash animations, a couple of games are in the site, both of which were developed by me. They are not meant to be a serious showcase of my work, as I only spent a couple of hours on each, they are just meant as a form of light entertainment for visitors, should they wish.
- Camis Components

This was an existing site built on the OSCommerce platform that HSBSG Design took over management of, and required some changes to be made to the administration section, the cost display, and some other more aesthetic changes. One of the greatest additions was to accomodate the Google Checkout payment method. Due to the particular licensing requirements of this service, it could not be integrated into the OSCommerce in the typical manner, presenting some minor challenges.
- Camis Distribution

After a period of management of Camis Components, the task of managing the other Camis websites. Mostly, this involved minor adjustments to be made to various sections of the websites. As part of the management, all the Camis sites were migrated to a new web hosting package, which involved adjustments to be made to each website to allow for database and path changes.
- Sun View Villa

Sun View Villa was used as an on-line advertisement and contact platform. The site relies on a CMS which I had custom built, which allowed the site to be easily updated using a WYSIWYG editor. One addition to the CMS was a calendar module, which allowed the owner to mark off parts of the day as booked. This was the most suitable method of indicating to the visitors this information, and is easy for the owner to use.
- Surface World Show

The website for Surface World Show is a site made to give details about the show in question, such as sponsors, location and directions. This site makes use of the CMS I developed (as used for Sun View Villa), and has a couple of added features built into the it, including a PDF upload module, and an extension to the image manager which updates the Flash image fader on the website. The Flash fader itself uses an external text file to source its images, making it easy for the CMS to update.
- Coleman Parker
Note: this company has since closed business, and as such, the site is no longer available.
This head-hunting firm already had a website, but required updates to be made to the site at irregular intervals. The company did require a micro-site to be added. The site needed to be made to resemble the original, but wider. This was a good opportunity to work from the ground-up, ensuring the micro-site consisted of "clean" code, relying more on CSS for formatting than the older HTML styling techniques.
- Tech2Tech
Note: this site has been taken down since I have taken on my new job at blue Post Productions, as there was nobody left at HSBSG to take it on.
This is a technical forum, intended for use by those in technical industries. The forum was built from the ground up, as the original specification required it. Further works were planned, but put on hold for an indeterminate duration. The site makes use of an AJAX advertising system, which picks up adverts based on the content of the page. There are only test adverts as the site was never launched.
Other
- Generic Content Management System
I developed the content management system in order that clients might update their own websites, albeit to a limited degree. The system itself is based around the TinyMCE system, which uses Javascript to offer a client-side rich text editor, much like that found in a word processor. With this system in place, I added sections to deal with page management, image management, navigation bars and user management facilities.
The structure of this system is modular, making it quite easy to add extra functionality that is able to integrate into the CMS. Some of the modules I have built before include:
- Calendar - running off of a simple database, this module allows days to be marked off as one of three preset types, with additional comments.
- PDF manager - this handles the uploading of PDF files, and integrates with TinyMCE so that a link can be added to a page, and the PDF icon is automatically inserted.
- Flash image fader manager - while not actually a module in its own right, but rather, a modification to the image management section. If an image is uploaded with a filename whose first three characters are "fd_", the image URL is added to a text file which is used by the Flash image fader.
- Visitor Tracking
This was initially developed about 2 years ago, to track visits to a website, and record all data in a database, and I've been giving it an overhaul since then. The system uses a mixture of Javascript and PHP to track visitors, which does mean that for about
6%5% of visitors (those without Javascript enabled browsers or those who have disabled this) it will not work, and will only record basic information.The following is some of the data that is recorded:
- IP addresses of visitors, in order that repeat visitors can be tracked
- times and dates of visits
- each URL (each page) visited
- the location of each visitor - this includes the country, region and city where it is possible
- the language the visitors browser uses, both major and minor versions i.e. en-UK
- the operating system and browser the visitor is using
- Java and Flash support and version of Flash player (which I've not seen in any other tracking system yet)
- whether the hit is a registered search engine spider or not
The data is analysed in real-time, to produce graphs and tables of information which can be used to determine how to develop the website, based on the visitors and the pages which appear most successful, as well as what technology the visitors are using.
- HTML Email
This was a simple system that sources email recipients from a database, using an SQL instruction which can be easily tailored. One requirement was email tracking to determine whether or not a recipient had read the email. Whilst not 100% accurate (as it relies on embedded images being turned on) it does have a higher success rate than Outlook read receipts, as there are more email clients that support images than support Outlook read receipts. Also, as the email consisted largely of image content, using images to track the emails was a perfect option.
