
This book is intended for small to medium business owners who are specifying their requirements for commercial websites, whether setting up a website for the first time or updating their first-release website to current standards. This book allows them to specify the design of such websites so that they follow good practice in a wide range of features.
For each aspect of good practice, the background and history of that aspect is discussed and current good practice spelled out.
Commercial websites have a particular and specialised role of promoting the interests of the commercial organisation which they represent and consequently are distinguished from other web site forms, such as, for example, artistic website. An artistic website can be obscure, challenging to navigate, may hide certain of its features to the casual visitor and yet still succeed in its objectives despite (or even because of) these characteristics. A commercial website must, in contrast, observe good practice rules in order to promote the organisation's interests.
This book concentrates on good practice, not best practice, for a number of reasons. Firstly, "best practice" often involves high implementation cost and long lead times, whereas most commercial website owners are seeking to minimise each of these. Secondly, we have no desire to engage in the petty semantic wars which sometimes erupt in this area; it is of no benefit to the commercial website owner to argue the relative merits of "standard A" vs. "standard B". Thirdly, both the de jure and de facto standards for web design are evolving steadily, so even if we can agree on what is best practice, it will be tomorrow's good practice.
To illustrate a practical implementation of each of the techniques in this book, we have prepared a demonstration website, http://www.zabalu.com. The Zabalu website is a fully featured food information website, but one which has also been carefully prepared to illustrate the techniques (and their outcomes) discussed in this book.
The main subject areas discussed are:
Set all text sizes in relative units, allowing the website visitor to resize them in a relative way.
All text sizes are set in relation to the "em", the font size of the relevant font. Thus, when the site visitor adjusts the text size rendering of their browser, all text, including headers and captions, is resized. The one exception to this is the principal page caption, which is rendered by an image. These images are rendered in 22 point font, so are quite legible at their standard size.


What we mean when speaking of scripting languages is any of those client-side scripting languages which allows enhancement of the user interaction after the page is initially rendered. These languages can substantially improve the quality of user interaction and many of the language techniques have become so common as to be both familiar and expected. For example, when you pass your mouse over a menu image on a website the image may be replaced by a complementary image which indicates that the menu item is available, and once clicked a further complementary image may be used. This is achieved by way of a scripting language. When a small sub-page with additional information is popped up, this is often managed by a scripting language. Equally, when a mortgage calculator is presented on a page, it will usually be implemented by way of a scripting language. Further, when you fill in a form on a website the validity of your inputs is often checked before the form is submitted by a scripting language. Each of these functions adds value and richness to the browsing experience.
The client-side scripting languages are typically Javascript, VBScript (Visual Basic Script), TCL or Java, with Javascript being by far the most commonly used.
For good practice design, we need to evaluate the additional contribution of these scripting languages against their downsides.
The first option is acceptable design, but the second outcome cannot be considered as "good design". Consequently, we suggest that the golden rule for use of (client-side) scripting languages must be that they only be used for peripheral contribution to a website's functionality and not for any fundamental functionality. This will ensure, once again, the widest possible audience for our website's content.
The Zabalu website makes use of a limited set of client-side functions written in Javascript, which take care of minor user interactions such as checking that, when the search button is pressed, some text has been entered in the input and rotating the logo each time a page is visited. Absence of these minor functional elements would not markedly detract from the website user's visit to Zabalu.
Current good practice is to use a site-specific version of the major search engines, as these tools will be familiar to your site visitors. Advanced options should only be available by specifically selecting to use them, otherwise the basic search facility should work as a simple, case-insensitive text search. Where you have large databases incorporated into the site, these need to have custom search facilities. Good practice may evolve to include searches which encompass non-textual data.
Zabalu uses our own site search software, which we can adapt and control with some precision. Nevertheless, the general appearance of the site search software output is quite similar to that of the major search engines, and advanced searching is only available as an option after basic searching.
The very large nutritional database is provided with its own, specific searching facility,

The series is available at the following websites:
http://www.changefactory.com.au/
and
http://www.modulus.com.au/
Change Factory is a change management company, specialised in Business Process Management and Training. Change Factory can provide your company with support in implementing business process management, documenting business processes, RACI analysis, KPI management and target setting, Service Level Agreement implementations and Internal Control implementation. Additionally Change Factory offers a range of training programs directly aligned with this Business Process Management. For more information contact Kevin Dwyer, kevin.dwyer@changefactory.com.au.
Modulus provides tools, applications and services to consultancies and website developers. For more information contact Peter Hill, peter.hill@modulus.com.au.