Web Design Philosophy

On this page I describe the principles of website design that I use and promote. It is not an exaggeration to call this a philosophy, because this is not just about the use of technology, it is more about an attitude of mind.

The KISS Principle

The KISS principle is the most important principal in using any technology to solve problems. It stands for “Keep It Simple, Stupid”. There is a tendency amongst many technophiles to over-complicate websites, simply because it is tempting and easy to do so, and often this complexity is present just because the developer is trying to show off their technical prowess or even more simply because they do not have the experience to see the simple solution or even know that simplicity is a desirable property.

However, if you use such a designer, you will end up paying for this in some way, either because the resulting design is slow, or difficult to use, or buggy. The KISS principle, when applied, leads to simple, easy to use and reliable websites.

Accessibility

My website design approach starts with the principles of Standards-Based Design. The emphasis is on making the web accessible to everyone, not just the “Temporarily Able-Bodied” (TABs) – i.e. those with perfect visual and manual function.

It is unethical to design a website that is not accessible.

Portability

It is still surprisingly commonplace to find websites that only work in one browser – typically Internet Explorer and even then only the Windows version for PCs. The companies with these websites are losing customers as a result. For example, did you know that the Firefox browser now has a 10% market share? Can you afford to discard 1 in 10 customers before they’ve even looked at your site?

What do you want your website to say about you? That you are technically inept, out of date, unavailable, and uncaring of others circumstances or choices? Or up-to-date, aware, caring of people’s circumstances and accepting of others’ choices?

I know which person I would want to do business with.

I design websites that are independent of both the browser, type of computer and operating-system that the user has chosen. This means they will work correctly with Internet Explorer, Firefox, Mozilla Suite, Opera, Safari, Netscape and Google Chrome. They will work on Windows, Macintosh and Linux as well as the growing field of mobile devices. They will also work with screen readers for the visually impaired.

Future-Proof Design

Standards are always concerned with compatibility and continuity. Therefore, by using standard-based design, I increase the chances of the technology continuing to exist for many years and therefore the chances of your website functioning correctly without needing redesign.

In general, all features of any website I design will conform to these standards unless there is a very compelling reason not to.

I use verification tools to check for conformance to these standards and can supply you with the conformance results.

Open-Source Technology

In general I avoid proprietary software: all my design work uses open-source standards. This is part of my future-proof design philosophy.

My reason for doing this is that proprietary technology can be changed or dropped on a whim by the company it belongs to, leaving your website unsupported. Furthermore, large corporations are quite happy to change the design of their products with no notice because they are marketing-driven, and marketing requires constant change regardless of the cost to you.

For example, several years ago, Java was trumpeted as the answer to everyone’s problems for developing web applications. Yet over 10 years later, very few people are using it for this purpose. This is because of a commercial battle between Microsoft and Sun Microsystems touting different versions of Java (incidentally won in the courts by Sun). Because of the lack of a reliable, stable standard, website designers were unable to design platform-independent systems using Java and so it didn’t get used. I don’t use Java for this reason, preferring the AJAX (Asynchronous JavaScript and XML) approach to web application design which can be standardised across platforms.

Open-source technology is driven by a desire to make things function well. There is an emphasis in the open-source community for defining standards to ensure continuity. Therefore, by using open-source technology, I am using standardised techniques which increase the chances of your website working correctly and continuing to do so in the future.

The open-source approach I use is known as LAMP (Linux, Apache, MySQL, and PHP) and is the most common approach used on the web – so it is tried and tested. Don’t be put off by knowing that most customers are using Microsoft Windows on their computers, on the web most web servers are LAMP servers. The Linux/Apache combination accounts for about 2/3 of all websites and MySQL/PHP are used in most of those websites that use dynamic content. I can also combine these technologies to develop dynamic web applications using the AJAX approach.

No Authoring Tools

My insistence on standards for accessibility, portability and future-proof design means that I do not use any website design tools. I hand-craft web pages so that I can guarantee that they are correct and standards-compliant.

This may seem strange, since such tools apparently make the job easier and quicker. Surely that should mean higher productivity? They do not. It is just as fast to hand-craft a website. Furthermore, I believe that hand-crafting is necessary because such design tools tend to be concerned with visual appearance at the cost of correctness. They often generate non-standard websites that can be slow, prone to problems, are non-portable and definitely not future-proof. Even when they claim standard-conformance, they only pay lip-service to the idea. In short, they are not good enough. Sadly the majority of websites on the Internet suffer from these problems. The end result is a technically poor website design, often failing to meet the accessibility and SEO requirements or failing to work on older browsers.

Ownership

I believe that the website belongs to you, the customer, not me, the designer. I therefore use an approach that is open and understandable, which makes the website truly yours. As mentioned in the section on Features, I can use dynamic techniques that allow the website to adapt to both changing content and new content, minimising the need to call me back to make changes.

Charity and Voluntary Sector Work

I am a supporter of charitable, voluntary-sector organisations and have worked as a volunteer myself.

I am very interested in bringing my skills to this sector of the UK’s essential services. I offer discounted rates for designing websites of any organisation working in this sector.