27 July 2008

Javascript and design decisions

WHEN I code a site, I prefer to use as much plain HTML as possible. This way, I feel more certain that there are no barriers to anything I write because plain HTML is the "lowest common" technical requirement to use the Web.

However, plain HTML can be quite dull. If you look at the home page of user:number 1, very little happens there to keep people watching. That's fine - the site is primarily an information website and was designed for visitors to find information quickly.

But other websites have different needs. For example, right now I am looking at a photographic gallery and the owner wants smooth transitions and nice effects. To do this, I am programming with Javascript (more correctly, ECMAScript) which is fun. It's an excellent tool for more dynamic displays and for a gallery of artistic photographs (mostly portraits), it's fine. The primary reason for visiting the site is to view the pictures which most people will take a bit of time over. Slow but smoothly animated transitions are acceptable in this case.

But for businesses, where should the line be drawn? How much Javascript should an online store have before customers are turned off?

There are simple rules-of-thumb to be guided by here. The most important thing is not to annoy your potential customers. This means that any transitions should be kept to a minimum. Keep down the total size of the page - many people still use dialup connections and a fast-loading page is always preferred, all else being equal. Finally, ensure that the transitions add to the experience rather than hindering them. So for example, animations can be used to draw the eye towards relevant information; but they should also not be distracting (this fine line is possible - I tested this kind of thing myself in the 1990s).

Testing is the best way to understand where these barriers are for most people. It's possible, but also risky for a designer to rely entirely upon their own judgement - their page load times are probably good and they're being paid to do this. Customers aren't - they are paying for the privilege.

The good news is that even a modicum of Javascript can add a positive experience to browsing.

The only problem is people like me who browse with Javascript turned off and hate having to turn it on again...

There's no pleasing some people ;-)

No comments: