<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Ajax vs. Flex: making the choice</title>
	<atom:link href="http://ricardo.getgears.com/2009/11/16/ajax-vs-flex-making-the-choice/feed/" rel="self" type="application/rss+xml" />
	<link>http://ricardo.getgears.com/2009/11/16/ajax-vs-flex-making-the-choice/</link>
	<description>tail -f /var/log/ricardo</description>
	<lastBuildDate>Fri, 30 Jul 2010 19:49:13 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Saverio</title>
		<link>http://ricardo.getgears.com/2009/11/16/ajax-vs-flex-making-the-choice/#comment-24</link>
		<dc:creator>Saverio</dc:creator>
		<pubDate>Mon, 01 Mar 2010 12:52:23 +0000</pubDate>
		<guid isPermaLink="false">http://ricardo.getgears.com/?p=27#comment-24</guid>
		<description>A little late, but anyway...

On advantages of AMF serialization over other BINARY serializations:
1) integer are compressed (small positive ints can use just one byte). At large, this alone offsets the header stuff.
2) object references, if an object appears more than one time in a graph, then it must be described only once, then it&#039;s referenced. (Strings too!)

On advantages of AMF serialization (and most other &quot;binary&quot; serializations) over &quot;descriptive&quot; serializations:
1) The client can be instructed to deserialize properties without giving them a name.  This is possible only when both sides agree on a specific way order to serialize things. In flash there is sort-of alphabetic order.
2) There is space for metadata, allowing for typed arrays, subclass deserialization etc (XML has too, but then you need another piece of data, an XSD, and then synchronize both parts&#039; classes to the XSD)</description>
		<content:encoded><![CDATA[<p>A little late, but anyway&#8230;</p>
<p>On advantages of AMF serialization over other BINARY serializations:<br />
1) integer are compressed (small positive ints can use just one byte). At large, this alone offsets the header stuff.<br />
2) object references, if an object appears more than one time in a graph, then it must be described only once, then it&#8217;s referenced. (Strings too!)</p>
<p>On advantages of AMF serialization (and most other &#8220;binary&#8221; serializations) over &#8220;descriptive&#8221; serializations:<br />
1) The client can be instructed to deserialize properties without giving them a name.  This is possible only when both sides agree on a specific way order to serialize things. In flash there is sort-of alphabetic order.<br />
2) There is space for metadata, allowing for typed arrays, subclass deserialization etc (XML has too, but then you need another piece of data, an XSD, and then synchronize both parts&#8217; classes to the XSD)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Xavi Colomer</title>
		<link>http://ricardo.getgears.com/2009/11/16/ajax-vs-flex-making-the-choice/#comment-9</link>
		<dc:creator>Xavi Colomer</dc:creator>
		<pubDate>Mon, 16 Nov 2009 13:40:24 +0000</pubDate>
		<guid isPermaLink="false">http://ricardo.getgears.com/?p=27#comment-9</guid>
		<description>Interesting point of view ( both )

@ycneo ...client-side ActionScript applications... not really true, AMF3 specification has been opened and it&#039;s applications are traspassing the Actionscript frontier ( see http://github.com/nesium/cocoa-amf, is an example of using AMF in a non Actionscript environment ;) ) 

On the other hand @ricardo as you may know I&#039;m not a really backend guy, but ...When dealing with a high number of of concurrent users, translating on a really high of concurrent AMF requests... Well one of the main advantages of using AMF is the fact that you are recieving actually objects ( this occurs on Java Backends and I think it&#039;s coming on python ), which implies no deserialization on the client side. In addition to this, if we have a Backend which is able to cache the requests, this number of translation should decrease significally 

I found this while answering the comments http://www.5etdemi.com/blog/archives/2006/12/clearing-the-fud-on-amfphps-speed-versus-json-and-xml/
 is a 2006 post, but I think it&#039;s still good information</description>
		<content:encoded><![CDATA[<p>Interesting point of view ( both )</p>
<p>@ycneo &#8230;client-side ActionScript applications&#8230; not really true, AMF3 specification has been opened and it&#8217;s applications are traspassing the Actionscript frontier ( see <a href="http://github.com/nesium/cocoa-amf" rel="nofollow">http://github.com/nesium/cocoa-amf</a>, is an example of using AMF in a non Actionscript environment <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ) </p>
<p>On the other hand @ricardo as you may know I&#8217;m not a really backend guy, but &#8230;When dealing with a high number of of concurrent users, translating on a really high of concurrent AMF requests&#8230; Well one of the main advantages of using AMF is the fact that you are recieving actually objects ( this occurs on Java Backends and I think it&#8217;s coming on python ), which implies no deserialization on the client side. In addition to this, if we have a Backend which is able to cache the requests, this number of translation should decrease significally </p>
<p>I found this while answering the comments <a href="http://www.5etdemi.com/blog/archives/2006/12/clearing-the-fud-on-amfphps-speed-versus-json-and-xml/" rel="nofollow">http://www.5etdemi.com/blog/archives/2006/12/clearing-the-fud-on-amfphps-speed-versus-json-and-xml/</a><br />
 is a 2006 post, but I think it&#8217;s still good information</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ygneo</title>
		<link>http://ricardo.getgears.com/2009/11/16/ajax-vs-flex-making-the-choice/#comment-8</link>
		<dc:creator>ygneo</dc:creator>
		<pubDate>Mon, 16 Nov 2009 13:13:40 +0000</pubDate>
		<guid isPermaLink="false">http://ricardo.getgears.com/?p=27#comment-8</guid>
		<description>Actually yes, as usually happens, it all depends on the kind of problem you&#039;re dealing with. As specification of AMF3 says:

&quot;Action Message Format (AMF) is a compact binary format that is used to serialize
ActionScript object graphs.&quot; (http://opensource.adobe.com/wiki/download/attachments/1114283/amf3_spec_05_05_08.pdf)

So they&#039;re thinking in the generic case, as they intend to provide a transfer format between server-side applications and client-side ActionScript applications, putting focus in easy-of-use (and maybe perfomance) in receiving objects in the ActionScript side.

For similar purposes, but with double-blind approach (i mean, any language in both sides), plain formats like JSON and XML are better, since they can be generated an readed without any extra layer to deal with and without data compression/uncompression needed.

So AMF only makes seems to exchange data with ActionScript applications, and is in that context where get the best of itself. No sense to use it in other enviroments.</description>
		<content:encoded><![CDATA[<p>Actually yes, as usually happens, it all depends on the kind of problem you&#8217;re dealing with. As specification of AMF3 says:</p>
<p>&#8220;Action Message Format (AMF) is a compact binary format that is used to serialize<br />
ActionScript object graphs.&#8221; (<a href="http://opensource.adobe.com/wiki/download/attachments/1114283/amf3_spec_05_05_08.pdf" rel="nofollow">http://opensource.adobe.com/wiki/download/attachments/1114283/amf3_spec_05_05_08.pdf</a>)</p>
<p>So they&#8217;re thinking in the generic case, as they intend to provide a transfer format between server-side applications and client-side ActionScript applications, putting focus in easy-of-use (and maybe perfomance) in receiving objects in the ActionScript side.</p>
<p>For similar purposes, but with double-blind approach (i mean, any language in both sides), plain formats like JSON and XML are better, since they can be generated an readed without any extra layer to deal with and without data compression/uncompression needed.</p>
<p>So AMF only makes seems to exchange data with ActionScript applications, and is in that context where get the best of itself. No sense to use it in other enviroments.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ricardo</title>
		<link>http://ricardo.getgears.com/2009/11/16/ajax-vs-flex-making-the-choice/#comment-7</link>
		<dc:creator>ricardo</dc:creator>
		<pubDate>Mon, 16 Nov 2009 12:46:07 +0000</pubDate>
		<guid isPermaLink="false">http://ricardo.getgears.com/?p=27#comment-7</guid>
		<description>Well, as with any other generic compression algorithm, depending on the data size, you always have profit at some point.

That said, maybe on bigger requests/responses AMF takes the prize in making the transfer smaller. I noticed that James did is benchmark transferring 5000 objects, knowing that alone, seems like a huge amount of data to be transferred to clients. When dealing with a high number of of concurrent users, translating on a really high of concurrent AMF requests, I would keep the services as simple as possible, delivering the least possible amount of data. This is where I believe the compression doesn&#039;t help much, it will very likely actually make it bigger, processing longer and, as I wrote above, harder (or impossible) to reply from cache previous to decoding.

But then again this all depends on the application we are talking about. I believe that if your application actually needs to transfer that huge amount of data to every single client, then maybe you have other priorities then communication performance. Only taking a wild guess here anyway.</description>
		<content:encoded><![CDATA[<p>Well, as with any other generic compression algorithm, depending on the data size, you always have profit at some point.</p>
<p>That said, maybe on bigger requests/responses AMF takes the prize in making the transfer smaller. I noticed that James did is benchmark transferring 5000 objects, knowing that alone, seems like a huge amount of data to be transferred to clients. When dealing with a high number of of concurrent users, translating on a really high of concurrent AMF requests, I would keep the services as simple as possible, delivering the least possible amount of data. This is where I believe the compression doesn&#8217;t help much, it will very likely actually make it bigger, processing longer and, as I wrote above, harder (or impossible) to reply from cache previous to decoding.</p>
<p>But then again this all depends on the application we are talking about. I believe that if your application actually needs to transfer that huge amount of data to every single client, then maybe you have other priorities then communication performance. Only taking a wild guess here anyway.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Xavi Colomer</title>
		<link>http://ricardo.getgears.com/2009/11/16/ajax-vs-flex-making-the-choice/#comment-6</link>
		<dc:creator>Xavi Colomer</dc:creator>
		<pubDate>Mon, 16 Nov 2009 12:16:58 +0000</pubDate>
		<guid isPermaLink="false">http://ricardo.getgears.com/?p=27#comment-6</guid>
		<description>( right now )</description>
		<content:encoded><![CDATA[<p>( right now )</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Xavi Colomer</title>
		<link>http://ricardo.getgears.com/2009/11/16/ajax-vs-flex-making-the-choice/#comment-5</link>
		<dc:creator>Xavi Colomer</dc:creator>
		<pubDate>Mon, 16 Nov 2009 12:16:04 +0000</pubDate>
		<guid isPermaLink="false">http://ricardo.getgears.com/?p=27#comment-5</guid>
		<description>...On AMF itself, I never quite understand for the data transferred to come “encrypted” in a weird format, it certainly didn’t made it feel safer or smaller....

Well AMF really reduces the size of a message notably, may be you should update that

http://www.jamesward.com/census/

James Ward did create this test, seems not be working right know but was a very interesting comparison tool

Great post anyway</description>
		<content:encoded><![CDATA[<p>&#8230;On AMF itself, I never quite understand for the data transferred to come “encrypted” in a weird format, it certainly didn’t made it feel safer or smaller&#8230;.</p>
<p>Well AMF really reduces the size of a message notably, may be you should update that</p>
<p><a href="http://www.jamesward.com/census/" rel="nofollow">http://www.jamesward.com/census/</a></p>
<p>James Ward did create this test, seems not be working right know but was a very interesting comparison tool</p>
<p>Great post anyway</p>
]]></content:encoded>
	</item>
</channel>
</rss>
