<?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>JoeCascio.net &#187; publishing</title>
	<atom:link href="http://joecascio.net/joecblog/tag/publishing/feed/" rel="self" type="application/rss+xml" />
	<link>http://joecascio.net/joecblog</link>
	<description>Everyone is entitled to my opinion</description>
	<lastBuildDate>Fri, 06 Apr 2012 13:19:29 +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>Announcing SLAP</title>
		<link>http://joecascio.net/joecblog/2009/05/18/announcing-slap/</link>
		<comments>http://joecascio.net/joecblog/2009/05/18/announcing-slap/#comments</comments>
		<pubDate>Mon, 18 May 2009 23:39:20 +0000</pubDate>
		<dc:creator>JoeC</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[announcement]]></category>
		<category><![CDATA[distributed applications]]></category>
		<category><![CDATA[federation]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[microblogging]]></category>
		<category><![CDATA[protocol]]></category>
		<category><![CDATA[publishing]]></category>
		<category><![CDATA[rss]]></category>
		<category><![CDATA[slap]]></category>
		<category><![CDATA[subscribing]]></category>

		<guid isPermaLink="false">http://joecascio.net/joecblog/?p=244</guid>
		<description><![CDATA[SLAP &#8211; Simple Lightweight Announcement Protocol Today, to only two close developer friends, I&#8217;m releasing a first prototype of a new project called SLAP (for Simple Lightweight Announcement Protocol). We&#8217;re going to begin multi-server testing of it as soon as possible. If you&#8217;re not a developer, you may not immediately grasp exactly what SLAP is [...]]]></description>
			<content:encoded><![CDATA[<div class="entry">
<h3>SLAP &#8211; Simple Lightweight Announcement Protocol</h3>
<p>Today, to only two close developer friends, I&#8217;m releasing a first prototype of a new project called SLAP (for Simple Lightweight Announcement Protocol). We&#8217;re going to begin multi-server testing of it as soon as possible. If you&#8217;re not a developer, you may not immediately grasp exactly what SLAP is all about, but I&#8217;m hoping it will help all of us establish our own Social Networks of One, as Jeff Pulver calls it, and not be slaves to the whims of services like Twitter or Facebook, that now determine when and how we can communicate.</p>
<p>SLAP is a project I’ve been developing on and off for a couple of years. SLAP provides a very minimal and fast way to alert content or status subscribers that new or updated information is available, without them having to poll constantly for it.</p>
<p>By eliminating polling we benefit both the subscriber and the publisher. The subscriber gets informed of new content immediately, with no polling period latency and no resources of computing or bandwidth are expended between announcements. Likewise, the publisher does not need to provide sufficient bandwidth and computing resources to respond to polling requests, the vast majority of which result in no new information.</p>
<p>Unlike HTTP and XMPP, SLAP is connectionless, employing UDP (User Datagram Protocol) as its underlying transport mechanism. This is why no significant server or network resources are used between announcements. Although XMPP provides the same immediacy of delivery and elimination of polling, it requires long-lived connections to be maintained even if the frequency of announcements is very low, e.g., once a week. HTTP does not require long-lived connections, but instead requires establishing and terminating much TCP connection overhead in a short amount of time to deliver a very small amount of data.</p>
<h3>The SLAP model</h3>
<p>SLAP defines announcements in terms of feeds and posts to those feeds. Each feed is identified with a URI and each post with a perma-link URI. Further, each announcement is uniquely identified independently of the feed and post it is related to. This allows many announcements of the same feed and post. For example a post may be initially created, then edited many times, or commented on many times. Each edit or comment can result in a new announcement of a change to the post.</p>
<h3>Publishers and Subscribers</h3>
<p>There are two basic roles in the use-case model for SLAP; the Publisher and the Subscriber. The Publisher creates new feed content and emits a SLAP event every time that feed content changes that goes to every Subscriber. The Subscribers receive the announcements and respond with an acknowledgement. The announcements and acknowledgements are all delivered using UDP, which means no connection overhead for either the Publisher or the Subscriber. The protocol is tolerant of off-line Subscribers and noisy, unreliable networks. Publishers retry unacknowledged announcements at a fixed period and for a limited amount of time. One of the strengths of SLAP is that a missed announcement is not the end of the world. The Subscriber can periodically check the Publisher for all feed content and discover a missed post that way.</p>
<p>Strictly speaking, SLAP is not intended to deliver content, but only to announce that new or modified content is available on a feed and to provide the URIs for the feed and the post that allow the subscriber to fetch the content. SLAP does provide for a content summary that may in many cases be all the content there is. Microblogging or automated system status updates would tend to use this feature. In these cases, an attribute of the message could show that the summary is the entire post content. This is an optimization that enables a subscriber to avoid making a content fetch when the summary is all that there is.</p>
<p>Having the publisher be responsible and obligated for content storage allows a subscriber that has been offline for an amount of time to fetch any posts it missed simply by reading the feed as it normally would.</p>
<h3>Separation of subscribing and fetching from announcing</h3>
<p>The core SLAP messaging services deliver and acknowledge announcements, but play almost no part in establishing or terminating subscriptions. Nor do they specify how fetching of post content happens. Subscriptions can be established in any number of ways, as long as the required information for announcement delivery and authentication is provided. The subscription protocol is an open development issue, and your comments and suggestions are welcome. Personally, I see a simple extension to RSS as being the most obvious route. This would allow common blogging or microblogging applications like WordPress or Twitter to add announcement support with a relatively small modification to their current RSS support. RSS feeds could allow SLAP-enabled subscribers to discover the SLAP parameters and automatically connect to those feeds providing SLAP announcements.</p>
<h3>Authentication</h3>
<p>Any protocol that “pushes” information to a destination opens a possible hole for spammers. One of the challenges to making SLAP work is enabling subscribers to authenticate incoming announcement messages as to their source and to do it relatively quickly. This first version of SLAP uses a simple MD-5 hash of the message contents with a subscriber generated key that is exchanged at subscription time, ideally using secure communication.</p>
<h3>Try it, you’ll like it.</h3>
<p>SLAP can be used just for publishing, just for subscribing, or both. You’ll need to run it on a machine that you can open the firewall on, and receive UDP messages on ports 14947 for the subscriber and 14948 for the publisher. Or you can use any SLAP server that you’re given access to.</p></div>
]]></content:encoded>
			<wfw:commentRss>http://joecascio.net/joecblog/2009/05/18/announcing-slap/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>My take on blogger vs. journalist</title>
		<link>http://joecascio.net/joecblog/2009/03/01/my-take-on-blogger-vs-journalist/</link>
		<comments>http://joecascio.net/joecblog/2009/03/01/my-take-on-blogger-vs-journalist/#comments</comments>
		<pubDate>Sun, 01 Mar 2009 16:08:06 +0000</pubDate>
		<dc:creator>JoeC</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[bloggers]]></category>
		<category><![CDATA[credibility]]></category>
		<category><![CDATA[journalism]]></category>
		<category><![CDATA[publishing]]></category>

		<guid isPermaLink="false">http://joecascio.net/joecblog/?p=196</guid>
		<description><![CDATA[I had a brief interchange with Jeff Cutler on Twitter just now about the old bloggers-aren&#8217;t-journalists debate. This on the heels of listening to Daniel Schorr on NPR yesterday talk about how it&#8217;s disturbing to him that anyone can &#8220;publish&#8221; things on the internet and no editor or staff fact-checks it or holds it to [...]]]></description>
			<content:encoded><![CDATA[<p>I had a brief interchange with <a title="Jeff's Twitter page" href="http://twitter.com/jeffcutler" target="_blank">Jeff Cutler</a> on Twitter just now about the old bloggers-aren&#8217;t-journalists debate. This on the heels of listening to <a href="http://www.npr.org/templates/story/story.php?storyId=101265831" target="_blank">Daniel Schorr on NPR yesterday</a> talk about how it&#8217;s disturbing to him that anyone can &#8220;publish&#8221; things on the internet and no editor or staff fact-checks it or holds it to any journalistic standard.</p>
<p>For what it&#8217;s worth, I think journalists are unnerved and defensive because one of the mediums that they&#8217;re published on now is open to anyone to publish.  They seem to feel that this is unfair. Because their access to the web is controlled, they seem to feel everyone&#8217;s should be.</p>
<p>Mr. Schorr, on that same NPR show, said that the internet was like a market or bazaar where anyone can come and shout anything they want and be heard by anyone who cares to listen. This is a particularly apt analogy. If we apply it to journalists on the internet, we see that it&#8217;s like making them stand on a milk crate and announce the news on the street corner just like everyone else, whereas before they had special arrangements. They spoke from a balcony with a loudspeaker.</p>
<p>And that&#8217;s the inversion that I think not everyone appreciates. <em>It&#8217;s not so much that we, the bloggers have invaded the journalists&#8217; turf, it&#8217;s rather that they&#8217;re now forced to operate on ours.</em> A medium used to come with a certain implied or built-in credibility and certainly privilege. If you got to speak, it was sort of assumed that at least you had your facts more or less straight.</p>
<p>But access to a medium does not necessarily equate to credibility and really, it never has. Anyone with sufficient money can print their own newspaper. But just because something is printed on sheets of paper that look like a newspaper doesn&#8217;t mean it&#8217;s true. Trustworthy journalists and news institutions earned their stripes over the years by doing their jobs well and being proven out by facts and people&#8217;s real-world experiences.</p>
<p>I think journalists should believe in their own credibility a little more and realize that most of us out here reading things on the internet value reputation and track record just like we did before. Sure, there are still plenty of people who&#8217;ll choose the equivalent of the supermarket tabloid or Fox News, but you never had them anyway. It not that you&#8217;re standing on a street corner with everyone else that matters, it&#8217;s what you say when you get there.</p>
]]></content:encoded>
			<wfw:commentRss>http://joecascio.net/joecblog/2009/03/01/my-take-on-blogger-vs-journalist/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Decoupling publishing and notification</title>
		<link>http://joecascio.net/joecblog/2008/09/23/decoupling-publishing-and-notification/</link>
		<comments>http://joecascio.net/joecblog/2008/09/23/decoupling-publishing-and-notification/#comments</comments>
		<pubDate>Tue, 23 Sep 2008 15:49:48 +0000</pubDate>
		<dc:creator>JoeC</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Atom]]></category>
		<category><![CDATA[decoupling]]></category>
		<category><![CDATA[microblogging]]></category>
		<category><![CDATA[notification]]></category>
		<category><![CDATA[publishing]]></category>
		<category><![CDATA[xmpp]]></category>
		<category><![CDATA[XRDS]]></category>

		<guid isPermaLink="false">http://joecascio.net/joecblog/?p=39</guid>
		<description><![CDATA[There is renewed interest in trying to construct a microblogging platform using XMPP for the &#8220;push&#8221; or notification of followers. The Open Birdcage project is aiming to establish a full environment for an XMPP based microblogging service. Environment means the full stack necessary beginning from protocol and API definitions to server side and client side [...]]]></description>
			<content:encoded><![CDATA[<p>There is renewed interest in trying to construct a microblogging platform using XMPP for the &#8220;push&#8221; or notification of followers. The <a title="Open Birdcage Wiki site" href="http://trac.jwchat.org/open-birdcage/wiki/WikiStart" target="_blank">Open Birdcage</a> project is aiming to</p>
<blockquote><p>establish a full environment for an XMPP based microblogging service. Environment means the full stack necessary beginning from protocol and API definitions to server side and client side implementations.</p></blockquote>
<p>I am hoping that this project will also be able to make a distinction between publishing of content and notifying subscribers of the publishing event. This is a generally useful function that transcends microblogging. It would be a great boon to live-bloggers, news services, live-streaming video or any publishing endeavor where time is a factor.</p>
<p>I&#8217;ve written in this space previously about the idea of a <a title="Blog post on Personal Publishing" href="http://joecascio.net/joecblog/?p=27" target="_blank">personal publishing platform</a>. OpenBirdcage may give us the opportunity to decouple the notions of creating and posting content from the notion of notifying others that the new content is available.</p>
<p>In this decoupled model, you could choose a notification provider separate from your publishing provider, although certainly the two might be offered by the same site. In addition, you could choose multiple notification providers so if one failed, subscribers could simply fall over to one or more backup site.</p>
<p>This model would allow not only microblogs, but any web publisher to very rapidly notify subscribers of new or changed content without having to poll. Your personal identity and/or publishing site would present XRDS records allowing subscribers to discover your notification provider accounts, which could be totally distinct from your publishing provider.</p>
<p>XMPP publish-subscribe plus Atom is well-suited to this model. It would allow small content like microblog posts to be sent right in the notification, while links would be sent for larger content.</p>
]]></content:encoded>
			<wfw:commentRss>http://joecascio.net/joecblog/2008/09/23/decoupling-publishing-and-notification/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
<!-- This Quick Cache file was built for (  joecascio.net/joecblog/tag/publishing/feed/ ) in 0.26802 seconds, on May 22nd, 2012 at 6:04 am UTC. -->
<!-- This Quick Cache file will automatically expire ( and be re-built automatically ) on May 22nd, 2012 at 7:04 am UTC -->
