If you thinks about accebility, you must choose both ways. A lot of
AJAX to improve user experiencie, but backed by server-side
alternatives in order to allow users without Javascript and with
special browsers or navigation methods. You will improve the
discapacited user experience too.

On Aug 20, 4:13 pm, drewB <[email protected]> wrote:
> I have been thinking lately about what should be executed client-side
> vs. server-side and was curious what others thoughts are.
>
> Let's take the following example.  A user has selected X pieces of
> furniture.  On a single page, they are
> shown a list of the furniture items with specific info about each
> piece (name, dimensions, manufacturer, list of parts etc).  Much of
> this info wouldn't be shown by default but is expandable.  The user
> can delete furniture items or add new ones. When they add a new one it
> is immediately added to the page without reloading.
>
> *Server-side heavy solution*
>
> You could implement this mostly server-side with some javascript to
> expand info, add and delete items, etc.  When the user added an item,
> you could use AJAX to build the new block server-side and just add it
> to the page when returned.
>
> *Client-side heavy solution*
>
> Server-side you could generate a simple javascript variable with the
> page's data (perhaps in JSON) and then generate all the page's content
> with javascript client-side (you would of course still do all the
> layout server-side).  This is actually much easier than it might
> seem.  Prototype has some nice DOM editing that is very clean.
>
> *My Thoughts*
>
> Lately, I am leaning toward the Client-side heavy solution for the
> following reasons (feel free to argue with me):
>
> - I make up that the server can handle more users because less work is
> done there.  (can someone verify or refute this?)
> - Cleaner delineation for presentation layer because all the main
> content is present with javascript.  If I want to change the way
> things look, I just go to one place.  If it is done server-side, I go
> one place for initial presentation (server-side) and another for on-
> page dynamic presentation (which has to be javascript).
> - Possibly better user experience because there is no delay between
> adding an item and it showing up on their screen (don't have to wait
> for AJAX call to return). However, there would be a delay when the
> page first loads while javascript creates the content (I use a "page
> loading . . ." message that disappears typically in less than 1
> second).  I could for certain sites, that a delay when someone adds a
> new item might be preferable to when the page just loads.
>
> What are your thoughts?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to