The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

Ajax for intanet web app?

I am developing an Web Based app for an intranet.I am wondering,should one use Ajax in this scenario,since response time is so fast,I dont see the need for Ajax.
Wednesday, September 27, 2006
Latency is just one thing that should influence your choice, if you think (or preferably, some usability testing shows) that using ajax will be of benefit, then go for it.
Don't do it just because it's cool...
G Jones
Wednesday, September 27, 2006
I agree with G Jones - a lot of noise is made about reducing apparent latency with ajax, but in my opinion, it's not the main reason to use it. It's all about interaction and increasing usability. If you're not getting a net gain there, don't use it.

A word of caution - the principles behind ajax aren't that complex once you get the hang of them, but you are adding a layer of complexity, and it will increase your dev time.
Wednesday, September 27, 2006
Part of the appeal in using AJAX for apps is the ability to seamlessly update the screen. Whenever the screen reloads a non-AJAX response, it will flicker a moment creating an annoying distraction. If you don't believe this makes a difference to the user, then put a pebble in your shoe and go take a hike.

Be cautious if you use AJAX and be sure any solution meets user expectations. If the user is used to a wizard with sequential screens and you modify the app by replacing the main content area with AJAX responses your users will be very unhappy when they hit the back button and discover they have to start all over.
Wednesday, September 27, 2006
"...your users will be very unhappy when they hit the back button and discover they have to start all over."

It is possible to design around this limitation. However, while we're on the subject, AJAX is proving very useful for when we need to keep a lot of information on the screen and still need to fetch data.  Err...  specific example...

You're filling out an invoice. You've filled out the top part with the customer's name, address, phone number, etc etc, and you're now filling in the sales info. With AJAX, you can type in a product number and the description field will automatically be populated.

Previously, you would either have to a) open another window and look up the product number or b) submit the invoice sans description, get back the server completed form and then verify it for accuracy. Because you've typed in the customer info previously, using the back button is ironically not a desirable option with or without AJAX.

Right now, I would say its most useful when you're trying not to "interrupt the users' flow".
Wednesday, September 27, 2006
Additionaly, a dialog box can be floated with relevent information, changes saved to the server, and the main screen updated. An example would be a table of results in the main screen. Click on an item to see details in a floated dialog box. This prevents too many browser popup windows from cluttering the desktop and clicks outside the box can be caught and eliminated adding to the security and integrity of the app. The user then makes changes and submits them to the server where they are saved. when the AJAX response comes back, the item's result in the main results table is changed without reloading the whole table. All this could be done using a popup window without AJAX, though it would be less polished and more disruptive to user flow. If only a handful of company employees will be using the app, AJAX may be a bit overkill unless of course, they are key people and they like your work.
Thursday, September 28, 2006

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
Powered by FogBugz