PHP Support for HomeServe

I joined HomeServe as one of two contractors hired to support their legacy PHP application developed in the CakePHP framework. The decision was made to refactor the code in ASP.NET. Along with the other contractor, I collaborated with the existing PHP team to wind down the current application, address imminent issues, and assist in the early design stages of the new .NET solution. During my two years at HomeServe, I eventually led a team of two other PHP developers.

OPCON Production Control System

I designed a resilient three-node cluster spread across two data centres, each with separate power and communication links to the production facility. This setup ensured that the plant could be operated from either data center in the event of a hardware, power, or network outage.

Mercia Servers

One of our initial tasks was to build and configure web, FTP, Usenet, and mail servers, each running on Linux-based PCs. This project required me to familiarise myself with early versions of many GNU and open-source packages, including Sendmail, WU-FTP, and Apache.

Quasar PEPS Module

As part of a small team of three, I developed the Quasar PEP (Personal Equity Plan) module, an investment instrument in the UK similar to a modern ISA. We managed the project through its full life cycle, including screen design, module coding, unit and integration testing, and writing user manuals.

Quasar Support

Quasar featured a core system with general functions and libraries of reusable procedures, along with numerous modules offering various client features, which were sold and supported individually.

Pirates Computer Game

Although the game did not sell, I thoroughly enjoyed creating it. The logic involved developing a fast algorithm for character navigation through the maze, effectively handling dead-ends and loops, but giving a near optimal route from a given start point to end point.

Commodore PET Assembler

Having a strong foundation in BASIC, I was eager to delve into assembly language on these machines. Since an assembler wasn’t available, I took the initiative to develop a two-pass assembler using PET BASIC.

Invaders Return Computer Game

The resulting game, inspired by Space Invaders, featured invaders that occasionally peeled off for bombing raids. Although the project was not commercially successful, it provided enjoyable gameplay and a fulfilling coding experience.

Expert System Shell

For my HND project, I developed an expert system inference engine intended for an IBM PC, utilizing C programming. Initially, I implemented all algorithms on my BBC Micro using BBC Basic, which was accessible at home. Once I verified the logic, I translated the code to C for my final year project. Following successful completion…