Portfolio

This is a small sample of my work, other examples can be provided on request.

Multi-threaded Office application for Sony

One of several applications I developed for Sony, the VSTO application was built to upload large numbers of spreadsheets into SQL Server 2008. The spreadsheets were large, complex, multi worksheet .xls files that contained tens of thousands of rows and hundreds of columns of financial data.

The application was able to load spreadsheets over the network, while updating text log files with audit information and inserting the data into SQL Server. The data was passed as a bulk upload so that network WPF appliation screenshot traffic was kept to a minimum. There was 4000 spreadsheets in total and the application needed to have the ability to track what it had already uploaded in case of a network outage and resume from that point. The files were located by a recursive search-feature which searched remote folders for data.

The application was for internal use only so there was no need for styling, hence the plain look.



WPF application for the Priory Group.

This is a Staff Management tool written in C# for Windows Presentation Foundation (WPF). WPF application screenshotThe main focus of this project was to save management time by automating some of the more time consuming and error prone tasks.

The business layer was generated using LLBL Gen Pro and so consequently, I used Linq to LLBL Gen Pro to query the generated entities.

Key to it's success, is the 'Monthy Rota' which is an automated scheduling system. Upon loading, staff names are displayed in the left hand column, with any pre-booked time-off visible in the calendar to its right. The manager allocates work days in almost a mirror of a paper based version. The difference being, however, that behind the scenes a complex business rules engine is monitoring any changes. When a scheduled work day violates any rules, a Traffic Light system alerts the manager with either a Red or Amber light.

Website for The Post Office

The Guaranteed Capital Bond website, is a website with a twist. After several screens of data collection, the user clicks on a Print button and is presented with a completed PDF. This dynamic population of an existing PDF template used the O2 Solutions PDF component, but during the build, I tested several other PDF solutions including those from Persits Software.GCB screenshot

As well as overlaying form data onto a PDF template, the site had to print a barcode which was auto-generated in code. This allowed the PDF forms, when printed, to be scanned by a Post Office terminal and recognised as a valid and unique document.

View the website




Google Mapping WebService for The Post Office

The Post office asked me to create a Branch Finder Web Application with the ability to plot driving directions between the users home postcode and their nearest Post Office Branch. The project was a short-term 'proof of concept' task that used the Google Maps API. Branch Finder screen 1

The application drew its data from a Web Service database which I created in SQL Server 2008. The database stored details on opening times and a list of facilities at each Post Office Branch. The application then was able to route customers to the nearest outlet that matched the facilities the customer was looking for.

The application was demonstrated to management and formed the basis for the final version which was deployed to the Post Office Portal a few months later.

When the finished product was built it used MultipMap instead, as the Google Geodecoder isn't as accurate as rival geodecoders.








Splash screen view

Windows Mobile application

This application was designed and built to log gym workouts. It was written in C# using the .Net Compact Framework and ran on Windows Mobile 6. The data from the workouts was stored on an internal SQL CE database.

The application was only for my personal use and was not intended for sale as there were already several competing products on the market. The picture shown is of the splash screen which is loaded on a background thread while the UI thread loads assemblies and reads the configuration file.

Multimedia Kiosk for the Co-op

I got a call in August from QCL Solutions who were the country's leading supplier of touch screen systems and multimedia kiosks. They wanted me to build 2 multimedia kiosk sites for one of their major customers (the Co-op). The sites were to sell alcohol and electronic equipment to customers at Co-op retail outlets and would accept credit card payments, with the actual order details stored in a SQL Server database held at Logica in London.

There was 6 individual XML feeds from Logica and I decided to utilise .Net to build the body of the sites as it has excellent XML support, plus, by creating user controls, QCL would get  reuseable code for future projects. This fitted in with their overall company goal of becoming more code efficient.

Coop screenshotBecause of the limitations of using touchscreen systems, I had to hand write a lot of code to do some of the more mundane tasks like scrolling and paging. I also had to create a Shopping Cart component and integrate with QCL's  WebShop Player software.

The sites captured customers orders and passed them to Logica in XML, then received status messages and data back from Logica in XML format. This was handled using the WebRequest and WebResponse classes, with a card reader capturing customers credit card details.

Coop screenshot The shopping cart had to be able to present a view of the products and allow them to add or remove items. The complications here was that special discounts had to be increased or decreased depending on the number ordered and the discount rules applied.

I worked closely with a QCL Web Designer to incorporate several Flash movies in to the site as variables were passed to and from movies. This was achieved by utilising the AiXtend Flash Inside ActiveX control.

Several weeks later I was commissioned to write the second Co-op shopping site to sell electrical goods, this had to blend seamlessly with the first site as it was to be run locally from the same kiosk server. All in all 10 kiosks were sucessfully built and dispatched to the customer.

MVC Framework logo