Ajax Deployment: Not So Fast
"You will be able to interact more easily and get value from those interactions," said Tony Karrer, the CEO of TechEmpower, a Web software development firm. "Also, you will be able to piece together solutions from free or inexpensive services."
An interactive Web experience can be produced in any number of ways, including using Adobe's Flash animation plug-ins and even Active X controls. However, some developers are migrating toward Ajax components because of problems with the other technologies. Said Bray, speaking of an earlier project: "We tried to move part of our user interface to Flash, and while the results looked great, they had terrible usability, and we retreated to basic Dynamic HTML."
Part of the Web's legacy is that it is stateless: A browser sends a message to a Web server, and the server responds some time later. Ajax helps to process user requests immediately and tie the request and response more closely, such as a user picks items to purchase and these items are added to a shopping cart.
Ajax has its advantages in helping to make the whole eCommerce experience more useful and usable. "Instead of users waiting for the entire screen to reload, Ajax allows selected parts of the screen to update. That really changes the paradigm of the Web -- it's no longer pages but screens that are much more similar to traditional applications," said Olsen. Brandon Adams, the chief operating officer for Browser Media, a Web tools and software design company. "The advantage is, when done well, the Ajax page can be a better UI experience than a traditional full page of HTML using submit/refresh."
Ajax also is particularly helpful with treating forms and lists. "We primarily use Ajax to allow refreshing of a subset of data on a Web form so that the entire form doesn't have to be reloaded," said Matsuoka. "Typically, we may use it to repopulate the contents of a drop-down list, combo list, or to validate data prior to form submissions." But, he adds, "Ajax is most effective when used with a light touch."
Above all, don't forget about sticking to standards. "Ajax coding is complicated enough, so doing things in standardized ways helps ensure that you're not creating spaghetti code that's impenetrable to anyone who didn't have a hand in writing it," said Olsen.
Finally, don't forget to do lots of testing with various browser configurations to make sure that everything is working. "There still are cross-browser issues," said Karrer. "I would still say that you want to choose carefully where you use Ajax."