There has been lot of talks about Ajax and usability with Ajax all set to change the user experience all over the Web. Nothing comes for free, if it has various advantages there are several disadvantages along with it. Advantages are pretty well known but lets look at the various disadvantages in terms of usability:
- One of the major complaint against Ajax is that it break the expected behavior of the browsers back button. Users are generally used to returning to last static page by use of this button but it might not be the case with Ajax implementation.
- It is not possible for a user to bookmark the state of the application since the page url doesn’t change.
- Another issue can be that user fails to notice the updated parts on the web page since the users are use to old “refresh” concept for getting something new.
- Popping text into running page can affect page scroll and user might loose the context.
- There are no immediate clues after clicking. An example can be a user trying to register and clicks submit but he really do not know if its really submitting.
- Ajax introduces lot of code on client side that might be issue for users who has slow machines or slow internet connection. In terms of usability it is better to see a non Ajax site rather than not able to access the website at all.
- Cross browser is another usability issue. Its possible that a piece of code that runs pretty well in IE never really show up in other browsers.
- Its possible that too much updation on a page might lead general users to more confusion rather than making it more user friendly.
Looking at the above disadvantages and current Ajax market, are we ready to adopt Ajax to improve usability? Lets look at some of the questions that needs to be answered before we are really ready for Ajax implementation:
- Are Ajax frameworks and toolkits present in current market provides completeness towards implementing an Ajax solution?
- Are there any standard ways to overcome the usability issues mentioned above?
- There are a few solutions to above mentioned problems but are they really feasible in all scenario’s? Are they evaluated to work well with all the browsers?
- Are there any design patterns that can help in Ajax implementation?
- Is there Do’s and Dont’s listing that tells us what needs to be done in order prevent excessive overuse?
- …………………………………….
Looking at all these, I think the best bet for existing sites is to start small, may be a part of the page or a component. For example, in our current intranet site, we did the same by adopting Ajax for small part of page and for form validation. And gradually move towards bigger side which will even give users time to get use to new “rules”.