<?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: Bloated Ajax Applications Due to Libraries</title>
	<atom:link href="http://alexander.kirk.at/2005/10/03/bloated-ajax-applications-due-to-libraries/feed/" rel="self" type="application/rss+xml" />
	<link>http://alexander.kirk.at/2005/10/03/bloated-ajax-applications-due-to-libraries/</link>
	<description></description>
	<lastBuildDate>Tue, 23 Feb 2010 01:32:11 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
	<item>
		<title>By: Keenan Brock</title>
		<link>http://alexander.kirk.at/2005/10/03/bloated-ajax-applications-due-to-libraries/comment-page-1/#comment-144</link>
		<dc:creator>Keenan Brock</dc:creator>
		<pubDate>Thu, 02 Feb 2006 18:51:56 +0000</pubDate>
		<guid isPermaLink="false">http://alexander.kirk.at/?p=20#comment-144</guid>
		<description>http://moofx.mad4milk.net/ seems to have a similar style. They cut down their stuff big time. They also stripped down prototype.</description>
		<content:encoded><![CDATA[<p><a &nbsp;&nbsp; href="http://moofx.mad4milk.net/"&nbsp;&nbsp; rel="nofollow">http://moofx.mad4milk.net/</a> seems to have a similar style. They cut down their stuff big time. They also stripped down prototype.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gregory</title>
		<link>http://alexander.kirk.at/2005/10/03/bloated-ajax-applications-due-to-libraries/comment-page-1/#comment-51</link>
		<dc:creator>Gregory</dc:creator>
		<pubDate>Mon, 31 Oct 2005 19:32:19 +0000</pubDate>
		<guid isPermaLink="false">http://alexander.kirk.at/?p=20#comment-51</guid>
		<description>Hey, glad you like SACK, and yes: one advantage of it is that it is small, but as discussed here that is sometimes not an issue. It certainly isn&#039;t an issue in really complex applications, because the overall code impact is probably small. However, as mentioned above, really large libraries can slow a browser down. 

The main reason I wrote SACK however was because I wanted something that allowed me (and others) to use AJAX quickly, simpley, and without a lot of code that wasn&#039;t needed for simple communication. Basically.. simplicity. 

As said - it&#039;s not quite the same as something like prototype (or Dojo!), but for many people that want to create AJAX apps it is nice, neat, and simple enough to satisfy their needs.</description>
		<content:encoded><![CDATA[<p>Hey, glad you like SACK, and yes: one advantage of it is that it is small, but as discussed here that is sometimes not an issue. It certainly isn't an issue in really complex applications, because the overall code impact is probably small. However, as mentioned above, really large libraries can slow a browser down. </p>
<p>The main reason I wrote SACK however was because I wanted something that allowed me (and others) to use AJAX quickly, simpley, and without a lot of code that wasn't needed for simple communication. Basically.. simplicity. </p>
<p>As said - it's not quite the same as something like prototype (or Dojo!), but for many people that want to create AJAX apps it is nice, neat, and simple enough to satisfy their needs.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Erik Arvidsson</title>
		<link>http://alexander.kirk.at/2005/10/03/bloated-ajax-applications-due-to-libraries/comment-page-1/#comment-19</link>
		<dc:creator>Erik Arvidsson</dc:creator>
		<pubDate>Mon, 10 Oct 2005 04:50:38 +0000</pubDate>
		<guid isPermaLink="false">http://alexander.kirk.at/?p=20#comment-19</guid>
		<description>I second everything Alex just said. I just wanted to add that the download time (and parsing) is often insignificant to the time spent manipulating the DOM. As a reminder I point you to Peter-Paul&#039;s &quot;Benchmark - W3C DOM vs. innerHTML&quot; article at http://www.quirksmode.org/dom/innerhtml.html (and this just tests very basic DOM manipulations)</description>
		<content:encoded><![CDATA[<p>I second everything Alex just said. I just wanted to add that the download time (and parsing) is often insignificant to the time spent manipulating the DOM. As a reminder I point you to Peter-Paul's "Benchmark - W3C DOM vs. innerHTML" article at <a &nbsp;&nbsp; href="http://www.quirksmode.org/dom/innerhtml.html"&nbsp;&nbsp; rel="nofollow">http://www.quirksmode.org/dom/innerhtml.html</a> (and this just tests very basic DOM manipulations)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex Russell</title>
		<link>http://alexander.kirk.at/2005/10/03/bloated-ajax-applications-due-to-libraries/comment-page-1/#comment-14</link>
		<dc:creator>Alex Russell</dc:creator>
		<pubDate>Thu, 06 Oct 2005 20:31:28 +0000</pubDate>
		<guid isPermaLink="false">http://alexander.kirk.at/?p=20#comment-14</guid>
		<description>So I&#039;m incredibly biased in this discussion (I work on Dojo), but good tools help a lot.

Firstly, a &quot;compressor&quot; (like the one we build Dojo with) reduces the size of the code significantly. Running the variant of Prototype included in the scriptaculous 1.5 beta through the Dojo compressor took 33% off the file size without changing the file&#039;s semantics at all.

Next, a good build system will put all your scripts into a single file. Say what you will about file size, but the limiting factor in perceived performance today is network latency combined with the synchronous nature of browser rendering engines, not network throughput. The less you have to reach-out-and-touch the network (even for a 304), the better off you are. On top of that, something like Dojo or JSAN allow you to grab just what you need, reducing the overall size of a library based on your usage of it. A capable package system even lets you do this without changing the way you develop and without cutting you off from the rest of the available APIs, should you need them.

Lastly, there&#039;s much to be said for gzip encoding on the wire and a good HTTP server configurationn. The best kind of data is the kind you don&#039;t have to (re)send, and the next best thing is the gzipped kind.

So yes, large libraries are a problem, but developers need some of the capabilities they provide. The best libraries, though, should make you only pay for what you use. Hopefully Dojo and JSAN will make this the defacto way of doing things.

Regards</description>
		<content:encoded><![CDATA[<p>So I'm incredibly biased in this discussion (I work on Dojo), but good tools help a lot.</p>
<p>Firstly, a "compressor" (like the one we build Dojo with) reduces the size of the code significantly. Running the variant of Prototype included in the scriptaculous 1.5 beta through the Dojo compressor took 33% off the file size without changing the file's semantics at all.</p>
<p>Next, a good build system will put all your scripts into a single file. Say what you will about file size, but the limiting factor in perceived performance today is network latency combined with the synchronous nature of browser rendering engines, not network throughput. The less you have to reach-out-and-touch the network (even for a 304), the better off you are. On top of that, something like Dojo or JSAN allow you to grab just what you need, reducing the overall size of a library based on your usage of it. A capable package system even lets you do this without changing the way you develop and without cutting you off from the rest of the available APIs, should you need them.</p>
<p>Lastly, there's much to be said for gzip encoding on the wire and a good HTTP server configurationn. The best kind of data is the kind you don't have to (re)send, and the next best thing is the gzipped kind.</p>
<p>So yes, large libraries are a problem, but developers need some of the capabilities they provide. The best libraries, though, should make you only pay for what you use. Hopefully Dojo and JSAN will make this the defacto way of doing things.</p>
<p>Regards</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ryan</title>
		<link>http://alexander.kirk.at/2005/10/03/bloated-ajax-applications-due-to-libraries/comment-page-1/#comment-11</link>
		<dc:creator>Ryan</dc:creator>
		<pubDate>Thu, 06 Oct 2005 15:12:25 +0000</pubDate>
		<guid isPermaLink="false">http://alexander.kirk.at/?p=20#comment-11</guid>
		<description>Downloading issues aside, all Javascript gets loaded and parsed by the scripting engine, regardless of whether or not any of the code inside those scripts gets called.  For some people out there, parsing 100K of script can have an impact on the responsiveness of the browser, and thus the responsiveness of your website.

As to the argument of technology for technology&#039;s sake (ala Flash), we&#039;re geeks...that&#039;s what we do.</description>
		<content:encoded><![CDATA[<p>Downloading issues aside, all Javascript gets loaded and parsed by the scripting engine, regardless of whether or not any of the code inside those scripts gets called.&nbsp;&nbsp;For some people out there, parsing 100K of script can have an impact on the responsiveness of the browser, and thus the responsiveness of your website.</p>
<p>As to the argument of technology for technology's sake (ala Flash), we're geeks...that's what we do.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: keittl</title>
		<link>http://alexander.kirk.at/2005/10/03/bloated-ajax-applications-due-to-libraries/comment-page-1/#comment-9</link>
		<dc:creator>keittl</dc:creator>
		<pubDate>Thu, 06 Oct 2005 13:12:06 +0000</pubDate>
		<guid isPermaLink="false">http://alexander.kirk.at/?p=20#comment-9</guid>
		<description>I think library size *is* an issue to some degree. Of course it varies with the situation.

True that bandwidth is increasing and so. But what is also increasing is the amount of stuff we pump thru these bandwidth pipes.  I think *percieved* speed stays roughly constant. 

A good analogy would be the hard disk. There was a time when 20MB was big. We were able to fill them at the time. Now a few hundred GB is big (order of 10^3). We are finding ways to fill these hundreds of GBs. Percieved storage space stays roughly constant. 

One of the ideas that ajax tries to bring us is to not waste so much user&#039;s time with page requests. This is why I think it is important not to have bloated ajax apps.

Once the js library is loaded, it doesn&#039;t need to be loaded until a new page refresh is done. But bloating is not only about download time. It&#039;s also about memory consumtion and responsiveness. 

I hope we don&#039;t see too much ajax being used simply for eye-candy (animations and so) just for the sake of it. That happened with flash.</description>
		<content:encoded><![CDATA[<p>I think library size *is* an issue to some degree. Of course it varies with the situation.</p>
<p>True that bandwidth is increasing and so. But what is also increasing is the amount of stuff we pump thru these bandwidth pipes.&nbsp;&nbsp;I think *percieved* speed stays roughly constant. </p>
<p>A good analogy would be the hard disk. There was a time when 20MB was big. We were able to fill them at the time. Now a few hundred GB is big (order of 10^3). We are finding ways to fill these hundreds of GBs. Percieved storage space stays roughly constant. </p>
<p>One of the ideas that ajax tries to bring us is to not waste so much user's time with page requests. This is why I think it is important not to have bloated ajax apps.</p>
<p>Once the js library is loaded, it doesn't need to be loaded until a new page refresh is done. But bloating is not only about download time. It's also about memory consumtion and responsiveness. </p>
<p>I hope we don't see too much ajax being used simply for eye-candy (animations and so) just for the sake of it. That happened with flash.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alexander Kirk</title>
		<link>http://alexander.kirk.at/2005/10/03/bloated-ajax-applications-due-to-libraries/comment-page-1/#comment-8</link>
		<dc:creator>Alexander Kirk</dc:creator>
		<pubDate>Thu, 06 Oct 2005 10:58:48 +0000</pubDate>
		<guid isPermaLink="false">http://alexander.kirk.at/?p=20#comment-8</guid>
		<description>I agree that broadband and HTTP compression allows larger amounts of data be transfered to the user in less time. But it does not become irrelevant. I just wanted to show how fast a hundred kilo bytes can come together without any functionality added.

Additionally I&#039;m not so sure how the size of the javascript increases in memory. This still needs some testing.

I&#039;m just trying to alert developers that they should overthink the way they structure their application. Don&#039;t load too much at once but try to do this over time. Try to present the user the initial view as quickly as possible.</description>
		<content:encoded><![CDATA[<p>I agree that broadband and HTTP compression allows larger amounts of data be transfered to the user in less time. But it does not become irrelevant. I just wanted to show how fast a hundred kilo bytes can come together without any functionality added.</p>
<p>Additionally I'm not so sure how the size of the javascript increases in memory. This still needs some testing.</p>
<p>I'm just trying to alert developers that they should overthink the way they structure their application. Don't load too much at once but try to do this over time. Try to present the user the initial view as quickly as possible.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex</title>
		<link>http://alexander.kirk.at/2005/10/03/bloated-ajax-applications-due-to-libraries/comment-page-1/#comment-7</link>
		<dc:creator>Alex</dc:creator>
		<pubDate>Thu, 06 Oct 2005 10:47:43 +0000</pubDate>
		<guid isPermaLink="false">http://alexander.kirk.at/?p=20#comment-7</guid>
		<description>I disagree.  I think the download size of a library is becomming increasingly irrelevant due to 1) broadband and 2) HTTP compression.  We have an AJAX app delivered to customers over the internet.  Uncompressed, the JS libraries are over 200k.  Even when downloading over a modem, its pretty quick because that 200k gets compressed down to about 25k.  And then once on the browser, its cached.  Users increasingly want functionality and that requires code, and sometimes lots of it.  As broadband usage increases, the winners will not be the sites with low code bloat but rather the ones that provide as much functionality to the user as possible.

Also, keep in mind it is a bit unfair to compare tw-sack.js, which does one thing and compare it to a group of files that provide quite a lot more functionality.</description>
		<content:encoded><![CDATA[<p>I disagree.&nbsp;&nbsp;I think the download size of a library is becomming increasingly irrelevant due to 1) broadband and 2) HTTP compression.&nbsp;&nbsp;We have an AJAX app delivered to customers over the internet.&nbsp;&nbsp;Uncompressed, the JS libraries are over 200k.&nbsp;&nbsp;Even when downloading over a modem, its pretty quick because that 200k gets compressed down to about 25k.&nbsp;&nbsp;And then once on the browser, its cached.&nbsp;&nbsp;Users increasingly want functionality and that requires code, and sometimes lots of it.&nbsp;&nbsp;As broadband usage increases, the winners will not be the sites with low code bloat but rather the ones that provide as much functionality to the user as possible.</p>
<p>Also, keep in mind it is a bit unfair to compare tw-sack.js, which does one thing and compare it to a group of files that provide quite a lot more functionality.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
