Gratuitous use of AJAX

15 Aug 2006 - 7:21am
8 years ago
6 replies
593 reads
Vishal Subraman...
2005

Check out HiDefDVD.com (from
http://www.thinkvitamin.com/features/ajax/responsible-asynchronous-scripting).
The article has some good info on when to/ not to use AJAX (wrt interaction
models). I'm not an expert on this, but I'm starting to have to deal with
this on a regular basis. If anyone's got more resources/ insights on this
topic, I'd appreciate it.

Vishal

On 8/14/06, Kevin Silver <kevin at clearwired.com> wrote:
>
> [Please voluntarily trim replies to include only relevant quoted
> material.]
>
> Hi,
>
> Does anyone has a really good example of a website that uses way too
> much AJAX? The example I'm looking for we cause you to become
> perplexed and cross eyed and scream out, "WHY!"
>
> Thanks,
>
> Kevin
>
> Kevin Silver
> Clearwired Web Services
>
> 5345 Wyoming NE, Suite 200c
> Albuquerque, NM 87109
>
> office/ 505.217.3505
> toll-free/ 866.430.2832
> fax/ 505.217.3506
>
> e/ kevin at clearwired.com
> w/ www.clearwired.com
>
>
>
>
> ________________________________________________________________
> Welcome to the Interaction Design Association (IxDA)!
> To post to this list ....... discuss at ixda.org
> List Guidelines ............ http://listguide.ixda.org/
> List Help .................. http://listhelp.ixda.org/
> (Un)Subscription Options ... http://subscription-options.ixda.org/
> Announcements List ......... http://subscribe-announce.ixda.org/
> Questions .................. lists at ixda.org
> Home ....................... http://ixda.org/
> Resource Library ........... http://resources.ixda.org
>

Comments

15 Aug 2006 - 7:38am
John Grøtting
2006

Around 1998 my company was working on the redesign of the Netscape
website. We were truly enamored with what one could do with DHTML
(pre AJAX terminology) at the time. We didn't have the XMLHttpRequest
object at the time, but the interaction was nevertheless the same.

What we did at the time was to have a sidebar navigation on the left-
hand side that would slide to the left and just become tabs after
someone minized it. It was a way of gaining some screen real estate,
while showing off the features of the newest browser.

What we discovered was that at that time, the extra code requirements
created a dramatic performance hit. Plus, back then, you couldn't
cache the javascript classes, meaning that the user had to reload
that code on each page...

Most users can be forgiving of gratuitous elements, if they don't add
a time delay. If the user feels that they are moving through their
tasks at a comfortable pace, then an extra bouncy, glowy object isn't
going to necessarily negatively impact the experience. In this
example, while some developers gave us kudos for pushing the
capabilities of the browser at the time, the warm fuzzy feeling
quickly wore off. This was particularly true of lower pages, where
the functionality was stripped out to gain performance.

John Grøtting

Grøtting + Sauter
Barnerstr. 14B
22765 Hamburg
Germany

Tel +49.40.398.34342
SkypeIn +1.818.574.8440
Fax +49.40.398.34340
Mobile +49.172.4246.976
www.g-s.de
g at g-s.de

Am 15.08.2006 um 15:21 schrieb Vishal Subramanian Iyer:

> [Please voluntarily trim replies to include only relevant quoted
> material.]
>
> Check out HiDefDVD.com (from
> http://www.thinkvitamin.com/features/ajax/responsible-asynchronous-
> scripting).
> The article has some good info on when to/ not to use AJAX (wrt
> interaction
> models). I'm not an expert on this, but I'm starting to have to
> deal with
> this on a regular basis. If anyone's got more resources/ insights
> on this
> topic, I'd appreciate it.
>
> Vishal
>
>
> On 8/14/06, Kevin Silver <kevin at clearwired.com> wrote:
>>
>> [Please voluntarily trim replies to include only relevant quoted
>> material.]
>>
>> Hi,
>>
>> Does anyone has a really good example of a website that uses way too
>> much AJAX? The example I'm looking for we cause you to become
>> perplexed and cross eyed and scream out, "WHY!"
>>
>> Thanks,
>>
>> Kevin
>>
>> Kevin Silver
>> Clearwired Web Services
>>
>> 5345 Wyoming NE, Suite 200c
>> Albuquerque, NM 87109
>>
>> office/ 505.217.3505
>> toll-free/ 866.430.2832
>> fax/ 505.217.3506
>>
>> e/ kevin at clearwired.com
>> w/ www.clearwired.com
>>
>>
>>
>>
>> ________________________________________________________________
>> Welcome to the Interaction Design Association (IxDA)!
>> To post to this list ....... discuss at ixda.org
>> List Guidelines ............ http://listguide.ixda.org/
>> List Help .................. http://listhelp.ixda.org/
>> (Un)Subscription Options ... http://subscription-options.ixda.org/
>> Announcements List ......... http://subscribe-announce.ixda.org/
>> Questions .................. lists at ixda.org
>> Home ....................... http://ixda.org/
>> Resource Library ........... http://resources.ixda.org
>>
> ________________________________________________________________
> Welcome to the Interaction Design Association (IxDA)!
> To post to this list ....... discuss at ixda.org
> List Guidelines ............ http://listguide.ixda.org/
> List Help .................. http://listhelp.ixda.org/
> (Un)Subscription Options ... http://subscription-options.ixda.org/
> Announcements List ......... http://subscribe-announce.ixda.org/
> Questions .................. lists at ixda.org
> Home ....................... http://ixda.org/
> Resource Library ........... http://resources.ixda.org

18 Aug 2006 - 7:41pm
dszuc
2005

Hi Folks:

Following on from John's email below, we are working on a web app & plan to
use DHTML to display certain functions. For example, user clicks on icon in
header to reveal a secondary window with the function displayed e.g.
http://www.backbase.com - click on Demos Tab in the secondary navigation to
see a sample of the behaviour we are looking for.

Questions:

1. Are there widget limitations when using DHTML layer?

2. Are there AJAX limitations when using a DHTML layer?

3. Are there data limitations when using a DHTML layer?

4. Other limitations?

The development team may have some concerns about using this approach to
load more sophisticated functionality as opposed to using a page refresh OR
launching a second instance of the browser. Our preferred approach is using
DHTML so that the user stays in the context of the screen they are in
currently.

Rgds,

Daniel Szuc
Principal Usability Consultant
Apogee Usability Asia Ltd
www.apogeehk.com
'Usability in Asia'

-----Original Message-----
From: discuss-bounces at lists.interactiondesigners.com
[mailto:discuss-bounces at lists.interactiondesigners.com] On Behalf Of John
Grøtting
Sent: Tuesday, August 15, 2006 9:39 PM
To: Vishal Subramanian Iyer
Cc: discuss at ixda.org
Subject: Re: [IxDA Discuss] Gratuitous use of AJAX

[Please voluntarily trim replies to include only relevant quoted material.]

Around 1998 my company was working on the redesign of the Netscape
website. We were truly enamored with what one could do with DHTML
(pre AJAX terminology) at the time. We didn't have the XMLHttpRequest
object at the time, but the interaction was nevertheless the same.

What we did at the time was to have a sidebar navigation on the left-
hand side that would slide to the left and just become tabs after
someone minized it. It was a way of gaining some screen real estate,
while showing off the features of the newest browser.

What we discovered was that at that time, the extra code requirements
created a dramatic performance hit. Plus, back then, you couldn't
cache the javascript classes, meaning that the user had to reload
that code on each page...

Most users can be forgiving of gratuitous elements, if they don't add
a time delay. If the user feels that they are moving through their
tasks at a comfortable pace, then an extra bouncy, glowy object isn't
going to necessarily negatively impact the experience. In this
example, while some developers gave us kudos for pushing the
capabilities of the browser at the time, the warm fuzzy feeling
quickly wore off. This was particularly true of lower pages, where
the functionality was stripped out to gain performance.

John Grøtting

Grøtting + Sauter
Barnerstr. 14B
22765 Hamburg
Germany

Tel +49.40.398.34342
SkypeIn +1.818.574.8440
Fax +49.40.398.34340
Mobile +49.172.4246.976
www.g-s.de
g at g-s.de

Am 15.08.2006 um 15:21 schrieb Vishal Subramanian Iyer:

> [Please voluntarily trim replies to include only relevant quoted
> material.]
>
> Check out HiDefDVD.com (from
> http://www.thinkvitamin.com/features/ajax/responsible-asynchronous-
> scripting).
> The article has some good info on when to/ not to use AJAX (wrt
> interaction
> models). I'm not an expert on this, but I'm starting to have to
> deal with
> this on a regular basis. If anyone's got more resources/ insights
> on this
> topic, I'd appreciate it.
>
> Vishal
>
>
> On 8/14/06, Kevin Silver <kevin at clearwired.com> wrote:
>>
>> [Please voluntarily trim replies to include only relevant quoted
>> material.]
>>
>> Hi,
>>
>> Does anyone has a really good example of a website that uses way too
>> much AJAX? The example I'm looking for we cause you to become
>> perplexed and cross eyed and scream out, "WHY!"
>>
>> Thanks,
>>
>> Kevin
>>
>> Kevin Silver
>> Clearwired Web Services
>>
>> 5345 Wyoming NE, Suite 200c
>> Albuquerque, NM 87109
>>
>> office/ 505.217.3505
>> toll-free/ 866.430.2832
>> fax/ 505.217.3506
>>
>> e/ kevin at clearwired.com
>> w/ www.clearwired.com
>>
>>
>>
>>
>> ________________________________________________________________
>> Welcome to the Interaction Design Association (IxDA)!
>> To post to this list ....... discuss at ixda.org
>> List Guidelines ............ http://listguide.ixda.org/
>> List Help .................. http://listhelp.ixda.org/
>> (Un)Subscription Options ... http://subscription-options.ixda.org/
>> Announcements List ......... http://subscribe-announce.ixda.org/
>> Questions .................. lists at ixda.org
>> Home ....................... http://ixda.org/
>> Resource Library ........... http://resources.ixda.org
>>
> ________________________________________________________________
> Welcome to the Interaction Design Association (IxDA)!
> To post to this list ....... discuss at ixda.org
> List Guidelines ............ http://listguide.ixda.org/
> List Help .................. http://listhelp.ixda.org/
> (Un)Subscription Options ... http://subscription-options.ixda.org/
> Announcements List ......... http://subscribe-announce.ixda.org/
> Questions .................. lists at ixda.org
> Home ....................... http://ixda.org/
> Resource Library ........... http://resources.ixda.org

________________________________________________________________
Welcome to the Interaction Design Association (IxDA)!
To post to this list ....... discuss at ixda.org
List Guidelines ............ http://listguide.ixda.org/
List Help .................. http://listhelp.ixda.org/ (Un)Subscription
Options ... http://subscription-options.ixda.org/
Announcements List ......... http://subscribe-announce.ixda.org/
Questions .................. lists at ixda.org
Home ....................... http://ixda.org/
Resource Library ........... http://resources.ixda.org

18 Aug 2006 - 9:34pm
Dave Malouf
2005

> Questions:
>
> 1. Are there widget limitations when using DHTML layer?
>
> 2. Are there AJAX limitations when using a DHTML layer?
>
> 3. Are there data limitations when using a DHTML layer?
>
> 4. Other limitations?

To all these questions the answer can be yes. There are indeed limitations
in all JavaScript interactions, but there are also limitations in Java and
C# and well C++ as well.

We have just converted to an AJAX platform and we have faced and quite
honestly burried quite a few perceieved limitations. Like any programming
language, it isn't really that you can't do something, it is about figuring
out the right syntax to make it happen.

Also, some of the questions above don't quite make sense when I think of
them literally.
The limitations that exist are in how quickly you can transfer your XML (or
JSON) through JavaScript into the DOM. Using terms like DHTML layer feels a
bit off to me.

JavaScript is limiting. It is an emulated language without a virtual machine
even. It is lousy at transforms of large datasets because it processes loops
simply.

The key to making an AJAX application work is figuring out when to go back
to the server and get stuff pre-transformed and when to get raw XML and
transform it on the client. Lots of performance testing is required, but the
end results are definitely worth it, IMHO.

-- dave

18 Aug 2006 - 9:45pm
dszuc
2005

Thanks Dave!

As an example:

We want to load, for example - *a shopping cart* in a secondary window (that
overlays) the application in the primary browser window on the right hand
side.

I was using DHTML layer as an example of doing that (?) ... And then
displaying the necessary *functions & data* inside that layer. Are there
other preferred approaches in making this behaviour happen?

Design Goal: We are trying to avoid the user losing context (within the
module they are currently in) and certainly trying to avoid a secondary
instance of a browser.

Rgds,
Daniel

-----Original Message-----
From: discuss-bounces at lists.interactiondesigners.com
[mailto:discuss-bounces at lists.interactiondesigners.com] On Behalf Of David
(Heller) Malouf
Sent: Saturday, August 19, 2006 11:34 AM
To: discuss at ixda.org
Subject: Re: [IxDA Discuss] Gratuitous use of AJAX

[Please voluntarily trim replies to include only relevant quoted material.]

> Questions:
>
> 1. Are there widget limitations when using DHTML layer?
>
> 2. Are there AJAX limitations when using a DHTML layer?
>
> 3. Are there data limitations when using a DHTML layer?
>
> 4. Other limitations?

To all these questions the answer can be yes. There are indeed limitations
in all JavaScript interactions, but there are also limitations in Java and
C# and well C++ as well.

We have just converted to an AJAX platform and we have faced and quite
honestly burried quite a few perceieved limitations. Like any programming
language, it isn't really that you can't do something, it is about figuring
out the right syntax to make it happen.

Also, some of the questions above don't quite make sense when I think of
them literally. The limitations that exist are in how quickly you can
transfer your XML (or
JSON) through JavaScript into the DOM. Using terms like DHTML layer feels a
bit off to me.

JavaScript is limiting. It is an emulated language without a virtual machine
even. It is lousy at transforms of large datasets because it processes loops
simply.

The key to making an AJAX application work is figuring out when to go back
to the server and get stuff pre-transformed and when to get raw XML and
transform it on the client. Lots of performance testing is required, but the
end results are definitely worth it, IMHO.

-- dave

________________________________________________________________
Welcome to the Interaction Design Association (IxDA)!
To post to this list ....... discuss at ixda.org
List Guidelines ............ http://listguide.ixda.org/
List Help .................. http://listhelp.ixda.org/ (Un)Subscription
Options ... http://subscription-options.ixda.org/
Announcements List ......... http://subscribe-announce.ixda.org/
Questions .................. lists at ixda.org
Home ....................... http://ixda.org/
Resource Library ........... http://resources.ixda.org

18 Aug 2006 - 9:48pm
Dave Malouf
2005

I think the new Gap design sounds like what you are looking for. It uses an
AJAX like functionality. I think using DHTML/AJAX can be an effective
solution for this approach.

Another good example of the type of activity I think you are driving at is
the SXSW Interactive Panel voting site. I mentioned it here last week, so
you can search the archives for the reference, I think. I don't have it
handy.

-- dave

> Design Goal: We are trying to avoid the user losing context
> (within the
> module they are currently in) and certainly trying to avoid a
> secondary
> instance of a browser.

20 Aug 2006 - 8:14pm
Cindy Lu
2006

Daniel,

Many sites use the "sliding layer" or "top layer" approach to avoid
the user losing context: see local.live.com, favorites.live.com,
amazon.com. You can also find it on Yahoo Design Pattern Library.

I used this design pattern for one application. It does help the user
stay in context. However, I have found 2 problems when adding
functions/forms to it:

1. The user cannot access the information behind the layer. Not like
a pop-up window, the user cannot move the layer around. If the layer
covers the information the user needs it, the user cannot get it.

For example, we have a simple form the user needs to fill out to
complete a process. The user can choose to use some parameters from
the base form. Since the top layer cannot be moved around, we have to
find other ways for the user to refer to the base form.

2. You need to define how the user closes the top layer and test it
when the user performs the functions you defined on the top layer. You
can use OK, Cancel buttons, [x] icon or having the user click anywhere
on the base screen. In one application, it uses all of the above
methods. I have found I accidentally closed the top form very
frequently when I copied and pasted data to the top layer when I
tested it. When I selected the field, my mouse slided to the outside
of the form, clicked the base form accidentally and the top layer was
closed.

For information display, it seems works the best. For adding
functions, you should design it with care and test it extensively.

- Cindy

=============
Cindy Lu, Ph.D., CHFP
HFE Consulting, LLC
"Designing for a Better User Experience"
http://hfec.biz
==============

> > Design Goal: We are trying to avoid the user losing context
> > (within the
> > module they are currently in) and certainly trying to avoid a
> > secondary
> > instance of a browser.

Syndicate content Get the feed