I am a systems designer, website designer and programmer based in London. I have over 20 years' experience in computer engineering since graduating with a PhD from Southampton University in 1987.

I can combine my main areas of expertise to create integrated systems incorporating websites, databases and bespoke programs.

Systems Design

Too many designers see only the detail and are blind to the bigger issues. This usually means that you may find a fundamental flaw in your system late in the development process, causing delivery delays and even possibly resulting in project cancellation.

I am a systems designer, able to see the big-picture issues, to design the overall system so that it works as a whole as well as in the details. I have many years' experience in the software industry planning and designing complex systems, data storage and structures, interchange formats, file formats, inter-program communications and many other systems. I have also spent years developing these same systems. So I know what it takes to both design, manage and program complex systems.

Website Design

My website design approach yields high quality websites that are visually attractive, work well on all computer types and which are accessible to a wide range of people including those with visual or physical impairment.

Website design is now becoming a mature science and we are now at a stage where there are international standards for website design. However, a quick look at the Internet today shows that only a small proportion of web sites are using this approach.

I have always moved with the times and have kept track with the emerging technology. This means that not only am I very experienced, but I am also one of the new breed of web designers that use a standards-based approach that is accessible, clear and future-proof.

For more information about my website design approach and the features I can design into your website see the page on website design.

Keywords: XHTML, HTML, CSS, PHP, JavaScript, AJAX, Hijax, XML, MySQL, WAI, open-source, systems design, Google Webmaster Guidelines, Google Analytics, SEO, cross-browser design, standards-based design, accessibility.

Programming

My programming approach yields high quality applications which are easy to use, easy to install and work across all common computer types.

I have been using C++ since early in its development and have grown with the language. I have always stayed up to date with the development of the language and I now consider myself to be a C++ expert.

My preference is to avoid using proprietary software: all my programming uses open-source programs and libraries. This is because proprietary technology locks you into one computer type. I believe it is good practice to make all programs potentially portable, so that they will work on Windows, Apple Macintosh and Linux. Even if you only plan to use one type, you may change that policy in the future. My approach ensures that your program will be inherently portable to all platforms. This doesn't cost you more - in fact there's a strong argument for it costing you less.

For more information about my programming approach and the features I can design into your programs see the page on programming.

Keywords: C++, STL, STLplus, wxWidgets, wxWindows, GUI, Windows, Linux, Unix, open-source, systems design, cross-platform design, object-orientated programming, multi-paradigm design, imperative programming, generic programming, networking, TCP, UDP, database, SQLite, data structure design, web integration, multi-lingual applications.

Examples

For a selection of some of my designs see my examples page .

Contact

If you are interested in using my website design services, please contact me.