I'm a professional UK-based software engineer and web developer, working in the West Midlands. I live with my rather beautiful girlfriend Marie.
I work with PHP and Ruby on a daily basis, and I'm also teaching myself Objective-C so I can build an iPhone app and retire off the profits (I'm also hoping to win the Lottery one of these days, it must be my turn by now).
I've worked on a variety of projects ranging from simple static websites, through CMS-driven websites for brands you may have heard of, and I'm currently working on complex data-driven web applications for international arts venues. I'm currently working for Made Media.
I'm a Mac user by choice, although most of my projects are deployed on Linux servers. I don't avoid Windows, but I don't use it except to play games that won't run on Mac OS X. I'm happy I don't have to use Windows 8.
This is a reasonably comprehensive list of the projects I've worked on over the last 6 years. Unfortunately, not all of the websites I've built are still online. Those are noted.
Made Media's integrated ticketing path solution. Linking to the very popular Tessitura system, we provide a SaaS application which provides customers with an easy way to book tickets, buy subscriptions and manage their accounts online.
There is no direct website for BlocksOffice, but many of the clients below either are already using it or will be shortly for their ticketing needs.
The application itself is written in PHP, using components from the Symfony2 framework and parts of Zend Framework to provide some background functionality.
Website and ticketing path. Ticketing path is powered by BlocksOffice. Launching in 2013.
Website and ticketing path. Ticketing path is powered by BlocksOffice. Launching in 2013.
Drupal-based website, combined with a BlocksOffice-powered ticketing pathway.
Website powered by Made Media's in-house CMS, Backstage, and ticketing path powered by BlocksOffice.
Mobile website powered by Backstage, plus mobile ticketing pathway powered by BlocksOffice. iPhone app also interfaces with these to provide a full mobile ticketing pathway (not launched yet).
SilverStripe-driven website, plus ticketing pathway powered by BlocksOffice. Fully responsive.
Website powered by Backstage, including ticketing pathway interfacing with the Spektrix API.
SilverStripe-driven website, plus ticketing pathway powered by BlocksOffice. Launching in early 2013.
Comprehensive repairs and maintenance management solution, built in PHP. Comprises a web-based management interface which also hooks into mobile web applications on Android and Windows Mobile.
Farmgear is a classified adverts system for farm equipment. The site itself is horrendously ugly but there was a lot of work done behind the scenes to tighten things up.
Landini Trader is a portal site powered by the main Farmgear code. There's some rather complex logic behind the scenes to decide which dealers and items to show. Mostly, Landini was a complete reskin of the existing code.
McCormick Trader is a portal site powered by the main Farmgear code. There's some rather complex logic behind the scenes to decide which dealers and items to show.
GearZap is a Mobile Fun spinoff site. It was built using Magento, which still gives me nightmares about it's complex structure of XML config files. I can't imagine a worse platform for e-commerce, except maybe OScommerce.
MobileFun.de proved to be a pilot project for Zend Framework, which we'd later go on to start applying to the main site. We were learning as we went so I know the code was absolutely awful in places. I imagine there's very little left of what I did though!
The main Mobile Fun site pre-dated me by several years, but during my time with the company we started to rewrite the previous code into an MVC version powered by Zend Framework. At the time I left this work was still ongoing, as was a separate project to replace their .NET backend systems with a PHP-driven interface. I learned a lot about site performance and caching while working at Mobile Fun, and it was my first time working as part of a professional team.
This was the counterpart of Lytestream Electrical, which is now archived. Both sites used basically the same code and styling, with some images changed. The client was on a tight budget, so that's what they got.
This was a relatively simple CMS-driven website powered by CakePHP.
This is the counterpart of Sensient Dehydrated Flavors, and the same situation applied. However, I also had to learn about right-to-left text-rendering for this project, as the site called for an Arabic translation alongside the usual language options. That was quite enjoyable, and I think it works well, on the whole.
A simple mostly static website driven by PHP. Originally this site was created in CakePHP, but due to the inexperience of the other team members, I was required to rewrite it in straight PHP. It didn't really make any difference to the user experience, but fear of the unknown can be a powerful thing.
These are projects which I've worked on in the past that are either no longer online, or where they have been drastically changed since I worked on the site.
A complete WordPress-driven CMS site, which I designed and built as a freelance project. I was really proud of this, but unfortunately their business went in other directions and they've replaced the site.
A simple static site built in PHP. This is one of the few I've ever designed myself, and it showed (although the poor quality stock imagery was not my choice).
A brand new e-commerce store completely built in CakePHP. This was my first "proper" use of AJAX, to provide a faceted search for specific wines.
Custom CakePHP-driven CMS website.
Custom CakePHP-driven CMS website.
Complete CMS-driven site built in CakePHP.
Updates and amendments to this CMS-driven site for one of the UK's most popular circuits.
Updates and amendments to this medium-traffic e-commerce store.
A simple WordPress site built as a placeholder for this Golf Course and Hotel.
Updates and amendments to a simple CMS-driven site.
Simple content-managed site built using CakePHP. Used the SoundManager2 JavaScript to provide audio playback of the harpist's repertoire. It wasn't my idea, but I made it work.
Simple content-managed site built using CakePHP.
Updates and amendments to a high-traffic e-commerce site powered by OScommerce.
Updates and amendments to a medium-traffic e-commerce site powered by OScommerce.
Updates and amendments to this WordPress site for a small PR company.
Updates and amendments to this low-traffic bespoke e-commerce site.
Simple content-managed website built using the CakePHP framework.