<?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>Platformability &#187; ajax</title>
	<atom:link href="http://blog.caplin.com/tag/ajax/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.caplin.com</link>
	<description>Single Dealer Platforms, Industry Expertise</description>
	<lastBuildDate>Fri, 03 Feb 2012 15:38:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>London Ajax Comet Panel video</title>
		<link>http://blog.caplin.com/2010/07/15/london-ajax-comet-panel-video/</link>
		<comments>http://blog.caplin.com/2010/07/15/london-ajax-comet-panel-video/#comments</comments>
		<pubDate>Thu, 15 Jul 2010 15:01:50 +0000</pubDate>
		<dc:creator>Martin Tyler</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Comet]]></category>

		<guid isPermaLink="false">http://blog.caplin.com/?p=3115</guid>
		<description><![CDATA[The video of the London Ajax Comet panel has now been posted along with some slides.. also Dylan has posted some photos he got an audience member to take too. Here are the links: London Ajax User Group: Comet Panel &#8211; 13/07/2010 from Skills Matter on Vimeo. Video/Slides: http://skillsmatter.com/podcast/ajax-ria/comet-panel/zx-486 Photos:...]]></description>
			<content:encoded><![CDATA[<p>The video of the London Ajax Comet panel has now been posted along with some slides.. also Dylan has posted some photos he got an audience member to take too.</p>
<p>Here are the links:</p>
<p><iframe src="http://player.vimeo.com/video/13344404?title=0&amp;byline=0&amp;portrait=0&amp;color=ffffff" width="400" height="300" frameborder="0"></iframe>
<p><a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3ZpbWVvLmNvbS8xMzM0NDQwNA==">London Ajax User Group: Comet Panel &#8211; 13/07/2010</a> from <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3ZpbWVvLmNvbS9za2lsbHNtYXR0ZXI=">Skills Matter</a> on <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3ZpbWVvLmNvbQ==">Vimeo</a>.</p>
<p>Video/Slides: http://skillsmatter.com/podcast/ajax-ria/comet-panel/zx-486</p>
<p>Photos: http://flickriver.com/photos/dylans/sets/72157624493006656/</p>
<p>Now you can see what a bunch of Comet vendor geeks look like!</p>
<p>Thanks again to Dylan and Skillsmatter for hosting the event.</p>
 <img src="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=3115" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.caplin.com/2010/07/15/london-ajax-comet-panel-video/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Evolution of Comet at Caplin</title>
		<link>http://blog.caplin.com/2010/04/16/evolution-of-comet-at-caplin/</link>
		<comments>http://blog.caplin.com/2010/04/16/evolution-of-comet-at-caplin/#comments</comments>
		<pubDate>Fri, 16 Apr 2010 11:45:26 +0000</pubDate>
		<dc:creator>Martin Tyler</dc:creator>
				<category><![CDATA[Software Architecture]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Browsers]]></category>
		<category><![CDATA[Comet]]></category>
		<category><![CDATA[WebSocket]]></category>

		<guid isPermaLink="false">http://blog.caplin.com/?p=2069</guid>
		<description><![CDATA[I have been blogging on CometDaily since before we started Platformability so thought I would take a look back and see if there was anything there that might be of interest to our Platformability audience. Early on in CometDaily&#8217;s lifetime I wrote a piece on the Evolution of Comet at...]]></description>
			<content:encoded><![CDATA[<p>I have been blogging on <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2NvbWV0ZGFpbHkuY29t">CometDaily</a> since before we started Platformability so thought I would take a look back and see if there was anything there that might be of interest to our Platformability audience.</p>
<p>Early on in CometDaily&#8217;s lifetime I wrote a piece on the <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2NvbWV0ZGFpbHkuY29tLzIwMDcvMTEvMzAvdGhlLWV2b2x1dGlvbi1vZi1jb21ldC1hdC1jYXBsaW4v">Evolution of Comet at Caplin</a> which covers how Caplin&#8217;s core technology has evolved since the start in 1997. The article was written in 2007, so I thought I would say how things have moved on since then.</p>
<p>The article finishes off talking about <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5jYXBsaW4uY29tL2NhcGxpbi10cmFkZXIucGhw">Caplin Trader</a> our Ajax trading front end framework. This is still a large focus for Caplin, but we have also expanded out. There is a lot of extra functionality on the backend that was developed along with Caplin Trader &#8211; higher level integration to Trading and Permissions for example. Although Caplin Trader allows you to host other RIA technologies within it, we also wanted to more openly support other client side technologies in their own right. So we worked on these APIs to create <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5jYXBsaW4uY29tL2NhcGxpbl94YXF1YS5waHA=">Caplin Xaqua</a> which is the full stack of our software, from backend integration APIs, through Liberator (and Comet) out to our StreamLink client APIs, which we expanded to include .Net, Silverlight and Flex.</p>
<p>Coming back to Comet, with the new client APIs and also new browsers and browser versions, we improved our coverage of Comet techniques to ensure the best possible connection is made for each scenario.</p>
<p>And the future? Well I have <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2Jsb2cuY2FwbGluLmNvbS8yMDEwLzA0LzEzL2h0bWw1LXdlYnNvY2tldC1mYWlsdXJlLXJhdGVzLw==">blogged about HTML 5 WebSockets</a> <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2Jsb2cuY2FwbGluLmNvbS8yMDEwLzAzLzAyL3doeS13ZS1kb250LW5lZWQtaHRtbDUtd2Vic29ja2V0Lw==">more than once</a> and to reiterate, it is a good new tool for Comet server implementers (rather than people developing web applications themselves) and i&#8217;m sure when the market share for browsers supporting WebSocket grows we will be adding the capability to <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5jYXBsaW4uY29tL2NhcGxpbl9saWJlcmF0b3IucGhw">Liberator</a> and <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5jYXBsaW4uY29tL1N0cmVhbUxpbmsucGhw">Streamlink</a>.</p>
 <img src="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=2069" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.caplin.com/2010/04/16/evolution-of-comet-at-caplin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interesting stuff coming out of MIX10</title>
		<link>http://blog.caplin.com/2010/03/17/interesting-stuff-coming-out-of-mix10/</link>
		<comments>http://blog.caplin.com/2010/03/17/interesting-stuff-coming-out-of-mix10/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 11:55:34 +0000</pubDate>
		<dc:creator>Patrick Myles</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Browsers]]></category>
		<category><![CDATA[IE6]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://blog.caplin.com/?p=1780</guid>
		<description><![CDATA[Microsoft&#8217;s MIX10 Developers and Designers conference is currently running in Las Vegas. Sadly I&#8217;m not attending as it sounds like lots of fun&#8230; There has been lots of buzz and some really interesting bits coming out so far including Silverlight 4 RC, Internet Explorer 9 preview (with HTML5 and CSS3...]]></description>
			<content:encoded><![CDATA[<p>Microsoft&#8217;s <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2xpdmUudmlzaXRtaXguY29tLw==" 0="target="_blank"">MIX10</a> Developers and Designers conference is currently running in Las Vegas. Sadly I&#8217;m not attending as it sounds like lots of fun&#8230;</p>
<p>There has been lots of buzz and some really interesting bits coming out so far including Silverlight 4 RC, Internet Explorer 9 preview (with HTML5 and CSS3 etc.), Windows phone information, etc.</p>
<p>Scott Hanselman has posted a <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5oYW5zZWxtYW4uY29tL2Jsb2cvTWl4MTBSb2xsdXBQb3N0LmFzcHg=" 0="target="_blank"">great roundup</a> of the announcements and keynotes.</p>
 <img src="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1780" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.caplin.com/2010/03/17/interesting-stuff-coming-out-of-mix10/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The banking exodus from IE6 begins?</title>
		<link>http://blog.caplin.com/2010/03/02/the-banking-exodus-from-ie6-begins/</link>
		<comments>http://blog.caplin.com/2010/03/02/the-banking-exodus-from-ie6-begins/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 17:22:12 +0000</pubDate>
		<dc:creator>Patrick Myles</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Trading Technology]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Browsers]]></category>
		<category><![CDATA[IE6]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://blog.caplin.com/?p=1543</guid>
		<description><![CDATA[We&#8217;ve all seen the retail and consumer space push to ditch IE6 gathering pace over the last 6 months, including a petition to the UK government and Google&#8217;s announcement that their online productivity suite stopped supporting IE6 yesterday. But the corporates (and specifically banking)  have been a lot more reluctant...]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve all seen the retail and consumer space push to ditch IE6 gathering pace over the last 6 months, including a <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL25ld3MuYmJjLmNvLnVrLzEvaGkvdGVjaG5vbG9neS84NDkyODYyLnN0bQ==" 0="target="_blank"">petition to the UK government</a> and Google&#8217;s announcement that their online productivity suite <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL25ld3MuY25ldC5jb20vODMwMS0zMDY4NF8zLTEwNDQ0NTc0LTI2NS5odG1s" 0="target="_blank"">stopped supporting IE6 yesterday</a>. But the corporates (and specifically banking)  have been a lot more reluctant to follow suit. But is this about to change?</p>
<p>Rumour on the street has it that, finally, the investment banks are going to start abandoning IE6. Barclays are allegedly going to do an enterprise-wide rollout of IE8 in Q2 of this year (put back from Q3 last year). Even more surprising (and impressive) is a rumour that Standard Bank of South Africa are going to ditch Microsoft browsers completely and move to Chrome for their corporate standard!</p>
 <img src="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1543" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.caplin.com/2010/03/02/the-banking-exodus-from-ie6-begins/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Why we don&#8217;t need HTML5 WebSocket</title>
		<link>http://blog.caplin.com/2010/03/02/why-we-dont-need-html5-websocket/</link>
		<comments>http://blog.caplin.com/2010/03/02/why-we-dont-need-html5-websocket/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 16:28:32 +0000</pubDate>
		<dc:creator>Martin Tyler</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Comet]]></category>
		<category><![CDATA[Real-time web]]></category>
		<category><![CDATA[WebSocket]]></category>

		<guid isPermaLink="false">http://blog.caplin.com/?p=1461</guid>
		<description><![CDATA[I was going to blog about HTML5 WebSocket last week, but got side tracked. In the meantime Greg Wilkins wrote an excellent piece covering some of what I wanted to say &#8211; http://blogs.webtide.com/gregw/entry/websocket_chat The idea of WebSocket is sound &#8211; it should get past some of the limitations of the...]]></description>
			<content:encoded><![CDATA[<p>I was going to blog about HTML5 WebSocket last week, but got side tracked. In the meantime Greg Wilkins wrote an excellent piece covering some of what I wanted to say &#8211; http://blogs.webtide.com/gregw/entry/websocket_chat</p>
<p>The idea of WebSocket is sound &#8211; it should get past some of the limitations of the various Comet techniques used today on various real time websites. It gives you full duplex communication between a browser and a server &#8211; Comet fakes this somewhat, but in most cases it is sufficient.</p>
<p>Some people seem to think that WebSocket is going to mean no more Comet servers and no more frameworks for real time data. But as Greg points out, WebSocket just doesn&#8217;t give you enough.<br />
<span id="more-1461"></span><br />
<strong>I see three main issues with WebSocket, or rather its uptake by web developers.</strong></p>
<p><strong>1. Browser support</strong></p>
<p>We still have to deal with IE6 at the moment and WebSocket is not supported yet in the current browsers (apart from Chrome). So when can a web developer realistically rely on WebSocket being available for the majority of his users? This is likely to remain an issue for a long time.</p>
<p><strong>2. Proxy support</strong></p>
<p>WebSocket through proxies are a fairly unknown quantity &#8211; WebSocket is designed to fail cleanly so falling back to another mechanism is possible. However we don&#8217;t really know how many proxies will work with WebSocket. This includes server side proxies, which are often overlooked and are usually out of the control of the server side developer.</p>
<p><strong>3. Features</strong></p>
<p>What I am referring to here are the low level features that Greg talks about. His blog demonstrates that you cannot just take the simple WebSocket API and write a real time application (other than a demo) without taking into account the kind of edge cases he describes. Without this a web application could appear unstable for many users.</p>
<p>Taking all this into account, what is WebSocket good for? Who should use it?</p>
<p><strong>Conclusion</strong></p>
<p>Application developers use frameworks that hide issues and allow them to concentrate on their application, not the infrastructure. Frameworks can handle the error cases and implement various fallback methods for when WebSocket doesn&#8217;t work or an old browser is being used &#8211; there are free and commercial frameworks offering this.</p>
<p>So in this sense while Websocket will not improve web applications directly, it is something that framework developers can use to improve their frameworks &#8211; consequently improving those web applications that use the frameworks.</p>
 <img src="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1461" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.caplin.com/2010/03/02/why-we-dont-need-html5-websocket/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>When were you when Tendulkar scored 200?</title>
		<link>http://blog.caplin.com/2010/02/24/when-were-you-when-tendulkar-scored-200/</link>
		<comments>http://blog.caplin.com/2010/02/24/when-were-you-when-tendulkar-scored-200/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 14:59:09 +0000</pubDate>
		<dc:creator>Martin Tyler</dc:creator>
				<category><![CDATA[Real-time web]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Comet]]></category>

		<guid isPermaLink="false">http://blog.caplin.com/?p=1464</guid>
		<description><![CDATA[No, that title isn&#8217;t a typo. Today, the little master, Sachin Tendulkar scored 200 runs in an ODI, the first time that has happened. That&#8217;s cricket in case you were wondering. Cricket is played all round the world most of the year round, which means there are often games happening...]]></description>
			<content:encoded><![CDATA[<p>No, that title isn&#8217;t a typo. Today, the little master, Sachin Tendulkar scored 200 runs in an ODI, the first time that has happened. That&#8217;s cricket in case you were wondering.</p>
<p>Cricket is played all round the world most of the year round, which means there are often games happening while you are sitting at your desk at work &#8211; or maybe you don&#8217;t have Sky Sports and have to follow the scores online even when at home. </p>
<p>So what do most people do? You sit there working while one of your browser tabs is open on http://www.cricinfo.com updating you with the scores. There are other sites too, but from my experience CricInfo&#8217;s ball by ball approach gives me the most information.</p>
<p><span id="more-1464"></span></p>
<p>This is fine when England play Bangladesh, or even for an Ashes match against the old foe Australia for most of the game. However, when it gets to a crucial part of the game &#8211; which happened a number of times in the classic 2005 Ashes series or when India play Pakistan (both having a huge number of supporters) &#8211; CricInfo and many other websites grind to a halt. In fact, due to CricInfo&#8217;s multi server caching setup sometimes the page reloads and has gone back in time!</p>
<p><strong>That&#8217;s just not cricket!</strong></p>
<p>Back to today&#8217;s game, India are playing South Africa in a 50 over game, two of the top sides in world cricket. Being English I didn&#8217;t have CricInfo open for this game, but when, on Twitter, I heard noises that Tendulkar was doing something a bit special I opened CricInfo and saw he was on 193, 1 run from the record and 7 runs from a milestone 200! </p>
<p>I clicked on &#8216;Full Scorecard&#8217; to see more details of the innings, it took a while to load and when it came up it said he was on 139! I went back and no, he was on 196. The live page then updated and he was on 198, it updated again and he was on 196. It got to the point where he was on 199 needing just 1 run and about 2 overs to go and nothing happened. Cricket fans all over the world were madly clicking refresh, but every time it reloaded it was the same. </p>
<p>I went back to Twitter, searched on <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3R3aXR0ZXIuY29tLyNzZWFyY2g/cT0lMjNjcmlja2V0">#cricket</a> and all was revealed, probably within a couple of seconds of the actual event happening.</p>
<p>So what is the problem here? I wanted to see the rich, ball by ball, information on CricInfo, but the service could not cope. Twitter, and other similar services are designed to cope with this kind of load. CricInfo and other sports sites are not, but could they be?</p>
<p><strong>The Real-time Web</strong></p>
<p>There are certainly a lot of things they could do to help that don&#8217;t involve buying more servers and more bandwidth. CricInfo&#8217;s page reloads a 25k frame every 20 seconds &#8211; a ball is bowled roughly every 40 seconds in a cricket match. How much data on that page changes with each ball? 250 bytes maybe or a bit more at the end of each over, let&#8217;s be generous and call it 512 bytes, ie 1/50th of the whole page reloading. Can you see where I am going here?</p>
<p>The Real-time Web is a term banded about regarding lots of things these days, to me it means live data. That means you see new data when it happens, not the next time you check, not the next time the browser checks for you &#8211; that isn&#8217;t real-time. </p>
<p>It may be better than old style search engines that had to spend hours or days crawling the web to find new content before it was available in a search, but it still isn&#8217;t real-time until you are updated automatically.</p>
<p>When were you when Tendulkar scored 200? Unfortunately, I was a few minutes behind!</p>
 <img src="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1464" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.caplin.com/2010/02/24/when-were-you-when-tendulkar-scored-200/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Silverlight and Flex versus Ajax</title>
		<link>http://blog.caplin.com/2009/12/21/silverlight-and-flex-versus-ajax/</link>
		<comments>http://blog.caplin.com/2009/12/21/silverlight-and-flex-versus-ajax/#comments</comments>
		<pubDate>Mon, 21 Dec 2009 12:32:13 +0000</pubDate>
		<dc:creator>Phil Leggetter</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Trading Technology]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://blog.caplin.com/?p=921</guid>
		<description><![CDATA[On November 10th Caplin and Finextra sponsored a webcast discussing issues surrounding single-dealer portals in capital markets. We have the highlights and while much of the discussion was purely business focused, part III discusses the emergence of Ajax versus Flex and Silverlight. It&#8217;s a very interesting topic and there&#8217;s been...]]></description>
			<content:encoded><![CDATA[<p>On November 10th Caplin and Finextra sponsored a webcast discussing issues surrounding single-dealer portals in capital markets. We have the highlights and while much of the discussion was purely business focused, part III discusses the emergence of <em>Ajax versus Flex and Silverlight</em>. It&#8217;s a very interesting topic and there&#8217;s been much debate over <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5sZWdnZXR0ZXIuY28udWsvMjAwOS8xMS8wNy93aGljaC1yaWNoLWludGVybmV0LWFwcGxpY2F0aW9uLXRlY2hub2xvZ3ktd2lsbC1kb21pbmF0ZS5odG1s">which RIA technology will dominate</a> with various ways of looking at what determines technology choice.</p>
<p>From a business point of view the conversation gets interesting when Kevin Bourne asks &#8220;do you not want to see a point where people want 100% of the choice but all out of the can with a library of applications that they can then tailor much more specifically to what they want to deliver to their clients?&#8221;</p>
<p><object width="425" height="344" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/KEzbQJfKA6Y&amp;hl=en_GB&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed width="425" height="344" type="application/x-shockwave-flash" src="http://www.youtube.com/v/KEzbQJfKA6Y&amp;hl=en_GB&amp;fs=1&amp;" allowFullScreen="true" allowscriptaccess="always" allowfullscreen="true" /></object></p>
<p>You can see the other highlight videos on the <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy55b3V0dWJlLmNvbS91c2VyL0NhcGxpblN5c3RlbXNMb25kb24=">Caplin Systems You Tube Channel</a>.</p>
<p>You can also download a full transcript of the event:<br />
<a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2Jsb2cuY2FwbGluLmNvbS9kb3dubG9hZHMvQlVZRVJTJTIwTUFSS0VUJTIwJUUyJTgwJTkzJTIwU0lOR0xFJTIwREVBTEVSJTIwUE9SVEFMUyUyMEFORCUyMENPVVJUSU5HJTIwVEhFJTIwT05MSU5FJTIwQ0w=">Buyers Market – Single Dealer Portals and Courting the Online Client</a></p>
 <img src="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=921" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.caplin.com/2009/12/21/silverlight-and-flex-versus-ajax/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Rumours of Comet&#8217;s Death Have Been Greatly Exaggerated</title>
		<link>http://blog.caplin.com/2009/12/17/the-rumours-of-comets-death-have-been-greatly-exaggerated/</link>
		<comments>http://blog.caplin.com/2009/12/17/the-rumours-of-comets-death-have-been-greatly-exaggerated/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 13:09:29 +0000</pubDate>
		<dc:creator>Adam Iley</dc:creator>
				<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Real-time web]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Comet]]></category>
		<category><![CDATA[WebSocket]]></category>

		<guid isPermaLink="false">http://blog.caplin.com/?p=887</guid>
		<description><![CDATA[Joe Armstrong in a recent blog post (which made it to reddit) announces the coronation of HTML 5 websockets now that Google has added them to Chrome. He&#8217;s also pleased to relegate Comet, long polling and its friends to the grave. This confuses comet with the techniques used to achieve...]]></description>
			<content:encoded><![CDATA[<p>Joe Armstrong in a recent <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2FybXN0cm9uZ29uc29mdHdhcmUuYmxvZ3Nwb3QuY29tLzIwMDkvMTIvY29tZXQtaXMtZGVhZC1sb25nLWxpdmUtd2Vic29ja2V0cy5odG1s">blog post</a> (which made it to <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5yZWRkaXQuY29tL3IvcHJvZ3JhbW1pbmcvY29tbWVudHMvYWZiZHovY29tZXRfaXNfZGVhZF9sb25nX2xpdmVfd2Vic29ja2V0cy8=">reddit</a>) announces the coronation of HTML 5 websockets now that Google has added them to Chrome. He&#8217;s also pleased to relegate Comet, long polling and its friends to the grave. This confuses comet with the techniques used to achieve it.</p>
<p><span id="more-887"></span></p>
<p>Back when Alex Russell coined the term Comet, he talked in terms of what it was possible for browsers of the time to do &#8211; holding open HTTP connections, but it&#8217;s obvious from <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2FsZXguZG9qb3Rvb2xraXQub3JnLzIwMDYvMDMvY29tZXQtbG93LWxhdGVuY3ktZGF0YS1mb3ItdGhlLWJyb3dzZXIv">his post</a> that he was thinking of any of a family of techniques for pushing data to the web browser.</p>
<p>Here at Caplin, part of our Xaqua platform is a world leading comet server called Liberator. According to Joe, that part of our offering is about to be outdone by websockets. In actual fact, we&#8217;ve been waiting and hoping for websockets for a long time, not because they will replace comet, but because they will make the comet experience better. When we first played with a websocket implementation (<a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3RlY2gua2FhemluZy5jb20vZG9jdW1lbnRhdGlvbi9pbmRleC5odG1s">Kaazing&#8217;s websocket server</a>), we were excited about using them but since there had been no indication back then that any browser was going to support them natively, we held off.</p>
<p>Our streaming comet server, Liberator accepts connections from Flash, .Net, Java clients and native clients, but it can also use a plethora of different techniques to allow web browsers to connect, from <strong>applets</strong> with direct socket connections (hardly used at all now), to <strong>long polling</strong>, <strong>multipart-replace</strong> techniques, or simple <strong>long running XHRs</strong> or <strong>forever frames</strong> (many of these techniques are described <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Db21ldF8lMjhwcm9ncmFtbWluZyUyOSNJbXBsZW1lbnRhdGlvbnM=">here</a>). There are others too &#8211; <strong>server sent events</strong>, etc. Each of these techniques has different benefits, different firewall traversal characteristics and many of them only work in a subset of the browsers we support. As with any well architected Comet server, different techniques can be plugged in, new ones can be created easily, and the best one for any situation can be selected automatically for establishing the connection.</p>
<p>Websockets will not change any of this. It will provide yet another substrate option for our Comet connection to run over, one that will have some benefits over many of the other techniques, and once we have implemented it, it will be automatically used where appropriate. The fact that it&#8217;s so far only supported by development versions of Chrome will mean that that will be less than 10% of the time, but we can hope that more browsers will follow suit.</p>
<p>Nor is providing a connection the full extent of any Comet server worth its salt. Liberator provides robust failover when the connection goes down, session management, and a full pub/sub engine and javascript API.</p>
<p>The key to Comet is that the normal interaction between browser and server is turned on its head; the browser gets told about events as and when they occur, rather than having to specifically ask (and this is a vital ingredient for the <a  href="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5sZWdnZXR0ZXIuY28udWsvMjAwOS8xMS8xNC93aHktY29tZXQtaXMta2V5LXRvLXRoZS10cnVseS1yZWFsLXRpbWUtd2ViLmh0bWw=">real time web</a>). Comet makes no demands that we use a particular method to achieve this, and we have a huge armoury that we will continue expanding as browsers advance.</p>
<p>Far from heralding the death of Comet, websockets will make Comet faster, easier and simpler.</p>
 <img src="http://blog.caplin.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=887" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.caplin.com/2009/12/17/the-rumours-of-comets-death-have-been-greatly-exaggerated/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

