<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.3.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>
<channel>
	<title>Comments for SitePen Blog</title>
	<link>http://www.sitepen.com/blog</link>
	<description>SitePen Services and notes about Dojo, DWR, Cometd, JavaScript, and the Web</description>
	<pubDate>Tue, 13 May 2008 13:13:53 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
		<item>
		<title>Comment on Dojo-Mini: Optimization Tricks with the Dojo Toolkit by Dylan</title>
		<link>http://www.sitepen.com/blog/2008/04/02/dojo-mini-optimization-tricks-with-the-dojo-toolkit/#comment-87245</link>
		<dc:creator>Dylan</dc:creator>
		<pubDate>Tue, 13 May 2008 13:12:44 +0000</pubDate>
		<guid>http://www.sitepen.com/blog/2008/04/02/dojo-mini-optimization-tricks-with-the-dojo-toolkit/#comment-87245</guid>
		<description>@wiwi: We used Apple’s Numbers app, part of iWork 2008.</description>
		<content:encoded><![CDATA[<p>@wiwi: We used Apple’s Numbers app, part of iWork 2008.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on String Performance: an Analysis by Jeroen Ruigrok van der Werven</title>
		<link>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87244</link>
		<dc:creator>Jeroen Ruigrok van der Werven</dc:creator>
		<pubDate>Tue, 13 May 2008 09:35:16 +0000</pubDate>
		<guid>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87244</guid>
		<description>@Carl: pretty looking, yes, but distorting the facts as well. The 3d appearance of the top of the bars make it hard to determine whether we should read the front or the back of the bar in relation to the lines.

Interesting article Tom, but the charts could use less eye-candy and more fact representation. Right now it would be classified as chartjunk.</description>
		<content:encoded><![CDATA[<p>@Carl: pretty looking, yes, but distorting the facts as well. The 3d appearance of the top of the bars make it hard to determine whether we should read the front or the back of the bar in relation to the lines.</p>
<p>Interesting article Tom, but the charts could use less eye-candy and more fact representation. Right now it would be classified as chartjunk.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Dojo-Mini: Optimization Tricks with the Dojo Toolkit by wiwi</title>
		<link>http://www.sitepen.com/blog/2008/04/02/dojo-mini-optimization-tricks-with-the-dojo-toolkit/#comment-87243</link>
		<dc:creator>wiwi</dc:creator>
		<pubDate>Tue, 13 May 2008 06:48:02 +0000</pubDate>
		<guid>http://www.sitepen.com/blog/2008/04/02/dojo-mini-optimization-tricks-with-the-dojo-toolkit/#comment-87243</guid>
		<description>Really like the fancy diagram, can I know how you draw that? thanks!</description>
		<content:encoded><![CDATA[<p>Really like the fancy diagram, can I know how you draw that? thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on The Key to Quick Mobile App Navigation by Jason Cline</title>
		<link>http://www.sitepen.com/blog/2008/05/12/the-key-to-quick-mobile-app-navigation/#comment-87242</link>
		<dc:creator>Jason Cline</dc:creator>
		<pubDate>Tue, 13 May 2008 05:18:16 +0000</pubDate>
		<guid>http://www.sitepen.com/blog/2008/05/12/the-key-to-quick-mobile-app-navigation/#comment-87242</guid>
		<description>Yes, WAP/WML does support the accesskey attribute on links.
Phone call support is also supported:
http://developer.openwave.com/dvl/support/faqs/faq_wml_programming.htm#11

Jason</description>
		<content:encoded><![CDATA[<p>Yes, WAP/WML does support the accesskey attribute on links.<br />
Phone call support is also supported:<br />
<a href="http://developer.openwave.com/dvl/support/faqs/faq_wml_programming.htm#11" rel="nofollow">http://developer.openwave.com/dvl/support/faqs/faq_wml_programming.htm#11</a></p>
<p>Jason</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on String Performance: an Analysis by kzyp</title>
		<link>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87239</link>
		<dc:creator>kzyp</dc:creator>
		<pubDate>Mon, 12 May 2008 16:33:45 +0000</pubDate>
		<guid>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87239</guid>
		<description>Performance with arguments deserves a better explanation:
FF performs optimizations where it will not actually build an "arguments" array object unless there is actually a need for to use the "arguments" object with dynamic indexes. When you use arguments[1], FF can optimize that to directly pull the value from the call parameters, rather than creating an arguments object and doing a GetValue on it. Once FF creates the arguments object, it is just as fast as a normal array. When you use dynamic indexes with the arguments object, it is not that FF has a particular performance problem with that, it is simply that turns off an optimization (not creating an unnecessary arguments object), and so you see a performance hit in comparison to the optimized code that doesn't use the arguments with dynamic index access.</description>
		<content:encoded><![CDATA[<p>Performance with arguments deserves a better explanation:<br />
FF performs optimizations where it will not actually build an &#8220;arguments&#8221; array object unless there is actually a need for to use the &#8220;arguments&#8221; object with dynamic indexes. When you use arguments[1], FF can optimize that to directly pull the value from the call parameters, rather than creating an arguments object and doing a GetValue on it. Once FF creates the arguments object, it is just as fast as a normal array. When you use dynamic indexes with the arguments object, it is not that FF has a particular performance problem with that, it is simply that turns off an optimization (not creating an unnecessary arguments object), and so you see a performance hit in comparison to the optimized code that doesn&#8217;t use the arguments with dynamic index access.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on String Performance: an Analysis by ttrenka</title>
		<link>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87238</link>
		<dc:creator>ttrenka</dc:creator>
		<pubDate>Mon, 12 May 2008 14:18:25 +0000</pubDate>
		<guid>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87238</guid>
		<description>@Garrett: yes, this was the point of using the BuilderPerf tests first; the JSON serialization battery of tests were intended to take a very common JS task and test different approaches, while looking for hints as to what approaches might be beneficial in other tasks.  The recursive nature of that test was the point--especially since the BuilderPerf tests are deliberately *not* recursive in nature.

@Ben: wrt to arguments object access, yes that's exactly what we found.  The loop unroll I pulled for the FF branch in Builder is what brought the performance of it back down to being comparable or faster than some of the other native operations.

As far as the colors and ranges in the graphs are concerned...I *might* be able to fix colors but the ranges are a different story.  I used Apple's Numbers (iWork '08) to create the graphs and while they are very pretty, there's not a lot of control you have over how the graphs get rendered :(</description>
		<content:encoded><![CDATA[<p>@Garrett: yes, this was the point of using the BuilderPerf tests first; the JSON serialization battery of tests were intended to take a very common JS task and test different approaches, while looking for hints as to what approaches might be beneficial in other tasks.  The recursive nature of that test was the point&#8211;especially since the BuilderPerf tests are deliberately *not* recursive in nature.</p>
<p>@Ben: wrt to arguments object access, yes that&#8217;s exactly what we found.  The loop unroll I pulled for the FF branch in Builder is what brought the performance of it back down to being comparable or faster than some of the other native operations.</p>
<p>As far as the colors and ranges in the graphs are concerned&#8230;I *might* be able to fix colors but the ranges are a different story.  I used Apple&#8217;s Numbers (iWork &#8216;08) to create the graphs and while they are very pretty, there&#8217;s not a lot of control you have over how the graphs get rendered :(</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on String Performance: an Analysis by Ben</title>
		<link>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87237</link>
		<dc:creator>Ben</dc:creator>
		<pubDate>Mon, 12 May 2008 13:45:48 +0000</pubDate>
		<guid>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87237</guid>
		<description>Great work Tom! It's always good to see numbers. I recall trying to use Duff's back when I wrote those tests, but I don't recall it helping. 

For Bloglines, we try to only use the "once" operations, and we have a little function internally that handles the browser differences. Based on this article I think I'll revisit it and see if I can shave any more time off.

In the bit about "dynamic access to the arguments object" being really slow in Firefox, do you mean that going after an item using a variable is slow (vs. a constant)? Like var i = 1, a = arguments[i]; is slower than var a = arguments[1]; ? If so, that's an amazingly weird find. :)

A couple really minor nits: the color used to represent each browser changes throughout the article. Any chance you could make it consistent? Also, the scales for some comparative graphs are different; it would help if they were consistent.</description>
		<content:encoded><![CDATA[<p>Great work Tom! It&#8217;s always good to see numbers. I recall trying to use Duff&#8217;s back when I wrote those tests, but I don&#8217;t recall it helping. </p>
<p>For Bloglines, we try to only use the &#8220;once&#8221; operations, and we have a little function internally that handles the browser differences. Based on this article I think I&#8217;ll revisit it and see if I can shave any more time off.</p>
<p>In the bit about &#8220;dynamic access to the arguments object&#8221; being really slow in Firefox, do you mean that going after an item using a variable is slow (vs. a constant)? Like var i = 1, a = arguments[i]; is slower than var a = arguments[1]; ? If so, that&#8217;s an amazingly weird find. :)</p>
<p>A couple really minor nits: the color used to represent each browser changes throughout the article. Any chance you could make it consistent? Also, the scales for some comparative graphs are different; it would help if they were consistent.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on The Key to Quick Mobile App Navigation by Hafeez Bana</title>
		<link>http://www.sitepen.com/blog/2008/05/12/the-key-to-quick-mobile-app-navigation/#comment-87236</link>
		<dc:creator>Hafeez Bana</dc:creator>
		<pubDate>Mon, 12 May 2008 07:19:32 +0000</pubDate>
		<guid>http://www.sitepen.com/blog/2008/05/12/the-key-to-quick-mobile-app-navigation/#comment-87236</guid>
		<description>Hi Jason,

Does this work on WAP sites?

hb</description>
		<content:encoded><![CDATA[<p>Hi Jason,</p>
<p>Does this work on WAP sites?</p>
<p>hb</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on String Performance: an Analysis by Garrett</title>
		<link>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87234</link>
		<dc:creator>Garrett</dc:creator>
		<pubDate>Mon, 12 May 2008 05:13:34 +0000</pubDate>
		<guid>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87234</guid>
		<description>The test code is slow because of the recursive approach used to serialize the object (testcode: recursor = arguments.callee). It adds noise to the test. It seems that the results are closer together than if the test performed only concatenation.

Have you tried isolating the serialization aspect in one function that does only the concatenation -- no recursion, no serialization, just concatenation?</description>
		<content:encoded><![CDATA[<p>The test code is slow because of the recursive approach used to serialize the object (testcode: recursor = arguments.callee). It adds noise to the test. It seems that the results are closer together than if the test performed only concatenation.</p>
<p>Have you tried isolating the serialization aspect in one function that does only the concatenation &#8212; no recursion, no serialization, just concatenation?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on String Performance: an Analysis by Dylan</title>
		<link>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87231</link>
		<dc:creator>Dylan</dc:creator>
		<pubDate>Sat, 10 May 2008 15:59:43 +0000</pubDate>
		<guid>http://www.sitepen.com/blog/2008/05/09/string-performance-an-analysis/#comment-87231</guid>
		<description>The graphs were generated with Numbers, part of Apple's iWork suite.</description>
		<content:encoded><![CDATA[<p>The graphs were generated with Numbers, part of Apple&#8217;s iWork suite.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
