activedition - content management plus

Geek-Free Zone

Ajax: The good, the bad and the confused!

When I was just a sapling, Ajax was a mere household cleanser but now it is more widely known amongst us techies as an acronym for Asynchronous Javascript and XML.

Ajax is the stuff that allows web applications to become much more interactive. Rather than the web server sending down whole pages in response to some user input only small parts of the page are refreshed. When using a classic desktop application such as Excel you would get pretty frustrated if your whole screen flickered whilst it was refreshed after entering a value or formula. Ajax starts to bridge the gap between desktop applications and the “click-refresh” web we are used to by making things quicker and more interactive.

One of the biggest challenges with Ajax is maintaining accessibility as many assistive technologies (screen readers and the like) don't implement Javascript. The key to the implementation of Ajax is the concept of graceful degradation. Where accessibility is paramount, Ajax should only be used to enhance the user experience and shouldn’t hinder task completion.

An example of good use of Ajax can be found on the ever-popular Youtube site. The search box at the top of the page will find suggestions dynamically as you type which will represent actual content on the site. If you don't have Javascript enabled or it isn't implemented then you can still enter search terms and browse the site unhindered. This is a nice touch and actually ticks some accessibility guidelines boxes along the way.

Recently I had the unenviable task of renewing my car insurance. I decided to use a popular comparison site in the hope of getting the best deal. When I got to the part of the form that asked me for my occupation and type of business there was a nifty bit of Ajax that would show a list of matching entries as a typed. All well and good! In writing this blog posting I thought I would try turning off Javascript to see what happened. To my surprise I couldn’t take my quote any further as I was given a very unfriendly error message saying “please select an occupation” despite having typed something into the box. The little pop-up thing that helps you select an occupation didn’t work either so effectively at this point I’m totally stuck.

Above is a classic example where Ajax was implemented to make the process easier for the user and more predictable for the organisation concerned with giving me a car insurance quote BUT crucially they forgot to make it degrade gracefully. In this case the end result is disastrous for the organisation because they end up losing my business due to my inability to complete the quote form.

So graceful degradation is the way forward for interactive web applications? Well, yes, but unfortunately at a cost. There is an intrinsic overhead in using Ajax and making it degrade as everything needs to be coded in effect twice (not strictly true but a reasonable rule of thumb). The great danger is that organisations commission web applications and either disregard accessibility (Hotmail being a prime example as it doesn’t work without Javascript) or they underestimate the work required to maintain accessibility whilst making the application as easy to use as possible by providing Ajax enhancements.

One final point with Ajax is the expectation of the user. Ajax isn’t new but its use is only now becoming more apparent. One issue is that users don’t always realise that something has changed on the web page as they expect having clicked a button that they will get a page refresh. Until such times as a high level of interactivity is expected on the web visual cues will be necessary to draw user’s attention to changes. I’ve not yet seen any usability studies on sites that use Ajax but I’m guessing that in some cases people just won’t get it.

All this Ajax talk has got me inspired…..I really must clean that bathroom!

Comments

No Comments

About The Twig

The Twig is Activedition's know-it-all but we can't reveal his real identity him for fear of him being head-hunted. Look out for blog entries on a variety of subjects including accessibility, usability and various pieces of technical wizardry!