<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Shawn Wilsher &#187; Mozilla</title>
	<atom:link href="http://shawnwilsher.com/archives/category/mozilla/feed" rel="self" type="application/rss+xml" />
	<link>http://shawnwilsher.com</link>
	<description></description>
	<lastBuildDate>Sun, 04 Dec 2011 10:37:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>sdwilsh Status Update: 2011-12-04</title>
		<link>http://shawnwilsher.com/archives/580</link>
		<comments>http://shawnwilsher.com/archives/580#comments</comments>
		<pubDate>Sun, 04 Dec 2011 10:37:21 +0000</pubDate>
		<dc:creator>Shawn Wilsher</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[status]]></category>

		<guid isPermaLink="false">http://shawnwilsher.com/?guid=b6d9bc8beacd3eac81de52f90196f836</guid>
		<description><![CDATA[
      
          
            Done: 
Reviewed bug 699051 - Track slow sql queries on main thread + send them in via telemetry
Reviewed bug 465299 - mozStorageStatementWrapper::Initialize should check statement state/validity
Reviewed bug 702815 - Main...]]></description>
			<content:encoded><![CDATA[
      <div class="postdata">
          <div class="completed">
            <h4 class="posthead">Done:</h4> <ul>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=699051">bug 699051</a> - Track slow sql queries on main thread + send them in via telemetry</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=465299">bug 465299</a> - mozStorageStatementWrapper::Initialize should check statement state/validity</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=702815">bug 702815</a> - Maintain a list of open SQLite connections</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=703143">bug 703143</a> - Use a memory multi-reporter for SQLite&#039;s per-connection reporting</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=557047">bug 557047</a> - Replace mailnews specific ifdef (MOZ_MAIL_NEWS) in cookie code with tests for a protocol flag</li>
</ul>
          </div>
      </div>
    ]]></content:encoded>
			<wfw:commentRss>http://shawnwilsher.com/archives/580/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>sdwilsh Status Update: 2011-11-19</title>
		<link>http://shawnwilsher.com/archives/578</link>
		<comments>http://shawnwilsher.com/archives/578#comments</comments>
		<pubDate>Sat, 19 Nov 2011 13:16:08 +0000</pubDate>
		<dc:creator>Shawn Wilsher</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[status]]></category>

		<guid isPermaLink="false">http://shawnwilsher.com/?guid=26d0f9c1e2fb44daa88342d7d784312c</guid>
		<description><![CDATA[
      
          
            Done: 
Reviewed bug 658303 - mozIStorageConnection::Clone() should copy over #pragmas
Reviewed bug 692487 - Decrease SQLITE_DEFAULT CACHE_SIZE
Reviewed bug 691662 - Update shipped Growl framework to 1.2.2 for compatibilit...]]></description>
			<content:encoded><![CDATA[
      <div class="postdata">
          <div class="completed">
            <h4 class="posthead">Done:</h4> <ul>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=658303">bug 658303</a> - mozIStorageConnection::Clone() should copy over #pragmas</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=692487">bug 692487</a> - Decrease SQLITE_DEFAULT CACHE_SIZE</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=691662">bug 691662</a> - Update shipped Growl framework to 1.2.2 for compatibility with Growl 1.3</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=693667">bug 693667</a> - Track time from requesting an async query to completion via telemetry</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=699051">bug 699051</a> - Track slow sql queries on main thread + send them in via telemetry</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=465299">bug 465299</a> - mozStorageStatementWrapper::Initialize should check statement state/validity</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=701607">bug 701607</a> - Download annotations are not stored for files without a custom name</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=702815">bug 702815</a> - Maintain a list of open SQLite connections</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=703143">bug 703143</a> - Use a memory multi-reporter for SQLite&#039;s per-connection reporting</li>
</ul>
          </div>
      </div>
    ]]></content:encoded>
			<wfw:commentRss>http://shawnwilsher.com/archives/578/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>sdwilsh Status Update: 2011-11-06</title>
		<link>http://shawnwilsher.com/archives/577</link>
		<comments>http://shawnwilsher.com/archives/577#comments</comments>
		<pubDate>Sun, 06 Nov 2011 17:57:02 +0000</pubDate>
		<dc:creator>Shawn Wilsher</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[status]]></category>

		<guid isPermaLink="false">http://shawnwilsher.com/?guid=09c5c58c2e02fad0044399f0a46c3324</guid>
		<description><![CDATA[
      
          
            Done: 
Reviewed bug 682676 - urlbar performance regression with SQLite 3.7.7.1
Reviewed bug 678977 - Teach sqlite to use jemalloc directly when applicable
Reviewed bug 676064 - Lockup in mozStorage component/SQLite
Review...]]></description>
			<content:encoded><![CDATA[
      <div class="postdata">
          <div class="completed">
            <h4 class="posthead">Done:</h4> <ul>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=682676">bug 682676</a> - urlbar performance regression with SQLite 3.7.7.1</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=678977">bug 678977</a> - Teach sqlite to use jemalloc directly when applicable</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=676064">bug 676064</a> - Lockup in mozStorage component/SQLite</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=674957">bug 674957</a> - mochitests-5: test_alerts.html | application timed out after 330 seconds with no output</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=663075">bug 663075</a> - FileUtils.jsm should have an easy way to create an nsILocalFile with a path</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=567585">bug 567585</a> - TB3 fails to raise an error when it tries to save an attachment to write-protected directory.</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=686025">bug 686025</a> - nsNavHistory::AsyncExecuteLegacyQueries uses synchronous createStatement call instead of async createAsyncStatement call, blocks main thread</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=658303">bug 658303</a> - mozIStorageConnection::Clone() should copy over #pragmas</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=566489">bug 566489</a> - Enable inline autocomplete again, but make it smarter (perceived performance)</li>
<li>Caught up on my massive backlog of newsgroups and bugmails</li>
</ul>
          </div>
      </div>
    ]]></content:encoded>
			<wfw:commentRss>http://shawnwilsher.com/archives/577/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>sdwilsh Status Update: 2011-08-28</title>
		<link>http://shawnwilsher.com/archives/575</link>
		<comments>http://shawnwilsher.com/archives/575#comments</comments>
		<pubDate>Sun, 28 Aug 2011 11:29:25 +0000</pubDate>
		<dc:creator>Shawn Wilsher</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[status]]></category>

		<guid isPermaLink="false">http://shawnwilsher.com/?guid=4c614093a1d68fcfcf9a049627ec5397</guid>
		<description><![CDATA[
      
          
            Done: 
Reviewed bug 666558 - Increase SQLITE_MAX_SCHEMA_RETRY value
Reviewed bug 659234 - Remove unused variable &#124;rv&#124; from test_file_perms.cpp:52
Reviewed bug 666420 - Upgrade to SQLite 3.7.7.1

          
      
    ]]></description>
			<content:encoded><![CDATA[
      <div class="postdata">
          <div class="completed">
            <h4 class="posthead">Done:</h4> <ul>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=666558">bug 666558</a> - Increase SQLITE_MAX_SCHEMA_RETRY value</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=659234">bug 659234</a> - Remove unused variable |rv| from test_file_perms.cpp:52</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=666420">bug 666420</a> - Upgrade to SQLite 3.7.7.1</li>
</ul>
          </div>
      </div>
    ]]></content:encoded>
			<wfw:commentRss>http://shawnwilsher.com/archives/575/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Social Plugins&#8217; Memory Usage</title>
		<link>http://shawnwilsher.com/archives/549</link>
		<comments>http://shawnwilsher.com/archives/549#comments</comments>
		<pubDate>Thu, 25 Aug 2011 02:41:33 +0000</pubDate>
		<dc:creator>Shawn Wilsher</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[about:memory]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[memory]]></category>

		<guid isPermaLink="false">http://shawnwilsher.com/?p=549</guid>
		<description><![CDATA[Dietrich recently posted about the memory usage of social plugins, and I found the results rather surprising because, at least in the case of Facebook, I didn&#8217;t think it ever loaded enough code to consume 20+MB of memory. When I first learned about social plugins, I thought that they were a really cool idea and [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://autonome.wordpress.com/2011/08/23/wallflower-un-socializing-your-web/">Dietrich recently posted about the memory usage of social plugins</a>, and I found the results rather surprising because, at least in the case of Facebook, I didn&#8217;t think it ever loaded enough code to consume 20+MB of memory.</p>
<p>When I first learned about <a href="https://developers.facebook.com/docs/plugins/">social plugins</a>, I thought that they were a really cool idea and thought that they had a lot of potential.  If they use a ton of memory though, I feel like it&#8217;s a bit of a deal breaker to using them.  So, being the curious engineer that I am, I decided to test this out myself.  I conducted these tests in a new Firefox profile and I was not signed into Facebook (to try and replicate the experience Dietrich had).</p>
<h3>One Like Button</h3>
<p>For my first test, I had a very simple page for the default <a href="https://developers.facebook.com/docs/reference/plugins/like">like social plugin</a> pointing to my site.</p>
<p><script src="https://gist.github.com/1169663.js?file=like_test.html"></script></p>
<div><a href="http://shawnwilsher.com/wp-content/uploads/2011/08/like.png"><img src="http://shawnwilsher.com/wp-content/uploads/2011/08/like-300x198.png" alt="like page result" title="like" width="300" height="198" class="aligncenter size-medium wp-image-552" /></a></div>
<div><img src="http://shawnwilsher.com/wp-content/uploads/2011/08/like-data.png" alt="" title="like-data" width="576" height="152" class="align-none size-full wp-image-553" /></div>
<p>One like button doesn&#8217;t seem to add much, which is good!</p>
<h3>Two Like Buttons</h3>
<p>The next test I tried was duplicating the like button so it showed up twice.  This code is a bit naive since I duplicate a <code>&lt;div&gt;</code> element with the same <code>id</code> and don&#8217;t need to include the JavaScript twice.  However, it shows what someone who would just copy and paste will end up with, which I think is valuable.</p>
<p><script src="https://gist.github.com/1169669.js?file=like_2_test.html"></script></p>
<div><a href="http://shawnwilsher.com/wp-content/uploads/2011/08/like-2.png"><img src="http://shawnwilsher.com/wp-content/uploads/2011/08/like-2-300x202.png" alt="like page (two button) result" title="like-2" width="300" height="202" class="aligncenter size-medium wp-image-557" /></a></div>
<div><img src="http://shawnwilsher.com/wp-content/uploads/2011/08/like-2-data.png" alt="" title="like-2-data" width="569" height="154" class="alignnone size-full wp-image-558" /></div>
<p>As you can see, memory usage nearly doubled.  This is a bit surprising since the exact same JavaScript is included.  I would expect there to not be any additional <a href="https://developer.mozilla.org/En/SpiderMonkey/Internals/Property_cache#Shape"><code>shapes</code></a>, but that nearly doubles.  <code>scripts</code> and <code>mjit-code</code> also all double, and I would expect that at least the latter to not.</p>
<p>A more interesting version of this test would be to not include the JavaScript twice, and just add one additional <code>&lt;fb:like&gt;</code> button that doesn&#8217;t like the same url.</p>
<p><script src="https://gist.github.com/1169777.js?file=like_2b_test.html"></script></p>
<div><a href="http://shawnwilsher.com/wp-content/uploads/2011/08/like-2b.png"><img src="http://shawnwilsher.com/wp-content/uploads/2011/08/like-2b-300x198.png" alt="two like button test results" title="like-2b" width="300" height="198" class="alignnone size-medium wp-image-568" /></a></div>
<div><a href="http://shawnwilsher.com/wp-content/uploads/2011/08/like-2b-data.png"><img src="http://shawnwilsher.com/wp-content/uploads/2011/08/like-2b-data.png" alt="" title="like-2b-data" width="568" height="151" class="alignnone size-full wp-image-569" /></a></p>
<p>Interestingly, memory usage did not change significantly from the duplicate resource case!  So, what exactly is going on here?  This page ends up loading four additional resources:</p>
<table>
<thead>
<tr>
<td>File</td>
<td>HTTP Status</td>
<td>Size</td>
<td>Mime Type</td>
</tr>
</thead>
<tbody>
<tr>
<td><a href="http://connect.facebook.net/en_US/all.js#appId=167435886666146&#038;xfbml=1" title="http://connect.facebook.net/en_US/all.js#appId=167435886666146&#038;xfbml=1">all.js</a></td>
<td>304</td>
<td>143KB</td>
<td><code>application/x-javascript</code></td>
</tr>
<tr>
<td><a href="http://www.facebook.com/extern/login_status.php?api_key=167435886666146&#038;app_id=167435886666146&#038;channel_url=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df1b63e91087165a%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent.parent%26transport%3Dpostmessage&#038;display=hidden&#038;extern=2&#038;locale=en_US&#038;next=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df2cb8410821cf5%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent%26transport%3Dpostmessage%26frame%3Df13c5b92e0fb36%26result%3D%2522xxRESULTTOKENxx%2522&#038;no_session=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df1b97f8de7e7a6e%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent%26transport%3Dpostmessage%26frame%3Df13c5b92e0fb36&#038;no_user=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Dff68d6635d7af6%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent%26transport%3Dpostmessage%26frame%3Df13c5b92e0fb36&#038;ok_session=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Dfc9586db992bf6%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent%26transport%3Dpostmessage%26frame%3Df13c5b92e0fb36&#038;sdk=joey&#038;session_origin=1&#038;session_version=3" title="http://www.facebook.com/extern/login_status.php?api_key=167435886666146&#038;app_id=167435886666146&#038;channel_url=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df1b63e91087165a%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent.parent%26transport%3Dpostmessage&#038;display=hidden&#038;extern=2&#038;locale=en_US&#038;next=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df2cb8410821cf5%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent%26transport%3Dpostmessage%26frame%3Df13c5b92e0fb36%26result%3D%2522xxRESULTTOKENxx%2522&#038;no_session=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df1b97f8de7e7a6e%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent%26transport%3Dpostmessage%26frame%3Df13c5b92e0fb36&#038;no_user=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Dff68d6635d7af6%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent%26transport%3Dpostmessage%26frame%3Df13c5b92e0fb36&#038;ok_session=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Dfc9586db992bf6%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent%26transport%3Dpostmessage%26frame%3Df13c5b92e0fb36&#038;sdk=joey&#038;session_origin=1&#038;session_version=3">login_status.php</a></td>
<td>200</td>
<td>58b</td>
<td><code>text/html</code></td>
</tr>
<tr>
<td><a href="<br />
    http://www.facebook.com/plugins/like.php?action=like&#038;api_key=167435886666146&#038;channel_url=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df1b349661c9cd1c%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent.parent%26transport%3Dpostmessage&#038;href=http%3A%2F%2Fshawnwilsher.com%2F&#038;layout=standard&#038;locale=en_US&#038;node_type=link&#038;sdk=joey&#038;send=true&#038;show_faces=true&#038;width=450" title="<br />
    http://www.facebook.com/plugins/like.php?action=like&#038;api_key=167435886666146&#038;channel_url=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df1b349661c9cd1c%26origin%3Dfile%253A%252F%252F%252Ff1d19be94c0f99c%26relation%3Dparent.parent%26transport%3Dpostmessage&#038;href=http%3A%2F%2Fshawnwilsher.com%2F&#038;layout=standard&#038;locale=en_US&#038;node_type=link&#038;sdk=joey&#038;send=true&#038;show_faces=true&#038;width=450">like.php</a></td>
<td>200</td>
<td>33KB</td>
<td><code>text/html</code></td>
</tr>
<td><a href="http://www.facebook.com/plugins/like.php?action=like&#038;api_key=167435886666146&#038;channel_url=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df69d9c19ebd99a%26origin%3Dfile%253A%252F%252F%252Ff1d8c7be660a56c%26relation%3Dparent.parent%26transport%3Dpostmessage&#038;href=http%3A%2F%2Fshawnwilsher.com%2Farchives%2F549&#038;layout=standard&#038;locale=en_US&#038;node_type=link&#038;sdk=joey&#038;send=true&#038;show_faces=true&#038;width=450" title="http://www.facebook.com/plugins/like.php?action=like&#038;api_key=167435886666146&#038;channel_url=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df69d9c19ebd99a%26origin%3Dfile%253A%252F%252F%252Ff1d8c7be660a56c%26relation%3Dparent.parent%26transport%3Dpostmessage&#038;href=http%3A%2F%2Fshawnwilsher.com%2Farchives%2F549&#038;layout=standard&#038;locale=en_US&#038;node_type=link&#038;sdk=joey&#038;send=true&#038;show_faces=true&#038;width=450">like.php</a></td>
<td>200</td>
<td>33KB</td>
<td><code>text/html</code></td>
</tr>
</tbody>
</table>
<p>That is 209KB of HTML and JavaScript that is being sent for two like buttons.  Something tells me that part of the problem here is that Facebook is sending more than it needs to for this (I did not look into exactly what was being sent).  The good news is that 143KB comes from the browser&#8217;s cache.</p>
<h3>Send Button</h3>
<p>The last test I did was the <a href="https://developers.facebook.com/docs/reference/plugins/send/">send button</a> pointing to my website.</p>
<p><script src="https://gist.github.com/1169664.js?file=send_test.html"></script></p>
<div><a href="http://shawnwilsher.com/wp-content/uploads/2011/08/send.png"><img src="http://shawnwilsher.com/wp-content/uploads/2011/08/send-300x202.png" alt="send test results" title="send" width="300" height="202" class="aligncenter size-medium wp-image-559" /></a></div>
<div><a href="http://shawnwilsher.com/wp-content/uploads/2011/08/send-data.png"><img src="http://shawnwilsher.com/wp-content/uploads/2011/08/send-data.png" alt="" title="send-data" width="578" height="138" class="alignnone size-full wp-image-560" /></a></div>
<p>Given that the like button test includes a send button as well, I&#8217;m not surprised to see that this used even less memory.</p>
<h3>Summary</h3>
<p>I think there are are two problems here:</p>
<ol>
<li>Firefox should create less shapes and do a better job of not duplicating the same JavaScript code in a given compartment.</li>
<li>Facebook needs to send less data down for their social plugins.  I have a hard time believing that that much JavaScript is needed in order to display a like button, a share button, and a faces of your friends who have liked a page.</li>
</ol>
<p>It&#8217;d be interesting to see how these numbers change when you are logged in, but I don&#8217;t have time to do that analysis.  I&#8217;ve provided all the code and steps I used to get these results, so it shouldn&#8217;t be too hard for someone else to come along and do that if they are interested.  Another interesting test would be to see how the Twitter and Google+ integrations break down too (but I leave that as an exercise for the reader).</p>
]]></content:encoded>
			<wfw:commentRss>http://shawnwilsher.com/archives/549/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>sdwilsh Status Update: 2011-08-13</title>
		<link>http://shawnwilsher.com/archives/547</link>
		<comments>http://shawnwilsher.com/archives/547#comments</comments>
		<pubDate>Sat, 13 Aug 2011 17:05:01 +0000</pubDate>
		<dc:creator>Shawn Wilsher</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[status]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[
      
          
            Done: 
Reviewed bug 598794 - Intermittent failure in uriloader\exthandler\tests\unit\test_punycodeURIs.js &#124; test failed (with xpcshell return code: 0), see following log: Component returned failure code: 0x80520012 (NS_ER...]]></description>
			<content:encoded><![CDATA[
      <div class="postdata">
          <div class="completed">
            <h4 class="posthead">Done:</h4> <ul>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=598794">bug 598794</a> - Intermittent failure in uriloader\exthandler\tests\unit\test_punycodeURIs.js | test failed (with xpcshell return code: 0), see following log: Component returned failure code: 0x80520012 (NS_ERROR_FILE_NOT_FOUND) [nsIFileInputStream.init]</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=665549">bug 665549</a> - Fix unused variable warning for &#039;shutdownObserved&#039; in mozStorageService.cpp</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=665328">bug 665328</a> - Remove the unused Storage string</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=665216">bug 665219</a> - Helper App Service should accept a filename hint on a channel</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=658368">bug 658368</a> - Expand console object with time and timeEnd methods</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=662989">bug 662989</a> - Avoid crashing if a DB connection isn&#039;t asyncClose()d when it should be</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=655658">bug 655658</a> - NetUtil.readInputStreamToString should have aCharset argument as optional</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=665580">bug 665580</a> - Hide http:// and single trailing slashes in the location bar</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=668906">bug 668906</a> - NULL dereference in openUnsharedDatabase with functiontimer</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=663612">bug 663612</a> - clicking a group should zoom into the group&#039;s active tab</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=591289">bug 591289</a> - Save chosen download file name and other metadata in Places history</li>
</ul>
          </div>
      </div>
    ]]></content:encoded>
			<wfw:commentRss>http://shawnwilsher.com/archives/547/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>sdwilsh Status Update: 2011-06-03</title>
		<link>http://shawnwilsher.com/archives/546</link>
		<comments>http://shawnwilsher.com/archives/546#comments</comments>
		<pubDate>Fri, 03 Jun 2011 13:41:51 +0000</pubDate>
		<dc:creator>Shawn Wilsher</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[status]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[
      
          
            Done: 
Reviewed bug 660532 - Useless uses of PromiseFlatCString
Reviewed bug 659740 - Frecency update causes SQL sort warning
Reviewed bug 659625 - Expand console object with clear method
Reviewed bug 649088 - Use default...]]></description>
			<content:encoded><![CDATA[
      <div class="postdata">
          <div class="completed">
            <h4 class="posthead">Done:</h4> <ul>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=660532">bug 660532</a> - Useless uses of PromiseFlatCString</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=659740">bug 659740</a> - Frecency update causes SQL sort warning</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=659625">bug 659625</a> - Expand console object with clear method</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=649088">bug 649088</a> - Use default favicon consistent with rest of browser</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=661135">bug 661135</a> - Minor performance improvements to autocomplete queries</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=661091">bug 661091</a> - iQ.animate: only animate properties that are changing</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=660743">bug 660743</a> - storage should use mozilla::Preferences</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=658368">bug 658368</a> - Expand console object with time and timeEnd methods</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=660592">bug 660592</a> - Allow autocomplete results to hide themselves from the popup</li>
<li>Released version 0.3.0 of the <a href="https://github.com/sdwilsh/node-pulse">node.js library for Pulse</a>.  Now with good documentation and it&#039;s tested!</li>
</ul>
          </div>
      </div>
    ]]></content:encoded>
			<wfw:commentRss>http://shawnwilsher.com/archives/546/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>sdwilsh Status Update: 2011-05-27</title>
		<link>http://shawnwilsher.com/archives/545</link>
		<comments>http://shawnwilsher.com/archives/545#comments</comments>
		<pubDate>Fri, 27 May 2011 16:14:13 +0000</pubDate>
		<dc:creator>Shawn Wilsher</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[status]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[
      
          
            Done: 
Reviewed bug 655776 - Web Developer &#62; Get More Tools menu item
Reviewed bug 566489 - Enable inline autocomplete again, but make it smarter (perceived performance)
Reviewed bug 658135 - Use sqlite3_stmt_readonly ...]]></description>
			<content:encoded><![CDATA[
      <div class="postdata">
          <div class="completed">
            <h4 class="posthead">Done:</h4> <ul>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=655776">bug 655776</a> - Web Developer &gt; Get More Tools menu item</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=566489">bug 566489</a> - Enable inline autocomplete again, but make it smarter (perceived performance)</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=658135">bug 658135</a> - Use sqlite3_stmt_readonly to check if multiple async statements need a transaction</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=564934">bug 564934</a> - Implement new Download Manager UI for browser</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=647886">bug 647886</a> - Pulling down Back/Forward menu requires an unnecessary delay</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=657961">bug 657961</a> - Use async API to get favicons for site permissions page</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=659693">bug 659693</a> - domain highlighting doesn&#039;t work with IPv6 literals</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=659332">bug 659332</a> - trailing // should disappear if input text is something like &quot;filxxxx&quot; in the LocationBar</li>
<li>Wrote <a href="https://github.com/sdwilsh/node-pulse">a library</a> to connect to <a href="http://pulse.mozilla.org/">pulse</a> for node.js</li>
<li>Started work on <a href="https://github.com/sdwilsh/tree-bot">tree-bot</a>, a helpful bot to tell you when you&#039;ve broken the tree or have test failures.</li>
</ul>
          </div>
      </div>
    ]]></content:encoded>
			<wfw:commentRss>http://shawnwilsher.com/archives/545/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>sdwilsh Status Update: 2011-05-20</title>
		<link>http://shawnwilsher.com/archives/544</link>
		<comments>http://shawnwilsher.com/archives/544#comments</comments>
		<pubDate>Fri, 20 May 2011 13:18:31 +0000</pubDate>
		<dc:creator>Shawn Wilsher</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[status]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[
      
          
            Done: 
Reviewed bug 633274 - nsINavBookmarkObserver: also pass in GUID whenever we pass in an item id
Reviewed bug 656188 - Cache last 10 fetched bookmarks info to speed up repeated requests
Reviewed bug 598833 - Consider...]]></description>
			<content:encoded><![CDATA[
      <div class="postdata">
          <div class="completed">
            <h4 class="posthead">Done:</h4> <ul>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=633274">bug 633274</a> - nsINavBookmarkObserver: also pass in GUID whenever we pass in an item id</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=656188">bug 656188</a> - Cache last 10 fetched bookmarks info to speed up repeated requests</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=598833">bug 598833</a> - Consider storing intrinsic state in a direct member of Element</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=566489">bug 566489</a> - Enable inline autocomplete again, but make it smarter (perceived performance)</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=656545">bug 656545</a> - Make about:memory tool-tips more discoverable</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=657327">bug 657327</a> - about:memory merge the &quot;mapped&quot; and &quot;heap used&quot; trees, and make the resulting tree flatter</li>
<li>Provided feedback on <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=655270">bug 655270</a> - SHEntries created by pushState don&#039;t have favicon</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=649867">bug 649867</a> - Fix or remove the heap-used/storage/lookaside-used memory reporter</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=573176">bug 573176</a> - Implement Site-Specific Privacy Preferences</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=566489">bug 566489</a> - Enable inline autocomplete again, but make it smarter (perceived performance)</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=658135">bug 658135</a> - Use sqlite3_stmt_readonly to check if multiple async statements need a transaction</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=650573">bug 650573</a> - Panorama hangs when restoring a session</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=658344">bug 658344</a> - Create some useful introductory text for the Scratchpad</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=658135">bug 658135</a> - Use sqlite3_stmt_readonly to check if multiple async statements need a transaction</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=657131">bug 657131</a> - Create a new Execute menu for Scratchpad</li>
<li><a href="http://shawnwilsher.com/archives/537">Blogged about what I look for during a review</a></li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=656773">bug 656773</a> - about:memory error in private browsing mode, page is blank</li>
<li>Reviewed <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=653108">bug 653108</a> - Scratchpad is tied to the tab it was first run in</li>
<li>Continued to investigate a <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=655930">tp4 chrome performance regression</a>.  Finally getting some interesting data.</li>
</ul>
          </div>
          <div class="tags">
            <h4 class="posthead">Coordination:</h4> <p>I am <a href="http://shawnwilsher.com/archives/541">changing jobs on June 1st</a>, so my review queue bandwidth is going to decrease, which will likely result in slightly longer wait times.  I hope to keep it limited to three business days after June 1st, however.</p>
          </div>
      </div>
    ]]></content:encoded>
			<wfw:commentRss>http://shawnwilsher.com/archives/544/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Changes</title>
		<link>http://shawnwilsher.com/archives/541</link>
		<comments>http://shawnwilsher.com/archives/541#comments</comments>
		<pubDate>Thu, 19 May 2011 01:11:53 +0000</pubDate>
		<dc:creator>Shawn Wilsher</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://shawnwilsher.com/?p=541</guid>
		<description><![CDATA[I&#8217;m going to write something that will probably surprise you. I say this because it sure surprised me when I realized I was even considering what I&#8217;m doing a possibility. I&#8217;m going to be moving on to something a bit different in the mobile space, and it&#8217;s going to be a different kind of challenge [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m going to write something that will probably surprise you.  I say this because it sure surprised me when I realized I was even considering what I&#8217;m doing a possibility.  I&#8217;m going to be moving on to something a bit different in the mobile space, and it&#8217;s going to be a different kind of challenge for me.</p>
<p>June 1st will be my last day at Mozilla.  I&#8217;ve learned so much over the years working there, and choosing to leave was the hardest decision I&#8217;ve had to make.  I do not intend to disappear from the project, however, but my activity level will decrease.  Feel free to continue to send review requests my way and cc me to bugs you want my opinion on, and I&#8217;ll do my best to reply in a timely manner.</p>
<p>So long, and thanks for all the fish.</p>
]]></content:encoded>
			<wfw:commentRss>http://shawnwilsher.com/archives/541/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

