Ajax, state of the art

published Jul 04, 2006, last modified May 18, 2007

by Tarek Ziade, from Nuxeo

Works on CPS, a CMS for Zope. He is in charge of Ajax there.

What is Ajax?

A football club, a cleaner and a Web 2.0 technology: Asysnchronous Javascript And XML. Glue between application.

Examples: del.icio.us, flickr, digg, Google Mail.

Browser sends a Javascript call, server answers with just part of the page. This speeds up interactivity, saves bandwidth, avoids Flash.

Bad things to say about AJAX:

  • Search enginges won't index your website right
  • The back button is broken.
  • Several others

These can be true, but you can work around it, except for the back button.

Choose a good toolkit. Lots of choices.

SSF: Server Side Javascript Generation Frameworks. Javascript dynamically created by the server.

  • CrackAjax: change python to Javascript. But untestable and seems dead, but good idea, so keep an eye on it.
  • Azax. Young project. Keep an eye on it.

Low level client side frameworks (CSF).:

  • Test drive development doable.
  • Ready to use
  • Community. We choose the low level client side frameworks (CSF) as everyone seems to do that.

Ajax good practices

  • Accessibility still matters. Keep it gracefully degrading your UIs. Blind people don't care about Ajax.
  • It does bring pleasure.
  • Practice Test Driven Development! Javascript deserves it too.
  • Practice OO Programming, e.g. with help from Mojikit or other moders toolkits. Reuse.
  • Continuous integration. Bundle your javascript tests in your python test suite. The scriptaculous test kit helps here.

CPS Ajax goodies

  • nuxeo.javascript: provides all js libs in Zope 3 resources.

Conclusion

Ajax is not a revolution, but it is nice

More reading:

You can try it without frameworks, but frameworks help smooth away differences between browsers.