<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>web-performance on S Anand</title>
    <link>https://www.s-anand.net/blog/tag/web-performance/</link>
    <description>Recent content in web-performance on S Anand</description>
    <generator>Hugo -- 0.156.0</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 17 Jul 2012 11:41:29 +0000</lastBuildDate>
    <atom:link href="https://www.s-anand.net/blog/tag/web-performance/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Audio data URI</title>
      <link>https://www.s-anand.net/blog/audio-data-uri/</link>
      <pubDate>Tue, 17 Jul 2012 11:41:29 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/audio-data-uri/</guid>
      <description>&lt;p&gt;Turns out that you can use &lt;a href=&#34;http://en.wikipedia.org/wiki/Data_URI_scheme&#34;&gt;data URIs&lt;/a&gt; in the &lt;code&gt;&amp;lt;audio&amp;gt;&lt;/code&gt; tag.&lt;/p&gt;
&lt;p&gt;Just upload an MP3 file to &lt;a href=&#34;http://dataurl.net/#dataurlmaker&#34;&gt;http://dataurl.net/#dataurlmaker&lt;/a&gt; and you’ll get a long string starting with &lt;code&gt;data:audio/mp3;base64...&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Insert this into your HTML:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-html&#34; data-lang=&#34;html&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;audio&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;controls&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;src&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;”data:audio/mp3;base64...”&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;That’s it – the entire MP3 file is embedded into your HTML page without requiring additional downloads.&lt;/p&gt;
&lt;p&gt;This takes a bit more bandwidth than the MP3, and won’t work on Internet Explorer. But for modern browsers, and small audio files, it reduces the overall load time – sort of like &lt;a href=&#34;http://css-tricks.com/css-sprites/&#34;&gt;CSS sprites&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;So, on my bus ride today, I built a little HTML5 musical keyboard that generates data URIs on the fly. Click to play.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;http://s-anand.net/musical-keyboard.html&#34;&gt;&lt;img alt=&#34;keyboard&#34; loading=&#34;lazy&#34; src=&#34;https://www.s-anand.net/blog/assets/keyboard.webp&#34; title=&#34;keyboard&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;comments&#34;&gt;Comments&lt;/h2&gt;
&lt;!-- wp-comments-start --&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Fabio Mazarotto&lt;/strong&gt; &lt;em&gt;9 May 2013 8:07 pm&lt;/em&gt;:
Can you confirm that it no longer works in Safari &amp;gt;= 6.0?&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- wp-comments-end --&gt;
</description>
    </item>
    <item>
      <title>WP-SuperCache</title>
      <link>https://www.s-anand.net/blog/wp-supercache/</link>
      <pubDate>Wed, 10 Feb 2010 17:27:09 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/wp-supercache/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://www.s-anand.net/blog/assets/responsetimes.gif&#34;&gt;&lt;img alt=&#34;response-times&#34; loading=&#34;lazy&#34; src=&#34;https://www.s-anand.net/blog/assets/responsetimes.gif&#34; title=&#34;response-times&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;That dip there in response time is thanks to &lt;a href=&#34;http://wordpress.org/extend/plugins/wp-super-cache/&#34;&gt;WP-SuperCache&lt;/a&gt;. My average page load time has dropped from 1 second to 0.25 seconds.&lt;/p&gt;
</description>
    </item>
    <item>
      <title>Attack of the bots</title>
      <link>https://www.s-anand.net/blog/attack-of-the-bots/</link>
      <pubDate>Sun, 31 Aug 2008 12:00:00 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/attack-of-the-bots/</guid>
      <description>&lt;p&gt;One out of every 5 hits to my site is from a &lt;a href=&#34;http://en.wikipedia.org/wiki/Internet_bot&#34;&gt;bot&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I spent a fair bit of time this weekend analysing my log file for last month (which runs to gigabytes, and I ended up learning a few things about file system optimisation, but more on that later). 80% of the hits were from regular browsers. 20% were from robots. Here&#39;s a sample of the user-agents:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Mozilla/5.0 (compatible; Yahoo! Slurp; &amp;lt;a href=&amp;#34;http://help.yahoo.com/help/us/ysearch/slurp)&amp;#34;&amp;gt;http://help.yahoo.com/help/us/ysearch/slurp)&amp;lt;/a&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Mozilla/5.0 (compatible; Googlebot/2.1; +&amp;lt;a href=&amp;#34;http://www.google.com/bot.html)&amp;#34;&amp;gt;http://www.google.com/bot.html)&amp;lt;/a&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Mediapartners-Google
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;DotBot/1.0.1 (&amp;lt;a href=&amp;#34;http://www.dotnetdotcom.org/#info&amp;#34;&amp;gt;http://www.dotnetdotcom.org/#info&amp;lt;/a&amp;gt;, crawler@dotnetdotcom.org)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Mozilla/5.0 (Twiceler-0.9 &amp;lt;a href=&amp;#34;http://www.cuill.com/twiceler/robot.html)&amp;#34;&amp;gt;http://www.cuill.com/twiceler/robot.html)&amp;lt;/a&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;msnbot/1.1 (+&amp;lt;a href=&amp;#34;http://search.msn.com/msnbot.htm)&amp;#34;&amp;gt;http://search.msn.com/msnbot.htm)&amp;lt;/a&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;FeedBurner/1.0 (&amp;lt;a href=&amp;#34;http://www.FeedBurner.com)&amp;#34;&amp;gt;http://www.FeedBurner.com)&amp;lt;/a&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Mozilla/5.0 (compatible; attributor/1.13.2 +&amp;lt;a href=&amp;#34;http://www.attributor.com)&amp;#34;&amp;gt;http://www.attributor.com)&amp;lt;/a&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;WebAlta Crawler/2.0 (&amp;lt;a href=&amp;#34;http://www.webalta.net/ru/about_webmaster.html)&amp;#34;&amp;gt;http://www.webalta.net/ru/about_webmaster.html)&amp;lt;/a&amp;gt; (Windows; U; Windows NT 5.1; ru-RU)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Yandex/1.01.001 (compatible; Win16; I)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;You get the idea. The bulk of these are search engines. Over two-thirds of the bot requests were from &lt;a href=&#34;http://help.yahoo.com/l/us/yahoo/search/webcrawler/&#34;&gt;Yahoo Slurp&lt;/a&gt;. Now, this struck me as weird. If I take the top 3 search engines that are sending traffic my way, &lt;/p&gt;
&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&amp;#160;&lt;/td&gt;&lt;td&gt;Referral %&lt;/td&gt;&lt;td&gt;Crawl %&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.google.com/&#34;&gt;Google&lt;/a&gt;&lt;/td&gt;&lt;td&gt;90%&lt;/td&gt;&lt;td&gt;24%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://search.yahoo.com/&#34;&gt;Yahoo&lt;/a&gt;&lt;/td&gt;&lt;td&gt;6%&lt;/td&gt;&lt;td&gt;66%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://search.live.com/&#34;&gt;Microsoft&lt;/a&gt;&lt;/td&gt;&lt;td&gt;3%&lt;/td&gt;&lt;td&gt;0.3%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Others&lt;/td&gt;&lt;td&gt;1%&lt;/td&gt;&lt;td&gt;9%&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;The search engine that sends me the most traffic is being reasonably conservative, while Yahoo is just eating up the bandwidth on my site. Actually, this shouldn&#39;t bother me too much. It&#39;s not taking up too much bandwidth, or even CPU usage, given that all the bots put together make up only 20% of my traffic. But somehow... it&#39;s sub-optimal. Inelegant, even.&lt;/p&gt;
&lt;p&gt;So I decided to take a closer look. Just how often are they crawling my site?&lt;/p&gt;
&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://search.yahoo.com/&#34;&gt;Yahoo&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;i&gt;Every 5 seconds&lt;/i&gt;&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.google.com/&#34;&gt;Google&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Every 13 seconds&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.dotnetdotcom.org/#info&#34;&gt;DotBot&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Every 9 minutes&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.cuill.com/twiceler/robot.html&#34;&gt;Cuill&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Every 9 minutes&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://search.live.com/&#34;&gt;Microsoft&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Every 18 minutes&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.FeedBurner.com&#34;&gt;Feedburner&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Every 18 minutes&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.attributor.com/&#34;&gt;Attributor&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Every 23 minutes&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.yandex.ru/&#34;&gt;Yandex&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Every 27 minutes&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;Look at those numbers. Yahoo is hitting my site once &lt;b&gt;&lt;i&gt;every 5 seconds&lt;/i&gt;&lt;/b&gt;. No wonder there&#39;s a help page at Yahoo titled &lt;a href=&#34;http://help.yahoo.com/l/us/yahoo/search/webcrawler/slurp-03.html&#34;&gt;How can I reduce the number of requests you make on my web site?&lt;/a&gt; I followed their advice and set the crawl-delay to 60, so at least it slows down to once a minute. &lt;/p&gt;
&lt;p&gt;Just that one little line change should (hopefully) reduce the load on my site by around 15%.&lt;/p&gt;
&lt;p&gt;As for the other engines, I don&#39;t mind that much in terms of load.&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Google, for all that it crawls every 13 seconds, has faithfully reported that it has only 11% of my site under its index, so I&#39;ve no idea what they&#39;re doing, but I&#39;m not complaining about the traffic that&#39;s coming my way.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&#34;http://www.dotnetdotcom.org/#info&#34;&gt;DotBot&lt;/a&gt;. Today was the first I&#39;d heard of them. Visited the site, and smiled. These guys can do all the crawling of my site that they like, and I hope something interesting comes out of their work.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&#34;http://www.cuill.com/twiceler/robot.html&#34;&gt;Cuill&lt;/a&gt;, sends me 0.2% of my traffic, but it&#39;s a new search engine, I&#39;m happy to give it time.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&#34;http://search.live.com/&#34;&gt;Microsoft&lt;/a&gt;&#39;s OK, sends me a tiny stream of traffic.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&#34;http://www.FeedBurner.com&#34;&gt;Feedburner&lt;/a&gt; is just pinging my RSS feed every 18 minutes. &lt;/li&gt;
  &lt;li&gt;&lt;a href=&#34;http://www.attributor.com/&#34;&gt;Attributor&lt;/a&gt; and &lt;a href=&#34;http://www.yandex.ru/&#34;&gt;Yandex&lt;/a&gt; I&#39;m hearing of for the first time, again. Not too much load on a system, so that&#39;s OK.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;p&gt;What&#39;s amazing is the sheer number of bots out there. Last month, I counted over 600 distinct &lt;a href=&#34;http://en.wikipedia.org/wiki/User_agent&#34;&gt;user-agent&lt;/a&gt; strings just representing bots. So it&#39;s true. The Web is &lt;a href=&#34;http://en.wikipedia.org/wiki/Semantic_web#Purpose&#34;&gt;no longer just for humans&lt;/a&gt;. We do need a &lt;a href=&#34;http://en.wikipedia.org/wiki/Semantic_Web&#34;&gt;Semantic Web&lt;/a&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;comments&#34;&gt;Comments&lt;/h2&gt;
&lt;!-- wp-comments-start --&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Dhar&lt;/strong&gt; &lt;em&gt;31 Aug 2008 9:09 pm&lt;/em&gt;:
Hmmm, curious as to:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Why the bots should crawl your site every 5 seconds or so?&lt;/li&gt;
&lt;li&gt;How you can find out how much of your site has been indexed by Google.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Cheers,
D.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;S Anand&lt;/strong&gt; &lt;em&gt;1 Sep 2008 12:11 am&lt;/em&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;I think Yahoo&amp;rsquo;s crawler is aggressive in any case. My site doesn&amp;rsquo;t seem to be an exception: there are a lot of threads discussing this problem.&lt;/li&gt;
&lt;li&gt;Google&amp;rsquo;s webmaster tools tells you how many URLs have been indexed from your sitemap.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- wp-comments-end --&gt;
</description>
    </item>
    <item>
      <title>HTTP download speeds</title>
      <link>https://www.s-anand.net/blog/http-download-speeds/</link>
      <pubDate>Wed, 25 Apr 2007 12:00:00 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/http-download-speeds/</guid>
      <description>&lt;p&gt;In some of the Web projects I&amp;rsquo;m working on, I have a choice of &lt;strong&gt;many small files vs few big files to download&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;There are conflicting arguments. I&amp;rsquo;ve read that &lt;a href=&#34;http://www.thinkvitamin.com/features/webapps/serving-javascript-fast&#34;&gt;many small files are better&lt;/a&gt;, because you can choose to use only the required files, and they&amp;rsquo;ll be cached across the site. (These are typically CSS or Javascript files.) On the other hand, a single large file takes less time to download than the sum on many small files, because there&amp;rsquo;s less latency. (&lt;a href=&#34;http://www.stuartcheshire.org/rants/Latency.html&#34;&gt;Latency is more important than bandwidth&lt;/a&gt; these days.)&lt;/p&gt;
&lt;p&gt;I ran some tests, and the answer is rather easy. The graph below shows the average time taken to download a file of size 1KB - 100KB.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.s-anand.net/blog/assets/flickr-http-load-times_472277744_o-png.webp&#34;&gt;&lt;img alt=&#34;Time to download a file of size ranging from 1KB - 100KB&#34; loading=&#34;lazy&#34; src=&#34;https://www.s-anand.net/blog/assets/flickr-http-load-times_472277744_o-png.webp&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The X-axis is the size of the file. The Y-axis is the number of milliseconds taken to download the file, averaged over 10 attempts on my home computer. (I did the same thing at work and at a client site. The results are similar.)&lt;/p&gt;
&lt;p&gt;The key thing is, it&amp;rsquo;s not linear. Larger files take less time. Specifically:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A file twice as big only takes 30% longer to load.&lt;/li&gt;
&lt;li&gt;Breaking a file into two parts takes 54% longer to load.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These days, it looks like &lt;strong&gt;few big files are better&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;To give you an example: my home page had the following components:&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;&lt;/th&gt;
          &lt;th&gt;Size (KB)&lt;/th&gt;
          &lt;th&gt;Load time (ms)&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;HTML&lt;/td&gt;
          &lt;td&gt;25&lt;/td&gt;
          &lt;td&gt;680&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;CSS&lt;/td&gt;
          &lt;td&gt;4&lt;/td&gt;
          &lt;td&gt;340&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Javascript&lt;/td&gt;
          &lt;td&gt;6&lt;/td&gt;
          &lt;td&gt;400&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Total&lt;/td&gt;
          &lt;td&gt;35&lt;/td&gt;
          &lt;td&gt;1420&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The total time for these 3 files would be about 1.4 seconds. Instead, if I put them all on one file&amp;hellip;&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;&lt;/th&gt;
          &lt;th&gt;Size (KB)&lt;/th&gt;
          &lt;th&gt;Load time (ms)&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;All-in-one&lt;/td&gt;
          &lt;td&gt;35&lt;/td&gt;
          &lt;td&gt;770&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The combined file takes only 0.77 seconds &amp;ndash; half the download time for split files. It&amp;rsquo;s a compelling argument to &lt;strong&gt;put all your CSS and Javascript (images, too, if possible) into a single page&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;But what if people visit multiple pages on my site, and lose the benefit of caching? Not really. The benefit of caching is small. By having a single file, I have 770 - 680 = 90 ms additional time for each HTML to load. But I don&amp;rsquo;t have to load the CSS and Javascript individually, which takes 740 seconds. The breakeven is about 740 / 90 = 8 page visits.&lt;/p&gt;
&lt;p&gt;So, on average, if people, visit more than 8 pages in my site, it&amp;rsquo;s worth breaking up the CSS and Javascript. But the average for my site is only 2 pages per person. (It&amp;rsquo;s a skewed distribution. Most, from Google, just visit one page. Few, from bookmarks, visit several pages. On average, it&amp;rsquo;s just over 2.) I&amp;rsquo;d argue that &lt;strong&gt;unless you&amp;rsquo;re using an external Javascript / CSS library (&lt;a href=&#34;http://prototypejs.org/&#34;&gt;prototype&lt;/a&gt;, etc.) or people view many pages each visit, you&amp;rsquo;re better of having a single HTML+Javascript+CSS file&lt;/strong&gt;.&lt;/p&gt;
</description>
    </item>
    <item>
      <title>Speed up your pages</title>
      <link>https://www.s-anand.net/blog/speed-up-your-pages/</link>
      <pubDate>Tue, 03 Jan 2006 12:00:00 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/speed-up-your-pages/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://bravenewword.typepad.com/brave_new_word/2005/11/web_developers_.html&#34;&gt;Speed up your pages&lt;/a&gt;.&lt;/p&gt;
</description>
    </item>
    <item>
      <title>Windows Live Local</title>
      <link>https://www.s-anand.net/blog/windows-live-local/</link>
      <pubDate>Thu, 08 Dec 2005 12:00:00 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/windows-live-local/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://local.live.com/&#34;&gt;Windows Live Local&lt;/a&gt; tries to match Google Maps. But Google Maps is just too fast. As I mentioned earlier (&lt;a href=&#34;https://www.s-anand.net/blog/why-google-reader/&#34;&gt;Why Google Reader&lt;/a&gt;): the reason I like Google is largely speed.&amp;gt;&lt;/p&gt;
</description>
    </item>
    <item>
      <title>Why Google Reader</title>
      <link>https://www.s-anand.net/blog/why-google-reader/</link>
      <pubDate>Thu, 20 Oct 2005 12:00:00 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/why-google-reader/</guid>
      <description>&lt;p&gt;I switched to &lt;a href=&#34;http://reader.google.com/&#34;&gt;Google Reader&lt;/a&gt; as my blog reader (I was using Mozilla so far). The reason was simple: speed. Thanks to the Google site&amp;rsquo;s speed and keyboard navigation, I can read blog entries 10 times faster. Now &lt;strong&gt;there&amp;rsquo;s&lt;/strong&gt; a unique proposition for Google that a lot of people are missing: that their site loads a whole lot faster than others. It makes a huge difference to the whole browsing experience.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;comments&#34;&gt;Comments&lt;/h2&gt;
&lt;!-- wp-comments-start --&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Dhar&lt;/strong&gt; &lt;em&gt;24 Oct 2005 9:38 am&lt;/em&gt;:
Anand, check out &lt;a href=&#34;http://www.groovy.com/&#34;&gt;Groovy&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dhar&lt;/strong&gt; &lt;em&gt;24 Oct 2005 9:38 am&lt;/em&gt;:
Sorry, it should be &lt;a href=&#34;http://www.goowy.com&#34;&gt;Goowy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;S Anand&lt;/strong&gt; &lt;em&gt;24 Oct 2005 2:26 pm&lt;/em&gt;:
Quite an app!&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- wp-comments-end --&gt;
</description>
    </item>
    <item>
      <title>Firefox prefetches Google results</title>
      <link>https://www.s-anand.net/blog/firefox-prefetches-google-results/</link>
      <pubDate>Fri, 01 Apr 2005 12:00:00 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/firefox-prefetches-google-results/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://googleblog.blogspot.com/2005/03/enhanced-searching-with-firefox.html&#34;&gt;Firefox prefetches Google results&lt;/a&gt;.&lt;/p&gt;
</description>
    </item>
    <item>
      <title>Gmail performance at 1GB</title>
      <link>https://www.s-anand.net/blog/gmail-performance-at-1gb/</link>
      <pubDate>Tue, 27 Jul 2004 12:00:00 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/gmail-performance-at-1gb/</guid>
      <description>&lt;p&gt;Kevin Rose tests &lt;a href=&#34;http://kevinrose.typepad.com/kr/2004/07/load_testing_gm.html&#34;&gt;gmail performance at 1 GB&lt;/a&gt;.&lt;/p&gt;
</description>
    </item>
  </channel>
</rss>
