in reply to AJAX-based Perlmonks.com?

I think most interactive sites can benefit from some use of AJAX, with the following caveats: I'd love to have 'asynchronous' node voting. It's annoying to have to click each node you want to vote on, scroll to the bottom, then click 'Vote' (sometimes I forget to actually submit the form when reading a long thread).

This case might also actually reduce server load, since the node will only have to be generated once (not twice as is currently the case). Of course, there will potentially be a greater number of requests to vote, but I'm assuming this would be a lesser load than the double page generation.

To help those with less standard browsers (AJAX works pretty well on all the main browsers, including Konquerer and Opera), this feature could be a user settting.

Replies are listed 'Best First'.
Re^2: AJAX-based Perlmonks.com?
by Juerd (Abbot) on Dec 13, 2005 at 01:06 UTC

    I'd love to have 'asynchronous' node voting. It's annoying to have to click each node you want to vote on, scroll to the bottom, then click 'Vote' (sometimes I forget to actually submit the form when reading a long thread).

    That's a great idea, and easy to implement in a well degrading way. Add a button and a small iframe next to the voting buttons, and make that load the reputation display when the user has voted. Some Javascript could be used to hide the vote buttons (don't put THOSE in the frame!), but it would still work well without.

    Things like this I started using years ago, before anyone had invented the name AJAX for it, and long before XML and Javascript were considered required for something to be cool.

    Juerd # { site => 'juerd.nl', plp_site => 'plp.juerd.nl', do_not_use => 'spamtrap' }

Re: AJAX-based Perlmonks.com?
by b10m (Vicar) on Dec 13, 2005 at 19:16 UTC
    I'd love to have 'asynchronous' node voting. It's annoying to have to click each node you want to vote on, scroll to the bottom, then click 'Vote' (sometimes I forget to actually submit the form when reading a long thread)

    I read long threads entirely different. When I feel like voting on a node, I check the appropriate radio button. Then I go to the next node. When I'm done with the thread, I hit the vote button. Now my -maybe- 10 votes will be handled at once, thus less bandwidth than 10 asynchronous request on the server.

    --
    b10m

    All code is usually tested, but rarely trusted.
      10 votes will be handled at once, thus less bandwidth than 10 asynchronous request on the server.

      Just to pick nits - you'd be reducing the number of transactions, but not necessarily the bandwidth requirements. You still are reloading all of the content for those 10 nodes every time you submit votes. Asynchronous requests would only send the vote information & (user id, node id, vote type) and receive confirmation information (current reputation tally for node).

      Adding up all that data you still have less bandwith required in total.

      AJAX excels in reducing bandwidth when you do things like this - decoupling functionality from content and only sending page updates rather than the entire page. Yes, you might increase the number of transactions, but you are making their function more granular and thus simpler to process with less overall generated network traffic.



      Wait! This isn't a Parachute, this is a Backpack!
      I do this too, but I often lose track of how many times I've voted. The instant AJAX feedback on voting would help in that regard.