<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>
<channel>
	<title>Comments on: Doing it Asynchronously</title>
	<atom:link href="http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/feed/" rel="self" type="application/rss+xml" />
	<link>http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/</link>
	<description>It's Just Me</description>
	<pubDate>Wed, 07 Jan 2009 02:50:34 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Gautam Asaf</title>
		<link>http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/comment-page-1/#comment-14603</link>
		<dc:creator>Gautam Asaf</dc:creator>
		<pubDate>Sun, 21 Oct 2007 19:58:19 +0000</pubDate>
		<guid isPermaLink="false">http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/#comment-14603</guid>
		<description>&lt;p&gt;they say where to young,to get are self's sprun. Gautam Asaf.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>they say where to young,to get are self&#8217;s sprun. Gautam Asaf.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Doing it Asynchronously</title>
		<link>http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/comment-page-1/#comment-1889</link>
		<dc:creator>Doing it Asynchronously</dc:creator>
		<pubDate>Tue, 09 Jan 2007 03:18:21 +0000</pubDate>
		<guid isPermaLink="false">http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/#comment-1889</guid>
		<description>&lt;p&gt;[...] Jeffrey Sambells has written a nice intro post on Doing it Asynchronously. [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] Jeffrey Sambells has written a nice intro post on Doing it Asynchronously. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Doing it Asynchronously &#187; Professional Web Software Development</title>
		<link>http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/comment-page-1/#comment-1819</link>
		<dc:creator>Doing it Asynchronously &#187; Professional Web Software Development</dc:creator>
		<pubDate>Sat, 06 Jan 2007 16:55:04 +0000</pubDate>
		<guid isPermaLink="false">http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/#comment-1819</guid>
		<description>&lt;p&gt;[...] to make sure that everyone had read Jeff&#8217;s excellent article on the &#8216;A&#8217; in AJAX. Doing it Asynchronously discusses the need to handle the requests to and from your server component properly. Forgetting [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] to make sure that everyone had read Jeff&#8217;s excellent article on the &#8216;A&#8217; in AJAX. Doing it Asynchronously discusses the need to handle the requests to and from your server component properly. Forgetting [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: vsumner</title>
		<link>http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/comment-page-1/#comment-821</link>
		<dc:creator>vsumner</dc:creator>
		<pubDate>Wed, 20 Dec 2006 00:18:09 +0000</pubDate>
		<guid isPermaLink="false">http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/#comment-821</guid>
		<description>&lt;p&gt;"I have talked to many developers who jump into the whole â€œWeb 2.0â€³ Ajax thing and donâ€™t even realize what Ajax means let alone that Ajax can be asynchronous. They simply copy-and-paste some arbitrary example from the internet and are then baffled by what happens."&lt;/p&gt;

&lt;p&gt;6 months ago I was one of those developers.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>&#8220;I have talked to many developers who jump into the whole â€œWeb 2.0â€³ Ajax thing and donâ€™t even realize what Ajax means let alone that Ajax can be asynchronous. They simply copy-and-paste some arbitrary example from the internet and are then baffled by what happens.&#8221;</p>
<p>6 months ago I was one of those developers.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeffrey</title>
		<link>http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/comment-page-1/#comment-815</link>
		<dc:creator>Jeffrey</dc:creator>
		<pubDate>Tue, 19 Dec 2006 17:31:50 +0000</pubDate>
		<guid isPermaLink="false">http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/#comment-815</guid>
		<description>&lt;p&gt;Ah OK, I see you're point. Perhaps 'problem' was the wrong term in the article. My intention was to point out what 'asynchronous' means in AJAX, not necessarily to convey all the pros/cons. I have talked to many developers who jump into the whole "Web 2.0" Ajax thing and don't even realize what Ajax means let alone that Ajax can be asynchronous. They simply copy-and-paste some arbitrary example from the internet and are then baffled by what happens.&lt;/p&gt;

&lt;p&gt;Thanks for the constructive feedback. I'll write a follow-up sometime that better explains how to deal with the varying difference in each work flow.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Ah OK, I see you&#8217;re point. Perhaps &#8216;problem&#8217; was the wrong term in the article. My intention was to point out what &#8216;asynchronous&#8217; means in AJAX, not necessarily to convey all the pros/cons. I have talked to many developers who jump into the whole &#8220;Web 2.0&#8243; Ajax thing and don&#8217;t even realize what Ajax means let alone that Ajax can be asynchronous. They simply copy-and-paste some arbitrary example from the internet and are then baffled by what happens.</p>
<p>Thanks for the constructive feedback. I&#8217;ll write a follow-up sometime that better explains how to deal with the varying difference in each work flow.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: gram</title>
		<link>http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/comment-page-1/#comment-813</link>
		<dc:creator>gram</dc:creator>
		<pubDate>Tue, 19 Dec 2006 17:10:56 +0000</pubDate>
		<guid isPermaLink="false">http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/#comment-813</guid>
		<description>&lt;p&gt;Jeff, i'm glad you here to stand up for your "another ajax-basis" article :) But! Receiving responses in different arbitrary order is not the main problem, because solutions are known and widely used. Autosuggest is a #1 sample of "A"JAX with aync requests coming in different order .
Main &lt;em&gt;problem&lt;/em&gt;, as i said, is properly handling incoming requests on &lt;em&gt;server&lt;/em&gt;, and process them in order they were sent, or drop out-of-order ones.  Have you seen much of the sites which doesn't lock you with status message for a moments when you save edited content or settings? No! most of them use SynJAX for simplicity, and especially frameworks makes this problem. ATLAS, for example, will never be AJAX because it heavily uses SynJAX workflow. I bet you better mention these problems and possibly ways to solve them, rather than "another how-to-handle ajax responses with prototype" which takes about half of the whole article text.
Nothing personal :) Greetz&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Jeff, i&#8217;m glad you here to stand up for your &#8220;another ajax-basis&#8221; article <img src='http://jeffreysambells.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> But! Receiving responses in different arbitrary order is not the main problem, because solutions are known and widely used. Autosuggest is a #1 sample of &#8220;A&#8221;JAX with aync requests coming in different order .<br />
Main <em>problem</em>, as i said, is properly handling incoming requests on <em>server</em>, and process them in order they were sent, or drop out-of-order ones.  Have you seen much of the sites which doesn&#8217;t lock you with status message for a moments when you save edited content or settings? No! most of them use SynJAX for simplicity, and especially frameworks makes this problem. ATLAS, for example, will never be AJAX because it heavily uses SynJAX workflow. I bet you better mention these problems and possibly ways to solve them, rather than &#8220;another how-to-handle ajax responses with prototype&#8221; which takes about half of the whole article text.<br />
Nothing personal <img src='http://jeffreysambells.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Greetz</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeffrey</title>
		<link>http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/comment-page-1/#comment-812</link>
		<dc:creator>Jeffrey</dc:creator>
		<pubDate>Tue, 19 Dec 2006 16:31:39 +0000</pubDate>
		<guid isPermaLink="false">http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/#comment-812</guid>
		<description>&lt;p&gt;Gram&lt;/p&gt;

&lt;p&gt;regarding:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;most modern sites are using â€œsynchronousâ€? ajax&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;and&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;you donâ€™t often see the real part â€œAâ€? in modern web sites&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I would tend to disagree. The power of AJAX is in the fact that you don't have to force the browser to wait between requests and they can continue asynchronously doing other things while the user waits for an appropriate response. I agree I didn't mention the synchronous option but but that's because it's not the solution to the asynchronous problem, it's simply an alternative work flow that's closer to the original page reload option.&lt;/p&gt;

&lt;p&gt;The second problem you mention is what the guts of the article is referring to, as per the clickable example where requests are not necessarily returned in order. I'm not proposing a solution here, only a caution that there is a difference between synchronous and asynchronous and both methods can be used just as effectively, if done properly.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Gram</p>
<p>regarding:</p>
<blockquote>
<p>most modern sites are using â€œsynchronousâ€? ajax</p>
</blockquote>
<p>and</p>
<blockquote>
<p>you donâ€™t often see the real part â€œAâ€? in modern web sites</p>
</blockquote>
<p>I would tend to disagree. The power of AJAX is in the fact that you don&#8217;t have to force the browser to wait between requests and they can continue asynchronously doing other things while the user waits for an appropriate response. I agree I didn&#8217;t mention the synchronous option but but that&#8217;s because it&#8217;s not the solution to the asynchronous problem, it&#8217;s simply an alternative work flow that&#8217;s closer to the original page reload option.</p>
<p>The second problem you mention is what the guts of the article is referring to, as per the clickable example where requests are not necessarily returned in order. I&#8217;m not proposing a solution here, only a caution that there is a difference between synchronous and asynchronous and both methods can be used just as effectively, if done properly.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: gram</title>
		<link>http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/comment-page-1/#comment-809</link>
		<dc:creator>gram</dc:creator>
		<pubDate>Tue, 19 Dec 2006 14:49:02 +0000</pubDate>
		<guid isPermaLink="false">http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/#comment-809</guid>
		<description>&lt;p&gt;pretty useless article, actually it doesn't explains the meaning of A part. The main idea i see is to handle asynchronous responses via callbacks (onComplete prototype handler), but it doesn't explains main problem:&lt;/p&gt;

&lt;p&gt;first of all, most modern sites are using "synchronous" ajax, that doesn't means they freeze browser by specifying "synchronous" flag to XMLHttpReuqest, but rather they follow the following steps:
onSomethingEvent -&#62; Display "Loading" -&#62; Make request &#124;&#124;&#124;&#124;&#124;&#124; Recieve Response -&#62; Update Interface -&#62; Hide "Loading". 
That's what actually make them "SynJAX", and that's the problem which must be solved with "A" in AJAX, and not what Jeff writes here.&lt;/p&gt;

&lt;p&gt;second problem, is synchronization of events. If you won't block user with "Loading" dialog, you should handle concurrent request to the server. Let's get back to the "check marks" sample in the article. Let's assume you make really "A"JAX request to the server on each click. If user clicks too much and too often, there is a possibility to get out-of-order requests on the server due to network latency. I.e. your server may receive updated states in the following order: 1: enabled, 3: enabled, 2: disabled. This must be handled carefully, and solutions is not always trivial.
And that's the &lt;em&gt;main&lt;/em&gt; problem you don't often see the real part "A" in modern web sites.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>pretty useless article, actually it doesn&#8217;t explains the meaning of A part. The main idea i see is to handle asynchronous responses via callbacks (onComplete prototype handler), but it doesn&#8217;t explains main problem:</p>
<p>first of all, most modern sites are using &#8220;synchronous&#8221; ajax, that doesn&#8217;t means they freeze browser by specifying &#8220;synchronous&#8221; flag to XMLHttpReuqest, but rather they follow the following steps:<br />
onSomethingEvent -&gt; Display &#8220;Loading&#8221; -&gt; Make request |||||| Recieve Response -&gt; Update Interface -&gt; Hide &#8220;Loading&#8221;.<br />
That&#8217;s what actually make them &#8220;SynJAX&#8221;, and that&#8217;s the problem which must be solved with &#8220;A&#8221; in AJAX, and not what Jeff writes here.</p>
<p>second problem, is synchronization of events. If you won&#8217;t block user with &#8220;Loading&#8221; dialog, you should handle concurrent request to the server. Let&#8217;s get back to the &#8220;check marks&#8221; sample in the article. Let&#8217;s assume you make really &#8220;A&#8221;JAX request to the server on each click. If user clicks too much and too often, there is a possibility to get out-of-order requests on the server due to network latency. I.e. your server may receive updated states in the following order: 1: enabled, 3: enabled, 2: disabled. This must be handled carefully, and solutions is not always trivial.<br />
And that&#8217;s the <em>main</em> problem you don&#8217;t often see the real part &#8220;A&#8221; in modern web sites.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pete</title>
		<link>http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/comment-page-1/#comment-788</link>
		<dc:creator>pete</dc:creator>
		<pubDate>Mon, 18 Dec 2006 13:49:21 +0000</pubDate>
		<guid isPermaLink="false">http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/#comment-788</guid>
		<description>&lt;p&gt;i love this site, the layout is very clean.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>i love this site, the layout is very clean.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Interesting Reading at Beginning Google Maps Applications</title>
		<link>http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/comment-page-1/#comment-672</link>
		<dc:creator>Interesting Reading at Beginning Google Maps Applications</dc:creator>
		<pubDate>Fri, 15 Dec 2006 20:54:26 +0000</pubDate>
		<guid isPermaLink="false">http://jeffreysambells.com/posts/2006/12/13/doing-it-asynchronously/#comment-672</guid>
		<description>&lt;p&gt;[...] Doing it Asynchronously: Demonstration and explanation of the A in Ajax. [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] Doing it Asynchronously: Demonstration and explanation of the A in Ajax. [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>
