<?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>David R. MacIver &#187; labour saving</title>
	<atom:link href="http://www.drmaciver.com/tag/labour-saving/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.drmaciver.com</link>
	<description></description>
	<lastBuildDate>Tue, 07 Feb 2012 11:12:29 +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>Shaving yaks and finding feeds</title>
		<link>http://www.drmaciver.com/2009/12/shaving-yaks-and-finding-feeds/</link>
		<comments>http://www.drmaciver.com/2009/12/shaving-yaks-and-finding-feeds/#comments</comments>
		<pubDate>Sun, 06 Dec 2009 13:06:49 +0000</pubDate>
		<dc:creator>david</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[labour saving]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.drmaciver.com/?p=3704</guid>
		<description><![CDATA[So I had some interesting ideas I wanted to play with to do with keeping on top of streams of information. Of course, I needed some streams of information to keep on top of in order to do this. I decided to go with my RSS feeds (the other obvious source being twitter). To do [...]]]></description>
			<content:encoded><![CDATA[<p>So I had some interesting ideas I wanted to play with to do with keeping on top of streams of information.</p>
<p>Of course, I needed some streams of information to keep on top of in order to do this. I decided to go with my RSS feeds (the other obvious source being twitter).</p>
<p>To do that I needed a database of feed entries. So I created a small program to do that (I really should just have used feed-bag, but there were some things I wanted to tweak and integrate so I didn&#8217;t).</p>
<p>Unfortunately for whatever reason I ended up with a lot of URLs that pointed to sites or something invalid in my opml. I&#8217;m not sure offhand if this was an import problem or a problem in the google reader export. </p>
<p>So, I thought, let&#8217;s do our damnedest to correct URLs: If it points to a site do feed discovery, follow redirects, etc. It can&#8217;t be that hard.</p>
<p>Cue me getting very angry. Suffice it to say, if you do what I did and foolishly expect people on the web to follow standards you are very mistaken. </p>
<p>Anyway, after much hacking around trying to get this to work I decided to codify the various tricks into a library so you don&#8217;t have to share my anger. I&#8217;ve called this library <a href="http://github.com/DRMacIver/feedify">feedify</a>. This is very rude of me as there&#8217;s another ruby library called feedify, but given that it hit 0.0.1 in january 2008 and never updated since then I don&#8217;t feel too bad about stomping on its namespace. </p>
<p>Additionally I&#8217;ve put up an http interface to it. If you go to http://feedify.merobe.com/feed/(some url) then it will try to find a feed associated with that URL and redirect you to it. You can also run this service yourself &#8211; it&#8217;s included in the github project.</p>
<p>This is all very rough and liable to change at the moment. If you have any bug reports of URLs it misses or gets wrong I&#8217;d be very interested to receive them.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.drmaciver.com/2009/12/shaving-yaks-and-finding-feeds/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

