<?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>Backdrifter &#187; xmpp</title>
	<atom:link href="http://www.backdrifter.com/tags/xmpp/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.backdrifter.com</link>
	<description>The personal site of Jared Hanson</description>
	<lastBuildDate>Tue, 22 Jun 2010 22:16:08 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Brett Slatkin on PubSubHubbub</title>
		<link>http://www.backdrifter.com/2009/10/19/brett-slatkin-on-pubsubhubbub/</link>
		<comments>http://www.backdrifter.com/2009/10/19/brett-slatkin-on-pubsubhubbub/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 04:01:44 +0000</pubDate>
		<dc:creator>Jared Hanson</dc:creator>
				<category><![CDATA[Unknown]]></category>
		<category><![CDATA[mozillalabs]]></category>
		<category><![CDATA[pubsubhubbub]]></category>
		<category><![CDATA[xmpp]]></category>

		<guid isPermaLink="false">http://www.backdrifter.com/?p=147</guid>
		<description><![CDATA[Continuing in the series of entries derived from my notes taken during Mozilla Labs October meetup, this post covers Brett Slatkin&#8217;s talk about PubSubHubbub.  PubSubHubbub is a simple publish/subscribe protocol for turning Atom and RSS feeds into real-time streams.
The publish/subscribe paradigm is commonly found throughout software engineering.  In essence, a component of a [...]]]></description>
			<content:encoded><![CDATA[<p>Continuing in the <a href="http://www.backdrifter.com/2009/10/15/brad-fitzpatrick-on-webfinger/">series</a> of entries derived from my notes taken during <a href="http://labs.mozilla.com/">Mozilla Labs</a> October <a href="http://www.meetup.com/Mozilla-Labs-Meetup/calendar/11472113/">meetup</a>, this post covers <a href="http://www.google.com/profiles/bslatkin">Brett Slatkin</a>&#8217;s talk about <a href="http://code.google.com/p/pubsubhubbub/">PubSubHubbub</a>.  PubSubHubbub is a simple <a href="http://en.wikipedia.org/wiki/Publish/subscribe">publish/subscribe</a> protocol for turning <a href="http://en.wikipedia.org/wiki/Atom_(standard)">Atom</a> and <a href="http://en.wikipedia.org/wiki/RSS">RSS</a> feeds into real-time streams.</p>
<p>The publish/subscribe paradigm is commonly found throughout software engineering.  In essence, a component of a system publishes events as it performs its tasks.  For example, a video encoder would post an event when it has completed encoding.</p>
<p>Separate components register as subscribers, and receive notice when an event occurs.  In our example, a content management system could take the encoded video and publish it to a website.  Meanwhile, a separate component could email the director to inform him that his video is available online.</p>
<p>A broker in the middle (a &#8220;hub&#8221; in PubSubHubbub terminology) is responsible for delivering published events to any interested subscribers.  This decoupling creates a flexible architecture, in which separate components are isoloted and can evolve independently.</p>
<p><span id="more-147"></span></p>
<p>There have been many attempts to define a standard publish/subscribe protocol in the past, including the <a href="http://xmpp.org/extensions/xep-0060.html">XEP-0060</a> extension to <a href="http://xmpp.org/">XMPP</a>, <a href="http://www.amqp.org/">AMQP</a>, competing WS-* efforts, and <a href="http://www.restms.org/">RestMS</a> (which I&#8217;m unfamiliar with and need to research).  None of these protocols have achieved widespread adoption.  PubSubHubbub is an attempt which initially appears like it may have a better fate.</p>
<p>Architecturally, PubSubHubbub is decentralized and designed to scale to the size of the web.  Because of this, it doesn&#8217;t suffer from any slow down or failure at a central point.  I found the touting of this benefit quite humorous given the location of the meetup at <a href="http://twitter.com/">Twitter</a>&#8217;s headquarters.</p>
<p>One of the potential limitation of the protocol, however, is that it is server-to-server only.  It operates on the backend, and is not attempting to reach the last mile to desktops or mobile phones.  I suspect that this drawback could eventually work in favor of XEP-0060, which could act as a compliment to PubSubHubbub by filling this gap.</p>
<p>Interestingly, Brett remarked on how slowly the web actually changes.  He revealed that the egress from the <a href="http://pubsubhubbub.appspot.com/">reference hub</a> on <a href="http://code.google.com/appengine/">App Engine</a> is only 24Kb/second, including all of <a href="http://www.blogger.com/">Blogger</a>, <a href="http://www.livejournal.com/">LiveJournal</a>, and <a href="http://friendfeed.com/">FriendFeed</a>.  Taken at face value, this is a remarkably low figure.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.backdrifter.com/2009/10/19/brett-slatkin-on-pubsubhubbub/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTTP-based Protocol to Replace IMAP?</title>
		<link>http://www.backdrifter.com/2008/08/05/http-based-protocol-to-replace-imap/</link>
		<comments>http://www.backdrifter.com/2008/08/05/http-based-protocol-to-replace-imap/#comments</comments>
		<pubDate>Wed, 06 Aug 2008 05:16:21 +0000</pubDate>
		<dc:creator>Jared Hanson</dc:creator>
				<category><![CDATA[Unknown]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[http]]></category>
		<category><![CDATA[imap]]></category>
		<category><![CDATA[xmpp]]></category>
		<category><![CDATA[xmppsummit5]]></category>

		<guid isPermaLink="false">http://www.backdrifter.com/?p=104</guid>
		<description><![CDATA[During a discussion at XMPP Summit 5, it was briefly suggested that XMPP could serve as a replacement for IMAP, a standard protocol for accessing electronic mailboxes and messages.  While there are some optimizations that could be achieved with XMPP, IMAP is a well-entrenched protocol that will be around for decades to come.
I had [...]]]></description>
			<content:encoded><![CDATA[<p>During a discussion at <a href="http://www.xmpp.org/summit/summit5.shtml">XMPP Summit 5</a>, it was briefly suggested that <a href="http://en.wikipedia.org/wiki/XMPP">XMPP</a> could serve as a replacement for <a href="http://en.wikipedia.org/wiki/Internet_Message_Access_Protocol">IMAP</a>, a standard protocol for accessing electronic mailboxes and messages.  While there are some optimizations that could be achieved with XMPP, IMAP is a well-entrenched protocol that will be around for decades to come.</p>
<p>I had a brief conversation with <a href="http://weblogs.mozillazine.org/dmose/">Dan Mosedale</a>, of the <a href="http://www.mozillamessaging.com/">Mozilla Messaging</a> crew, where I stated my stance that such a replacement is non-pragmatic.  He suggested something interesting: most mail access today is not via IMAP, but via the web.</p>
<p><span id="more-104"></span></p>
<p>That is a perspective I hadn&#8217;t considered, but it is certainly true.  Most people receive email through <a href="http://www.microsoft.com/">Microsoft</a>, <a href="http://www.yahoo.com/">Yahoo</a>, <a href="http://www.google.com/">Google</a>, or <a href="http://www.aol.com/">AOL</a>.  Through the use of <a href="http://en.wikipedia.org/wiki/AJAX">Ajax</a> techniques, much of this mail is being delivered over HTTP.  It is by no means a stretch to imagine IMAP being replaced by an HTTP-based protocol, given an effort to standardize the data format transmitted in the requests and responses.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.backdrifter.com/2008/08/05/http-based-protocol-to-replace-imap/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
