<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0" 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   >
<channel>
    <title>Torrential Web Dev - AJAX</title>
    <link>http://torrentialwebdev.com/blog/</link>
    <description>Useful bits and pieces</description>
    <dc:language>en</dc:language>
    <generator>Serendipity 1.0.4 - http://www.s9y.org/</generator>
    <pubDate>Tue, 09 Oct 2007 17:30:35 GMT</pubDate>

    <image>
        <url>http://torrentialwebdev.com/blog/templates/default/img/s9y_banner_small.png</url>
        <title>RSS: Torrential Web Dev - AJAX - Useful bits and pieces</title>
        <link>http://torrentialwebdev.com/blog/</link>
        <width>100</width>
        <height>21</height>
    </image>

<item>
    <title>Steve Souders discusses high performance websites at FOWA</title>
    <link>http://torrentialwebdev.com/blog/archives/122-Steve-Souders-discusses-high-performance-websites-at-FOWA.html</link>
            <category>AJAX</category>
            <category>PHP Programming</category>
            <category>Programming</category>
            <category>Website Management</category>
    
    <comments>http://torrentialwebdev.com/blog/archives/122-Steve-Souders-discusses-high-performance-websites-at-FOWA.html#comments</comments>
    <wfw:comment>http://torrentialwebdev.com/blog/wfwcomment.php?cid=122</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>http://torrentialwebdev.com/blog/rss.php?version=2.0&amp;type=comments&amp;cid=122</wfw:commentRss>
    

    <author>nospam@example.com (Jonathan Street)</author>
    <content:encoded>
    I&#039;ve previously mentioned the work Steve Souders is doing evangelizing &lt;a href=&quot;http://torrentialwebdev.com/blog/archives/119-Benchmarks,-Site-Speed-and-User-Experience.html&quot; &gt;high performance websites&lt;/a&gt; at Yahoo! and I was very pleased to be able to hear him speak at the &lt;a href=&quot;http://torrentialwebdev.com/blog/archives/121-FOWA-Shoutout.html&quot; &gt;FOWA conference&lt;/a&gt;.  Sadly the video from that conference isn&#039;t going to be freely available and although the audio and slides will be freely available they are not yet available.&lt;br /&gt;
&lt;br /&gt;
Luckily he has previously recorded a video of a very similar (though not identical) presentation and I&#039;ve embedded it below.&lt;br /&gt;
&lt;br /&gt;
&lt;embed src=&#039;http://us.i1.yimg.com/cosmos.bcst.yahoo.com/player/media/swf/FLVVideoSolo.swf&#039; flashvars=&#039;id=3880720&amp;emailUrl=http%3A%2F%2Fvideo.yahoo.com%2Futil%2Fmail%3Fei%3DUTF-8%26vid%3D1040890&amp;imUrl=http%253A%252F%252Fvideo.yahoo.com%252Fvideo%252Fplay%253Fei%253DUTF-8%2526vid%253D1040890&amp;imTitle=Steve%2BSouders%253A%2B%2526quot%253BHigh%2BPerformance%2BWeb%2BSites%253A%2B14%2BRules%2Bfor%2BFaster%2BPages%2526quot%253B&amp;searchUrl=http://video.yahoo.com/search/video?p=&amp;profileUrl=http://video.yahoo.com/video/profile?yid=&amp;creatorValue=ZXJpY21pcmFnbGlh&amp;vid=1040890&#039; type=&#039;application/x-shockwave-flash&#039; width=&#039;425&#039; height=&#039;350&#039;&gt;&lt;/embed&gt;&lt;br /&gt;
&lt;br /&gt;
It&#039;s 37 minutes so for those in a hurry here are my notes from his presentation at FOWA.  &lt;br /&gt;
The key points have also been discussed in a series of blog posts so where possible I&#039;ll link out to the relevant posts.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Importance of the backend&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
The first point raised is that the &lt;a href=&quot;http://torrentialwebdev.com/blog/archives/119-Benchmarks,-Site-Speed-and-User-Experience.html&quot; &gt;user perception of load time&lt;/a&gt; is more important than the actual load time.  This means that the relevant metric is not how fast can the html document be returned to the browser but how quickly that html is rendered in the browser.  In measuring how quickly a page renders it was quickly realised that the backend performance, returning the html for the page, accounted for only about &lt;a href=&quot;http://yuiblog.com/blog/2006/11/28/performance-research-part-1/&quot; &gt;5% of the overall time it took to render the page&lt;/a&gt;.  Even with a full cache the backend was still only 13% of overall time.  &lt;br /&gt;
&lt;br /&gt;
Of the top 10 sites in the US only the backend for Google accounted for more than 20% of the load time with a full cache.  The Google homepage is so spartan that with a primed cache only two HTTP requests need to be made.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Cache Usage&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
The importance of the cache was then discussed with data presented discussing &lt;a href=&quot;http://yuiblog.com/blog/2007/01/04/performance-research-part-2/&quot; &gt;how many people at a site had a primed cache&lt;/a&gt;.  They inserted a one pixel image on the Yahoo! homepage and then monitored the number of HTTP requests with a 200 header (empty cache) and a 304 header (primed header).  &lt;br /&gt;
&lt;br /&gt;
It was found that 50% of daily users have an empty cache which accounts for 20% of daily pageviews.  This varies depending on the type of site, for example an empty cache accounts for fewer pageviews in a webmail site where each user will view multiple pages, but is broadly accurate.  The data highlights the importance of catering for those users without a primed cache.  Excessive use of images can&#039;t be justified by the assumption that once they are loaded the cached versions can be used.  50% of your users every day will be arriving at your site with an empty cache.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;iFrame&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Next he talked briefly about iFrames and how they can cause a 40-50 ms delay.  onLoad doesn&#039;t work until the iFrame source responds which can cause a problem with 3rd party content.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;YSlow&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Next he discussed YSlow which grades a website based on the &lt;a href=&quot;http://developer.yahoo.com/performance/rules.html&quot; &gt;14 rules&lt;/a&gt; developed through their research.  YSlow is an extension for Firebug the popular development extension for the Firefox browser.  It looks at how the page was built.  Despite looking at the content rather than the response time its score correlates well with the rendering time.  As such it could be a valuable tool during development to predict the speed of a site prior to its launch.&lt;br /&gt;
&lt;br /&gt;
Another issue which YSlow apparently solves is a bug in how Firebug charts HTTP requests.  Apparently Firebug will show queries to the cache as HTTP requests and YSlow patches this.&lt;br /&gt;
&lt;br /&gt;
That&#039;s all I made notes on.  I&#039;ve got vague memories of &lt;a href=&quot;http://yuiblog.com/blog/2007/04/11/performance-research-part-4/&quot; &gt;stepping HTTP requests&lt;/a&gt; to increase download speed and &lt;a href=&quot;http://yuiblog.com/blog/2007/03/01/performance-research-part-3/&quot; &gt;cookies&lt;/a&gt; are always worth considering but I picked up a nasty cold in London and it&#039;s all a bit fuzzy. 
    </content:encoded>

    <pubDate>Sun, 07 Oct 2007 14:01:00 +0000</pubDate>
    <guid isPermaLink="false">http://torrentialwebdev.com/blog/archives/122-guid.html</guid>
    
</item>
<item>
    <title>FOWA Shoutout</title>
    <link>http://torrentialwebdev.com/blog/archives/121-FOWA-Shoutout.html</link>
            <category>AJAX</category>
            <category>Misc</category>
            <category>PHP Programming</category>
            <category>Programming</category>
            <category>Web Tools</category>
    
    <comments>http://torrentialwebdev.com/blog/archives/121-FOWA-Shoutout.html#comments</comments>
    <wfw:comment>http://torrentialwebdev.com/blog/wfwcomment.php?cid=121</wfw:comment>

    <slash:comments>3</slash:comments>
    <wfw:commentRss>http://torrentialwebdev.com/blog/rss.php?version=2.0&amp;type=comments&amp;cid=121</wfw:commentRss>
    

    <author>nospam@example.com (Jonathan Street)</author>
    <content:encoded>
    After flying back to Edinburgh after attending the Future of Web Apps conference in London Thursday night and spending Friday catching up with work it&#039;s time for a round up of what happened.  There are a couple of topics I&#039;m going to go into greater detail on in future posts but here I present to you the exhibitors, speakers, sites and ideas worthy of mention.&lt;br /&gt;
&lt;br /&gt;
The conference kicked off with a keynote from Om Malik discussing &#039;What is the Future of Web Apps?&#039;  Mike Arrington from Techcrunch decided to gatecrash 15 minutes or so into the keynote.  The conversation that followed was interesting though with the pessimism from Om working well with Mikes optimism.  I&#039;ve been following Techcrunch for a while but have now added GigaOm for the potentially balancing effect.&lt;br /&gt;
&lt;br /&gt;
Ben Forsaith then demoed &#039;10 Real-world apps&#039; in 10 minutes.  Surprisingly 9 of the 10 worked without a problem.  The most interesting one was probably Buzzword which is a word processing app.  Online office products have been getting a lot of attention recently with available anywhere functionality playing against the more basic options.  Buzzwords really grabbed my attention because during the, admittedly short, demo it looked like it could wipe the floor with Microsoft Word when it came to handle images and altering the layout of the page.  I frequently have to break reports into 5 or more sections to maintain the layout so if buzzwords performs as well with large files as it did during the demo then it may be goodbye Word.  I haven&#039;t tried it yet but I&#039;ve bookmarked it to try later.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Site Speed and User Experience&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
As I mentioned in the &lt;a href=&quot;http://torrentialwebdev.com/blog/archives/119-Benchmarks,-Site-Speed-and-User-Experience.html&quot; &gt;Benchmarks, Site Speed and User Experience&lt;/a&gt; post the first speaker of the day following the keynotes was Steve Souders discussing &#039;High Performance Websites&#039;.  Watch for a post discussing this in more detail later.&lt;br /&gt;
&lt;br /&gt;
The quality of speakers stayed high throughout.  I think on the first day the most informative/interesting speakers came at the end with Heidi Pollock discussing mobile applications which is an area I haven&#039;t previously looked at and John Resig who talked about some of the really interesting things coming up in Firefox.&lt;br /&gt;
&lt;br /&gt;
On the evening of the first day Diggnation was filmed on the keynote stage in front of a packed audience.  I&#039;ve not watched diggnation before but it was absolutely hilarious live.  I think it is only available for premium members at the moment but if you know different let me know as I would like to see what the video version was like.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Day Two&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
From reading the schedule I wasn&#039;t as excited by the second day as I was by the first but there was no need for worry.  Simon Wardley got through 300 slides in 30 minutes with a highly engaging talk about commoditisation and utility computing.  John Aizen and Eran Shir discussed the semantic web from their work at &lt;a href=&quot;http://www.dapper.net/&quot; &gt;dapper&lt;/a&gt;.  Matt Biddulph from &lt;a href=&quot;http://www.dopplr.com/&quot; &gt;dopplr&lt;/a&gt; discussed smart integration with third party sites.  I&#039;ll be going into more detail on this later as well.  The final session I went to was with Dick Costolo from feedburner and focused more on the business side but was interesting all the same.  &lt;br /&gt;
&lt;br /&gt;
Unfortunately I had to leave before the final keynotes to catch my flight but overall I felt it was a very good conference.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Expo&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
In addition to the conference there was also the expo hall with some interesting exhibitors.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://fav.or.it/&quot; &gt;Fav.or.it&lt;/a&gt; may just have what it takes to lure me away from google reader.  It hasn&#039;t been officially launched yet but from what I saw during a demo it&#039;s a very interesting product.  It is also built on the Zend framework which makes it worthy of note from a PHP viewpoint.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.widr.co.uk/&quot; &gt;Widr&lt;/a&gt; sounded very promising.  It&#039;s a geolocation service for the internet.  It&#039;s going to potentially be more accurate than relying solely on the IP.  If I understand the product correctly though I suspect it will always be a niche product as the user needs to install software for it to work.  I suspect they also made a mistake in going for a .co.uk domain name rather than .com.  The product has global appeal so to me a .com makes more sense.&lt;br /&gt;
&lt;br /&gt;
Xcalibre launched their new &lt;a href=&quot;http://www.flexiscale.com/&quot; &gt;flexiscale&lt;/a&gt; product which is probably best described as competitor for Amazon S3 and EC2.  It looks like a very interesting product and from a technical perspective I suspect the better between the two but I worry that the strength of the British pound will make it less competitive on pricing.&lt;br /&gt;
&lt;br /&gt;
Finally I&#039;ll highlight &lt;a href=&quot;http://www.soup.io/&quot; &gt;soup.io&lt;/a&gt; which is a blogging platform for less serious content.  Probably best described as occupying the market between wordpress.com &lt;em&gt;et al&lt;/em&gt; and twitter &lt;em&gt;et al&lt;/em&gt;.  It&#039;s not something I plan on using myself but it looked like a nice product which I could recommend to less web savvy family and friends. 
    </content:encoded>

    <pubDate>Sat, 06 Oct 2007 15:18:22 +0000</pubDate>
    <guid isPermaLink="false">http://torrentialwebdev.com/blog/archives/121-guid.html</guid>
    
</item>
<item>
    <title>Xenu : Stats aggregation for any site</title>
    <link>http://torrentialwebdev.com/blog/archives/111-Xenu-Stats-aggregation-for-any-site.html</link>
            <category>AJAX</category>
            <category>PHP Programming</category>
            <category>Programming</category>
            <category>Web Tools</category>
    
    <comments>http://torrentialwebdev.com/blog/archives/111-Xenu-Stats-aggregation-for-any-site.html#comments</comments>
    <wfw:comment>http://torrentialwebdev.com/blog/wfwcomment.php?cid=111</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://torrentialwebdev.com/blog/rss.php?version=2.0&amp;type=comments&amp;cid=111</wfw:commentRss>
    

    <author>nospam@example.com (Jonathan Street)</author>
    <content:encoded>
    I&#039;ve &lt;a href=&quot;http://torrentialwebdev.com/blog/archives/87-Popuri.us-Stats-agregation-for-any-site.html&quot; &gt;previously mentioned popuri.us&lt;/a&gt; as one of the better examples of a website stats aggregator but I think my loyalty is switching to &lt;a href=&quot;http://www.viciao2k3.net/services/xinu/?lang=uk&quot; &gt;Xenu&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
It was initially flagged by techcrunch about a week ago.  At the time it was struggling under the onslaught of being highlighted both on techcrunch and elsewhere.  A few days later seomoz brought to my attention that the load had got so bad that the creator felt unable to cope and had released the source code to the community.  There are now 13 mirrors you can use including Italian, German, Bulgarian, French and Dutch versions.  &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Source Code&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
The backend is all PHP while the frontend relies heavily on javascript.  The source code is an interesting, though far from easy, read.  Some of the functionality is in my opinion needlessly excessive. I really don&#039;t see the point of being able to drag the stats boxes around the screen for instance.  The source code would also benefit from descriptive filenames.  Principally in the results folder where stats are returned by 46 files cunningly named 1-46.&lt;br /&gt;
&lt;br /&gt;
Despite this there are some real insights to be had for anyone interested in scraping these sorts of stats.  For instance a stunningly simple method to grab the alexa rank is used which I hadn&#039;t come across before.  It doesn&#039;t involve paying to access the API and you don&#039;t need to wrestle a css file into submission to extract the rank from the alexa site.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;The Spoiler&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
The alexa data is returned in file number 7.  Just in case you&#039;re not overly thrilled by the notion of opening all 46 files to find the one that accesses the service you&#039;re particularly interested in there is a useful key in the following file - js/general_without_encryption.js 
    </content:encoded>

    <pubDate>Sat, 21 Jul 2007 21:58:09 +0000</pubDate>
    <guid isPermaLink="false">http://torrentialwebdev.com/blog/archives/111-guid.html</guid>
    
</item>
<item>
    <title>Programming community on bumpzee</title>
    <link>http://torrentialwebdev.com/blog/archives/89-Programming-community-on-bumpzee.html</link>
            <category>AJAX</category>
            <category>Misc</category>
            <category>PHP Programming</category>
            <category>Programming</category>
    
    <comments>http://torrentialwebdev.com/blog/archives/89-Programming-community-on-bumpzee.html#comments</comments>
    <wfw:comment>http://torrentialwebdev.com/blog/wfwcomment.php?cid=89</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>http://torrentialwebdev.com/blog/rss.php?version=2.0&amp;type=comments&amp;cid=89</wfw:commentRss>
    

    <author>nospam@example.com (Jonathan Street)</author>
    <content:encoded>
    I&#039;ve been meaning to post about this since Cal Evans talked about the &lt;a href=&quot;http://devzone.zend.com/node/view/id/1920&quot; &gt;dzone site on the Zend Developer Zone&lt;/a&gt;.  Whereas dzone already has the participation of developers in languages other than PHP and is looking for PHP developers I&#039;m in somewhat of the opposite situation.&lt;br /&gt;
&lt;br /&gt;
Firstly some background.  Bumpzee is a site where people with similar interests can congregate in communities to share blog posts, &#039;bump&#039; them up digg-style, comment, start discussions and generally network with other people sharing their interests.  I joined the site a little while ago when there were only about 4 communities established.  Since then the site developers have been working hard to make the site better to the point where users are now able to establish their own communities.&lt;br /&gt;
&lt;br /&gt;
There wasn&#039;t anywhere to share my interest in programming and so I set up a new community.  I&#039;ve not really been involved with any language but PHP for over a year now and even then it was a relatively obscure language in academia which isn&#039;t that well know for active blogging so the community has a distinct PHP bias at the moment.&lt;br /&gt;
&lt;br /&gt;
To fully live up to the name I&#039;m looking to more fairly represent a variety of different languages and interests.  As such, if you regularly blog about programming, or even if you don&#039;t but want to read some of the best posts as voted for by the community, then head on over to the &lt;a href=&quot;http://www.bumpzee.com/programming/&quot; &gt;programming community on bumpzee&lt;/a&gt;. 
    </content:encoded>

    <pubDate>Mon, 16 Apr 2007 10:27:32 +0000</pubDate>
    <guid isPermaLink="false">http://torrentialwebdev.com/blog/archives/89-guid.html</guid>
    
</item>

</channel>
</rss>