<?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: The Unbearable Slowness of Javascript Widgets</title>
	<atom:link href="http://www.feld.com/wp/archives/2007/08/the-unbearable-slowness-of-javascript-widgets.html/feed" rel="self" type="application/rss+xml" />
	<link>http://www.feld.com/wp/archives/2007/08/the-unbearable-slowness-of-javascript-widgets.html</link>
	<description></description>
	<lastBuildDate>Tue, 14 Feb 2012 01:23:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Alex Iskold</title>
		<link>http://www.feld.com/wp/archives/2007/08/the-unbearable-slowness-of-javascript-widgets.html/comment-page-1#comment-5467</link>
		<dc:creator>Alex Iskold</dc:creator>
		<pubDate>Sun, 14 Oct 2007 15:28:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.feld.com/wp/?p=1780#comment-5467</guid>
		<description>@ Omer.

Yes, you can do that, but that, but often, widgets do not have access to body onload, since they are inserted via  tag. Essentially then you need to do what you are describing in the widget code, have the first piece which is tiny and then does deffered called.

Otherwise you&#039;d need to ask the user to paste in a chunk of JavaScript which is error-prone.
</description>
		<content:encoded><![CDATA[<p>@ Omer.</p>
<p>Yes, you can do that, but that, but often, widgets do not have access to body onload, since they are inserted via  tag. Essentially then you need to do what you are describing in the widget code, have the first piece which is tiny and then does deffered called.</p>
<p>Otherwise you&#8217;d need to ask the user to paste in a chunk of JavaScript which is error-prone.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Omer Iqbal</title>
		<link>http://www.feld.com/wp/archives/2007/08/the-unbearable-slowness-of-javascript-widgets.html/comment-page-1#comment-5466</link>
		<dc:creator>Omer Iqbal</dc:creator>
		<pubDate>Sun, 14 Oct 2007 03:51:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.feld.com/wp/?p=1780#comment-5466</guid>
		<description>So why can&#039;t we do the onload in body of an html page, and the change the innerHTML of a div to point to an external widget? Wouldn&#039;t that solve the problem?
</description>
		<content:encoded><![CDATA[<p>So why can&#8217;t we do the onload in body of an html page, and the change the innerHTML of a div to point to an external widget? Wouldn&#8217;t that solve the problem?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt</title>
		<link>http://www.feld.com/wp/archives/2007/08/the-unbearable-slowness-of-javascript-widgets.html/comment-page-1#comment-5465</link>
		<dc:creator>Matt</dc:creator>
		<pubDate>Fri, 17 Aug 2007 05:43:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.feld.com/wp/?p=1780#comment-5465</guid>
		<description>I think his description of the problem is good, but the suggestions are wrong at best and harmful at worst. In particular:

1. Worse than not working, the defer attribute can cause IE to crash.

3. Non-canonical URLs for your scripts is only going to hurt cachability and load balancing through different subdomains is a Bad Idea. If you can&#039;t afford a commodity box to run something like Pound to do real load balancing, at lead do round-robin at the DNS level on the same domain.

That will distribute load, but since any modern web server can serve thousands of static requests per second your real concern should be availability, which DNS round robin doesn&#039;t address very well. Consider a CDN like Akamai or Panther, it&#039;s worth the cost. (Amazon S3 is not a CDN.)

4. Even the smallest standard libraries are 5-15x the size of code you should need for your widget. I might consider something like a component of YUI.

For a sophisticated look at these issues &lt;a href=&quot;http://www.mikeindustries.com/blog/archive/2007/06/widget-deployment-with-wedje.php&quot; rel=&quot;nofollow&quot;&gt;check out Mike Davidson&#039;s writing and script&lt;/a&gt;. Also &lt;a href=&quot;http://developer.yahoo.com/performance/&quot; rel=&quot;nofollow&quot;&gt;Yahoo&#039;s performance information&lt;/a&gt; is invaluable.
</description>
		<content:encoded><![CDATA[<p>I think his description of the problem is good, but the suggestions are wrong at best and harmful at worst. In particular:</p>
<p>1. Worse than not working, the defer attribute can cause IE to crash.</p>
<p>3. Non-canonical URLs for your scripts is only going to hurt cachability and load balancing through different subdomains is a Bad Idea. If you can&#8217;t afford a commodity box to run something like Pound to do real load balancing, at lead do round-robin at the DNS level on the same domain.</p>
<p>That will distribute load, but since any modern web server can serve thousands of static requests per second your real concern should be availability, which DNS round robin doesn&#8217;t address very well. Consider a CDN like Akamai or Panther, it&#8217;s worth the cost. (Amazon S3 is not a CDN.)</p>
<p>4. Even the smallest standard libraries are 5-15x the size of code you should need for your widget. I might consider something like a component of YUI.</p>
<p>For a sophisticated look at these issues <a href="http://www.mikeindustries.com/blog/archive/2007/06/widget-deployment-with-wedje.php" rel="nofollow">check out Mike Davidson&#8217;s writing and script</a>. Also <a href="http://developer.yahoo.com/performance/" rel="nofollow">Yahoo&#8217;s performance information</a> is invaluable.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Duey</title>
		<link>http://www.feld.com/wp/archives/2007/08/the-unbearable-slowness-of-javascript-widgets.html/comment-page-1#comment-5464</link>
		<dc:creator>David Duey</dc:creator>
		<pubDate>Thu, 16 Aug 2007 14:08:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.feld.com/wp/?p=1780#comment-5464</guid>
		<description>I don</description>
		<content:encoded><![CDATA[<p>I don</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave</title>
		<link>http://www.feld.com/wp/archives/2007/08/the-unbearable-slowness-of-javascript-widgets.html/comment-page-1#comment-5463</link>
		<dc:creator>Dave</dc:creator>
		<pubDate>Thu, 16 Aug 2007 13:52:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.feld.com/wp/?p=1780#comment-5463</guid>
		<description>One point missing in this conversation is that all these widgets quickly reach the attentional/clutter threshold for the user as well.  Your blog page, for example, would be a lot more effective if each of the widget features (e.g., Blogs I Read, Categories, Lijit Search, etc.) were an outline/foldup feature rather than being listed out.  As I look at it I see that you&#039;ve actually removed some useless stuff that used to be there, like the del.icio.us word soup thing.

Note also that clutter reduces the effectiveness of ads on blogs!
</description>
		<content:encoded><![CDATA[<p>One point missing in this conversation is that all these widgets quickly reach the attentional/clutter threshold for the user as well.  Your blog page, for example, would be a lot more effective if each of the widget features (e.g., Blogs I Read, Categories, Lijit Search, etc.) were an outline/foldup feature rather than being listed out.  As I look at it I see that you&#8217;ve actually removed some useless stuff that used to be there, like the del.icio.us word soup thing.</p>
<p>Note also that clutter reduces the effectiveness of ads on blogs!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex Iskold</title>
		<link>http://www.feld.com/wp/archives/2007/08/the-unbearable-slowness-of-javascript-widgets.html/comment-page-1#comment-5462</link>
		<dc:creator>Alex Iskold</dc:creator>
		<pubDate>Thu, 16 Aug 2007 06:00:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.feld.com/wp/?p=1780#comment-5462</guid>
		<description>Marcelo,

The reason for standard libraries is so that people who really know what they are doing with JS write them once and the rest of the crowd can reuse them.

Same reason really why any language or any software project has libraries.

Alex
</description>
		<content:encoded><![CDATA[<p>Marcelo,</p>
<p>The reason for standard libraries is so that people who really know what they are doing with JS write them once and the rest of the crowd can reuse them.</p>
<p>Same reason really why any language or any software project has libraries.</p>
<p>Alex</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marcelo Calbucci</title>
		<link>http://www.feld.com/wp/archives/2007/08/the-unbearable-slowness-of-javascript-widgets.html/comment-page-1#comment-5461</link>
		<dc:creator>Marcelo Calbucci</dc:creator>
		<pubDate>Wed, 15 Aug 2007 23:35:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.feld.com/wp/?p=1780#comment-5461</guid>
		<description>Alex is clearly very smart. I just don&#039;t get #4. Why Standard Libraries would make it faster?

I have a great post about how to make pages fast, and has a bit of reference to some of those...

&lt;a href=&quot;http://marcelo.sampasite.com/brave-tech-world/14-Tips-to-Speed-Up-Your-Web-Pag.htm&quot; rel=&quot;nofollow&quot;&gt;http://marcelo.sampasite.com/brave-tech-world/14-Tips-to-Speed-Up-Your-Web-Pag.htm&lt;/a&gt;
</description>
		<content:encoded><![CDATA[<p>Alex is clearly very smart. I just don&#8217;t get #4. Why Standard Libraries would make it faster?</p>
<p>I have a great post about how to make pages fast, and has a bit of reference to some of those&#8230;</p>
<p><a href="http://marcelo.sampasite.com/brave-tech-world/14-Tips-to-Speed-Up-Your-Web-Pag.htm" rel="nofollow">http://marcelo.sampasite.com/brave-tech-world/14-Tips-to-Speed-Up-Your-Web-Pag.htm</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Martin May</title>
		<link>http://www.feld.com/wp/archives/2007/08/the-unbearable-slowness-of-javascript-widgets.html/comment-page-1#comment-5460</link>
		<dc:creator>Martin May</dc:creator>
		<pubDate>Wed, 15 Aug 2007 21:09:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.feld.com/wp/?p=1780#comment-5460</guid>
		<description>What&#039;s even more unfortunate for people like me, who like to browse with 50+ tabs open, is that some browsers (cough...Firefox...cough) execute all the JavaScript (across tabs) in a single thread.

If the JavaScript for one tab is slow, the browser becomes unresponsive. Harry Sufehmi has a good summary of this problem:

&quot;SpiderMonkey, the Javascript engine used by Firefox, sucks. Really sucks.

Firefox uses SpiderMonkey for itself. Therefore, if a website is heavy on Javascript, then Firefox itself will be blocked while it</description>
		<content:encoded><![CDATA[<p>What&#8217;s even more unfortunate for people like me, who like to browse with 50+ tabs open, is that some browsers (cough&#8230;Firefox&#8230;cough) execute all the JavaScript (across tabs) in a single thread.</p>
<p>If the JavaScript for one tab is slow, the browser becomes unresponsive. Harry Sufehmi has a good summary of this problem:</p>
<p>&#8220;SpiderMonkey, the Javascript engine used by Firefox, sucks. Really sucks.</p>
<p>Firefox uses SpiderMonkey for itself. Therefore, if a website is heavy on Javascript, then Firefox itself will be blocked while it</p>
]]></content:encoded>
	</item>
</channel>
</rss>
<!-- WP Super Cache 0.8.9.1 -->
