<?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/"
	xmlns:media="http://search.yahoo.com/mrss/"
>

<channel>
	<title>Yabfog &#187; opml</title>
	<atom:link href="http://yabfog.com/blog/tag/opml/feed" rel="self" type="application/rss+xml" />
	<link>http://yabfog.com/blog</link>
	<description>Yet another blog full of gas</description>
	<lastBuildDate>Tue, 17 Apr 2012 18:51:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
<cloud domain='yabfog.com' port='80' path='/blog/?rsscloud=notify' registerProcedure='' protocol='http-post' />
		<item>
		<title>Fun with River2</title>
		<link>http://yabfog.com/blog/2011/02/11/fun-with-river2</link>
		<comments>http://yabfog.com/blog/2011/02/11/fun-with-river2#comments</comments>
		<pubDate>Fri, 11 Feb 2011 06:39:45 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[dde]]></category>
		<category><![CDATA[fixes]]></category>
		<category><![CDATA[opml]]></category>
		<category><![CDATA[palemoon]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[river2]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://yabfog.com/blog/?p=91778558</guid>
		<description><![CDATA[I decided to install Dave Winer's River2 to supplement my usual feed reading. Now that I can access it via its smart use of Dropbox, it should be good for feeds that I don't feel like I need to see every headline. One of the things I love about River2 is that it's an app [...]]]></description>
			<content:encoded><![CDATA[<p>I decided to install Dave Winer's <a href="http://newsriver.org/river2.html">River2</a> to supplement my usual feed reading. Now that I can access it via its smart use of Dropbox, it should be good for feeds that I don't feel like I need to see every headline.</p>
<p>One of the things I love about River2 is that it's an app that runs in the <a href="http://editor.opml.org/">OPML Editor</a>, which means that it is endlessly hackable and (apropos to this post) you can fix your own bugs.</p>
<p>So here's a bug report. And fix. (Actually, it could be a workaround for a bug in another application, as I explain below).</p>
<ol>
<li>What I was doing: From the <code><strong>Tools > River2 > Pages</strong></code> menu, I selected a page to view (any one, it's the same bug no matter which page).</li>
<li>What I expected to happen: I expected the selected page to open in my default web browser, <a href="http://www.palemoon.org/">Pale Moon</a> (a Windows-optimized build of Firefox)</li>
<li>What actually happened: Nothing. Not even an error dialog.</li>
</ol>
<p>I immediately suspected that the problem was the communication between the OPML Editor and the Pale Moon browser. After all, there was a major bug for the longest time in Firefox's DDE implementation that required a workaround.</p>
<p>Bottom line: the OPML Editor's DDE implementation expects that the DDE service name is the same as the name of the executable with the filename suffix removed. So, for Excel, the service name is "excel," and for Firefox it's "firefox." But the service name is determined by the application, and the Pale Moon developers decided that its service name would be "Pale Moon," not "palemoon." A simple patch to <code>system.verbs.builtins.webBrowser.openURL</code> resolves the problem.</p>
<pre>
if string.lower (id) contains "palemoon" { // 2/11/11; 12:09:06 AM by DJM
	ddeName = "Pale Moon";
	return (webBrowser.callBrowser (ddeName, "WWW_OpenURL", s+",,0,0,,,,"))}
</pre>
<p>The function <code>webBrowser.callBrowser</code> expects ddeName to be the name of the executable, from which it attempts to remove the ".exe" suffix. Luckily, if the function is passed any string without an ".exe" suffix, it just accepts the passed string as the DDE service name.</p>
<p>Here's the full context:</p>
<p><a href="http://yabfog.com/blog/wp-content/uploads/2011/02/openurl.png"><img src="http://yabfog.com/blog/wp-content/uploads/2011/02/openurl-300x233.png" alt="system.verbs.builtins.webBrowser.openURL" title="system.verbs.builtins.webBrowser.openURL" width="300" height="233" class="size-medium wp-image-91778559" /></a></p>
<p>That ",,0,0,,,," nonsense is part of the DDE message that Pale Moon expects:</p>
<p><a href="http://yabfog.com/blog/wp-content/uploads/2011/02/palemoondde.png"><img src="http://yabfog.com/blog/wp-content/uploads/2011/02/palemoondde-288x300.png" alt="Pale Moon DDE" title="Pale Moon DDE" width="288" height="300" class="alignnone size-medium wp-image-91778571" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://yabfog.com/blog/2011/02/11/fun-with-river2/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://yabfog.com/blog/wp-content/uploads/2011/02/openurl-150x150.png" />
		<media:content url="http://yabfog.com/blog/wp-content/uploads/2011/02/openurl.png" medium="image">
			<media:title type="html">openurl</media:title>
			<media:thumbnail url="http://yabfog.com/blog/wp-content/uploads/2011/02/openurl-150x150.png" />
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/uploads/2011/02/palemoondde.png" medium="image">
			<media:title type="html">Pale Moon DDE</media:title>
			<media:thumbnail url="http://yabfog.com/blog/wp-content/uploads/2011/02/palemoondde-150x150.png" />
		</media:content>
	</item>
		<item>
		<title>Optimal Browser Status Update</title>
		<link>http://yabfog.com/blog/2010/10/10/optimal-browser-status-update</link>
		<comments>http://yabfog.com/blog/2010/10/10/optimal-browser-status-update#comments</comments>
		<pubDate>Mon, 11 Oct 2010 01:59:34 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[announcements]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[opml]]></category>
		<category><![CDATA[optimal]]></category>

		<guid isPermaLink="false">http://yabfog.com/blog/?p=91778549</guid>
		<description><![CDATA[I've been extremely annoyed with and concerned about Optimal's usage pattern that I've observed in the server logs. I had shut it down for a while to see if anyone noticed. No one did -- except me. I wanted to see this OPML of all the BBC's news feeds, so I turned Optimal back on. [...]]]></description>
			<content:encoded><![CDATA[<p>I've been extremely annoyed with and concerned about Optimal's usage pattern that I've observed in the server logs. I had shut it down for a while to see if anyone noticed. No one did -- except me. I wanted to see <a href="http://optimalbrowser.com/optimal.php?url=http%3A%2F%2Fnews.bbc.co.uk%2Frss%2Ffeeds.opml&#038;submit=Submit">this OPML of all the BBC's news feeds</a>, so I turned Optimal back on. But I will be blacklisting spammers and malware purveyors from now on.</p>
]]></content:encoded>
			<wfw:commentRss>http://yabfog.com/blog/2010/10/10/optimal-browser-status-update/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>XM Podcasts</title>
		<link>http://yabfog.com/blog/2007/12/14/xm-podcasts</link>
		<comments>http://yabfog.com/blog/2007/12/14/xm-podcasts#comments</comments>
		<pubDate>Fri, 14 Dec 2007 19:13:02 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[opml]]></category>
		<category><![CDATA[podcast]]></category>
		<category><![CDATA[ron and fez]]></category>
		<category><![CDATA[xm]]></category>

		<guid isPermaLink="false">http://yabfog.com/blog/2007/12/14/xm-podcasts</guid>
		<description><![CDATA[Cool! XM satellite radio is making some of its programming available as free podcasts. Beginning December 11, you can download XM content hosted by Bob Edwards, James Carville, Mike Krzyzewski, Barry Switzer and Opie &#038; Anthony. But what really excites me is XM Unmasked, hosted by the extraordinarily funny Ron Bennington. [ Expand All &#124; [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://yabfog.com/blog/wp-content/uploads/2007/12/180px-ronandfezonxm.jpg' alt='Ron and Fez' class='alignright'/>Cool! XM satellite radio is making some of its programming available as <a href="http://www.xmradio.com/podcast/index.xmc">free podcasts</a>. <a href="http://xmradio.mediaroom.com/index.php?s=press_releases&#038;item=1546">Beginning December 11</a>, you can download XM content hosted by Bob Edwards, James Carville, Mike Krzyzewski, Barry Switzer and Opie &#038; Anthony. But what really excites me is XM Unmasked, hosted by the extraordinarily funny <a href="http://en.wikipedia.org/wiki/Ron_and_Fez">Ron Bennington</a>.</p>
<div class="optimalAllExpandCollapse">[ <span onclick="javascript:expandAll('optimal-4fbb473010b6b');" class="optimalTarget">Expand All</span> | <span onclick="javascript:collapseAll('optimal-4fbb473010b6b');" class="optimalTarget">Collapse All</span> ]</div>
<div class="opmlPage">
  <ul class="main" id="optimal-4fbb473010b6b">
		<li class="outlineItemNode"><span onclick="optimalToggleNode('oi-id51693554', 'true', 'http://yabfog.com/blog/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Frss.streamos.com%2Fstreamos%2Frss%2Fgenfeed.php%3Ffeedid%3D639%26groupname%3Dxmsatelliteradio&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id51693554" src="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"/></span><span><a href="http://rss.streamos.com/streamos/rss/genfeed.php?feedid=639&amp;groupname=xmsatelliteradio"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"/></a><a href="www.xmradio.com">XM Artist Confidential: Green Room</a></span><ul id="oi-id51693554" class="outlineList depth1" style="display:none;"><li class="outlineItemNodeSub"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt=""/>Loading....</li></ul></li>
		<li class="outlineItemNode"><span onclick="optimalToggleNode('oi-id51693827', 'true', 'http://yabfog.com/blog/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Frss.streamos.com%2Fstreamos%2Frss%2Fgenfeed.php%3Ffeedid%3D641%26groupname%3Dxmsatelliteradio&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id51693827" src="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"/></span><span><a href="http://rss.streamos.com/streamos/rss/genfeed.php?feedid=641&amp;groupname=xmsatelliteradio"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"/></a><a href="www.xmradio.com">XM Weekly Music</a></span><ul id="oi-id51693827" class="outlineList depth1" style="display:none;"><li class="outlineItemNodeSub"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt=""/>Loading....</li></ul></li>
		<li class="outlineItemNode"><span onclick="optimalToggleNode('oi-id51712119', 'true', 'http://yabfog.com/blog/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Frss.streamos.com%2Fstreamos%2Frss%2Fgenfeed.php%3Ffeedid%3D591%26groupname%3Dxmsatelliteradio&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id51712119" src="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"/></span><span><a href="http://rss.streamos.com/streamos/rss/genfeed.php?feedid=591&amp;groupname=xmsatelliteradio"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"/></a><a href="http://www.xmradio.com">Bob Edwards Weekend</a></span><ul id="oi-id51712119" class="outlineList depth1" style="display:none;"><li class="outlineItemNodeSub"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt=""/>Loading....</li></ul></li>
		<li class="outlineItemNode"><span onclick="optimalToggleNode('oi-id51670522', 'true', 'http://yabfog.com/blog/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Frss.streamos.com%2Fstreamos%2Frss%2Fgenfeed.php%3Ffeedid%3D642%26groupname%3Dxmsatelliteradio&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id51670522" src="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"/></span><span><a href="http://rss.streamos.com/streamos/rss/genfeed.php?feedid=642&amp;groupname=xmsatelliteradio"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"/></a><a href="www.xmradio.com">Opie and Anthony Shorts</a></span><ul id="oi-id51670522" class="outlineList depth1" style="display:none;"><li class="outlineItemNodeSub"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt=""/>Loading....</li></ul></li>
		<li class="outlineItemNode"><span onclick="optimalToggleNode('oi-id51670577', 'true', 'http://yabfog.com/blog/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Frss.streamos.com%2Fstreamos%2Frss%2Fgenfeed.php%3Ffeedid%3D644%26groupname%3Dxmsatelliteradio&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id51670577" src="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"/></span><span><a href="http://rss.streamos.com/streamos/rss/genfeed.php?feedid=644&amp;groupname=xmsatelliteradio"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"/></a><a href="www.xmradio.com">XM Unmasked</a></span><ul id="oi-id51670577" class="outlineList depth1" style="display:none;"><li class="outlineItemNodeSub"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt=""/>Loading....</li></ul></li>
		<li class="outlineItemNode"><span onclick="optimalToggleNode('oi-id51670534', 'true', 'http://yabfog.com/blog/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Frss.streamos.com%2Fstreamos%2Frss%2Fgenfeed.php%3Ffeedid%3D588%26groupname%3Dxmsatelliteradio&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id51670534" src="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"/></span><span><a href="http://rss.streamos.com/streamos/rss/genfeed.php?feedid=588&amp;groupname=xmsatelliteradio"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"/></a><a href="http://www.xmradio.com/">Basketball And Beyond with Coach K</a></span><ul id="oi-id51670534" class="outlineList depth1" style="display:none;"><li class="outlineItemNodeSub"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt=""/>Loading....</li></ul></li>
		<li class="outlineItemNode"><span onclick="optimalToggleNode('oi-id51670551', 'true', 'http://yabfog.com/blog/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Frss.streamos.com%2Fstreamos%2Frss%2Fgenfeed.php%3Ffeedid%3D592%26groupname%3Dxmsatelliteradio&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id51670551" src="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"/></span><span><a href="http://rss.streamos.com/streamos/rss/genfeed.php?feedid=592&amp;groupname=xmsatelliteradio"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"/></a><a href="http://www.xmradio.com">XM Sports Nation This Morning: Barry Switzer</a></span><ul id="oi-id51670551" class="outlineList depth1" style="display:none;"><li class="outlineItemNodeSub"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt=""/>Loading....</li></ul></li>
		<li class="outlineItemNode"><span onclick="optimalToggleNode('oi-id51665993', 'true', 'http://yabfog.com/blog/wp-content/plugins/optimal/optimal.php?url=http%3A%2F%2Frss.streamos.com%2Fstreamos%2Frss%2Fgenfeed.php%3Ffeedid%3D619%26groupname%3Dxmsatelliteradio&amp;node=rss');" style="cursor: pointer; text-decoration: none; border: none; margin-right: 3px;"><img name="img-oi-id51665993" src="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" style="text-decoration: none; border: none;" alt="[+/-]" title="[+/-]"/></span><span><a href="http://rss.streamos.com/streamos/rss/genfeed.php?feedid=619&amp;groupname=xmsatelliteradio"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" alt="XML" title="XML RSS Feed" style="margin-right: 3px; text-decoration: none; border: none;"/></a><a href="www.xmradio.com">60/20 Sports test feed</a></span><ul id="oi-id51665993" class="outlineList depth1" style="display:none;"><li class="outlineItemNodeSub"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" style="text-decoration: none; border: none; margin-right: 3px;" alt=""/>Loading....</li></ul></li>
		</ul>
</div>
<div class="optimalSourceLink"><a href="http://yabfog.com/opml0/XMpodcasts.opml"><img src="http://yabfog.com/blog/wp-content/plugins/optimal/img/opml.gif" alt="Source OPML" title="Source OPML"/></a></div>

<p>Hmmm... looks like I really need to work on the OPML browser. </p>
]]></content:encoded>
			<wfw:commentRss>http://yabfog.com/blog/2007/12/14/xm-podcasts/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://yabfog.com/blog/wp-content/uploads/2007/12/180px-ronandfezonxm.jpg" />
		<media:content url="http://yabfog.com/blog/wp-content/uploads/2007/12/180px-ronandfezonxm.jpg" medium="image">
			<media:title type="html">Ron and Fez</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" medium="image">
			<media:title type="html">[+/-]</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" medium="image">
			<media:title type="html">XML RSS Feed</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" medium="image" />
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" medium="image">
			<media:title type="html">[+/-]</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" medium="image">
			<media:title type="html">XML RSS Feed</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" medium="image" />
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" medium="image">
			<media:title type="html">[+/-]</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" medium="image">
			<media:title type="html">XML RSS Feed</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" medium="image" />
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" medium="image">
			<media:title type="html">[+/-]</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" medium="image">
			<media:title type="html">XML RSS Feed</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" medium="image" />
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" medium="image">
			<media:title type="html">[+/-]</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" medium="image">
			<media:title type="html">XML RSS Feed</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" medium="image" />
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" medium="image">
			<media:title type="html">[+/-]</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" medium="image">
			<media:title type="html">XML RSS Feed</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" medium="image" />
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" medium="image">
			<media:title type="html">[+/-]</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" medium="image">
			<media:title type="html">XML RSS Feed</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" medium="image" />
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/imgCollapsed.gif" medium="image">
			<media:title type="html">[+/-]</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/feed-icon-12x12.gif" medium="image">
			<media:title type="html">XML RSS Feed</media:title>
		</media:content>
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/indicator_arrows_circle.gif" medium="image" />
		<media:content url="http://yabfog.com/blog/wp-content/plugins/optimal/img/opml.gif" medium="image">
			<media:title type="html">Source OPML</media:title>
		</media:content>
	</item>
		<item>
		<title>Comments on OPML 2 expanded Attribute</title>
		<link>http://yabfog.com/blog/2007/08/31/comments-on-opml-2-expanded-attribute</link>
		<comments>http://yabfog.com/blog/2007/08/31/comments-on-opml-2-expanded-attribute#comments</comments>
		<pubDate>Fri, 31 Aug 2007 15:40:02 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[opml]]></category>

		<guid isPermaLink="false">http://yabfog.com/wp/2007/08/31/comments-on-opml-2-expanded-attribute/</guid>
		<description><![CDATA[In response to Dave's proposal to add an expanded attribute to the OPML 2.0 spec, I have the following thoughts. Typo: "Its optional" should be "It's optional" As a general matter, I'm not convinced that this belongs in the spec. It seems to me that display properties are the application's problem, not the file format's. [...]]]></description>
			<content:encoded><![CDATA[<p>In response to <a href="http://www.scripting.com/stories/2007/08/31/proposalForExpandedAttribu.html">Dave's proposal</a> to add an <code>expanded</code> attribute to the OPML 2.0 spec, I have the following thoughts.</p>
<ol>
<li><s>Typo: "Its optional" should be "It's optional"</s></li>
<li>As a general matter, I'm not convinced that this belongs in the spec. It seems to me that display properties are the application's problem, not the file format's. Others have complained about the <code>expansionState</code> element for the same reason -- of course, that's a spec legacy and eliminating it would cause breakage so I'm not suggesting eliminating <code>expansionState</code>. But why further muddle the OPML spec? If a particular application needs to store the expansion state on a per node level, then why not create a new namespace attribute (or use an existing one)?</li>
<li>If the <code>expanded</code> attribute is added to the OPML spec, I suppose there will be a forumlaic relationship between it and the <code>expansionState</code> element. In other words, given a certain <code>expansionState</code> state, I will be able to calculate the <code>expanded</code> attribute for each node, and vice versa. Query:
<ul>
<li>If <code>expansionState</code> is given, may a processor ignore the <code>expanded</code> attributes?</li>
<li>If <code>expanded</code> attributes are given, may (or must) <code>expansionState</code> be given?</li>
<li>Is it a validation error if both <code>expansionState</code> and <code>expanded</code> attributes are given, but they are inconsistent with one another?</li>
</ul>
</li>
</ol>
<p>My 2 cents.</p>
]]></content:encoded>
			<wfw:commentRss>http://yabfog.com/blog/2007/08/31/comments-on-opml-2-expanded-attribute/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
	</item>
		<item>
		<title>Leash and Feedparser</title>
		<link>http://yabfog.com/blog/2007/06/03/leash-and-feedparser</link>
		<comments>http://yabfog.com/blog/2007/06/03/leash-and-feedparser#comments</comments>
		<pubDate>Mon, 04 Jun 2007 02:26:21 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[opml]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://yabfog.com/wp/2007/06/03/leash-and-feedparser/</guid>
		<description><![CDATA[Maybe I'll write up something a little more formal in the future. For now, I just want to publish this in case it's useful to someone. Les Orchard posted a blurb that indicated that he was looking for a PHP class to perform HTTP requests with conditional GET support. Well, a while ago I was [...]]]></description>
			<content:encoded><![CDATA[<p>Maybe I'll write up something a little more formal in the future. For now, I just want to publish this in case it's useful to someone.</p>
<p><a href="http://blogs.opml.org/decafbad/2007/05/21#When:10:05:41PM">Les Orchard posted a blurb</a> that indicated that he was looking for a PHP class to perform HTTP requests with conditional GET support. Well, a while ago I was looking for that, too. Because I was working on a replacement for Magpie RSS (see below), I decided to use <a href="http://snoopy.sourceforge.net/">Snoopy</a> as my HTTP client. I then wrote a brief extension, Leash, to provide a cache-enabled front end to Snoopy. Leash automatically caches the HTTP results, the time of the request, and the Last Modified and Etag HTTP headers. When you request a page you've previously requested, Leash first checks to see if the cached copy is older than the maximum cache age you've specified (or the default of 1 hour), and if the cache is too old, Leash performs a conditional GET. The <a href="https://code.yabfog.com/svn/feedparser/trunk/class.leash.php">latest version of Leash</a> (which I bundle with Snoopy) is in my Subversion repository.</p>
<p>Also in that repository is my replacement for <a href="http://magpierss.sourceforge.net/">Magpie RSS</a>. I always liked Magpie, but it didn't quite work for me and I also wanted an OPML parser. So I wrote one. Actually, first I wrote a <a href="https://code.yabfog.com/svn/feedparser/trunk/class.xmlparseintoarray.php">generic PHP XML parser</a>. Then I wrote the <a href="https://code.yabfog.com/svn/feedparser/trunk/class.opmlparse.php">OPML parser</a> and <a href="https://code.yabfog.com/svn/feedparser/trunk/class.feedparse.php">Feed parser</a>.</p>
<p>Sorry, but I currently don't have time for documentation. Or support. That probably makes this of very limited utility to all but the most daring. If you're a PHP junkie, you'll probably be able to peruse the code and get the gist. And here's <a href="http://yabfog.com/files/podcast-add.phps">an example of how I'm using it to help manage my podcasts</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://yabfog.com/blog/2007/06/03/leash-and-feedparser/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>Done</title>
		<link>http://yabfog.com/blog/2007/02/28/done</link>
		<comments>http://yabfog.com/blog/2007/02/28/done#comments</comments>
		<pubDate>Wed, 28 Feb 2007 21:11:39 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[opml]]></category>

		<guid isPermaLink="false">http://yabfog.com/wp/2007/02/28/done/</guid>
		<description><![CDATA[I'm remapped. That was like a flashback to elementary school, getting called out by the teacher in front of the whole class! Thanks, Dave.]]></description>
			<content:encoded><![CDATA[<p>I'm <a href="http://www.scripting.com/2007/02/28.html#headsupOnAServiceChange">remapped</a>. That was like a flashback to elementary school, getting called out by the teacher in front of the whole class! <img src='http://yabfog.com/blog/wp-includes/images/smilies/icon_redface.gif' alt=':oops:' class='wp-smiley' /> </p>
<p>Thanks, Dave.</p>
]]></content:encoded>
			<wfw:commentRss>http://yabfog.com/blog/2007/02/28/done/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>OPML Workstation Now IntelligentTeams</title>
		<link>http://yabfog.com/blog/2007/01/31/opml-workstation-now-intelligentteams</link>
		<comments>http://yabfog.com/blog/2007/01/31/opml-workstation-now-intelligentteams#comments</comments>
		<pubDate>Wed, 31 Jan 2007 15:01:17 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[opml]]></category>

		<guid isPermaLink="false">http://yabfog.com/wp/2007/01/31/opml-workstation-now-intelligentteams/</guid>
		<description><![CDATA[I guess I missed it, but at some point in the past few months OPML Workstation relaunched or rebranded itself IntelligentTeams. Maybe it was a soft launch? I don't know. Maybe I'm just not as tuned in anymore. IntelligentTeams looks like a LAMP-based OPML Community Server (but I have no idea what the underlying technology [...]]]></description>
			<content:encoded><![CDATA[<p>I guess I missed it, but at some point in the past few months <a href="http://opmlworkstation.com/">OPML Workstation</a> relaunched or rebranded itself <a href="http://intelligentteams.com/default/">IntelligentTeams</a>. Maybe it was a soft launch? I don't know. Maybe I'm just not as tuned in anymore.</p>
<p>IntelligentTeams looks like a <abbr title="Linux-Apache-MySQL-Perl/PHP/Python">LAMP</abbr>-based <a href="http://support.opml.org/2005/11/16">OPML Community Server</a> (but I have no idea what the underlying technology is).  It's pretty rough around the edges -- a lot of new windows opening, jarring full page refreshes, links to external site to provide certain functionality -- but it's workable. Check out this <a href="http://intelligentteams.com/browse/InternetLawPolitics/">page from John Palfrey</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://yabfog.com/blog/2007/01/31/opml-workstation-now-intelligentteams/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>Microsoft Outlook 2007 Supports OPML</title>
		<link>http://yabfog.com/blog/2006/12/21/microsoft-outlook-2007-supports-opml</link>
		<comments>http://yabfog.com/blog/2006/12/21/microsoft-outlook-2007-supports-opml#comments</comments>
		<pubDate>Thu, 21 Dec 2006 17:50:23 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[opml]]></category>
		<category><![CDATA[outlook]]></category>
		<category><![CDATA[rss]]></category>

		<guid isPermaLink="false">http://yabfog.com/wp/2006/12/21/microsoft-outlook-2007-supports-opml/</guid>
		<description><![CDATA[Not that I'll ever use it, but it looks like Microsoft is supporting the use of OPML subscription lists in Outlook 2007. I tried NewsGator's Outlook extension, and I think Outlook is the worst conceivable way to consume the large volume of information I have in my modestly sized subscription list. But at least Microsoft [...]]]></description>
			<content:encoded><![CDATA[<p>Not that I'll ever use it, but it looks like Microsoft is supporting the use of <a href="http://office.microsoft.com/en-us/outlook/HA012299511033.aspx">OPML subscription lists in Outlook 2007</a>. I tried <a href="http://www.newsgator.com/NGOLProduct.aspx?ProdID=NewsGator+Inbox">NewsGator</a>'s Outlook extension, and I think Outlook is the worst conceivable way to consume the large volume of information I have in my modestly sized subscription list. But at least Microsoft is going to let Outlook users get their subscription lists out of Outlook (and into a better aggregator). They even have a <a href="http://office.microsoft.com/en-us/outlook/HA012299511033.aspx#3">step-by-step guide for exporting your RSS feeds from Outlook</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://yabfog.com/blog/2006/12/21/microsoft-outlook-2007-supports-opml/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>Answer the door</title>
		<link>http://yabfog.com/blog/2006/11/01/answer-the-door</link>
		<comments>http://yabfog.com/blog/2006/11/01/answer-the-door#comments</comments>
		<pubDate>Thu, 02 Nov 2006 00:28:08 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[opml]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://yabfog.com/wp/2006/11/01/answer-the-door/</guid>
		<description><![CDATA[Dave Winer is looking for a developer to work on Share Your OPML. If you're interested, I strongly urge you to pick up the baton. I can vouch for what Dave says in his post: he's demanding, but he really invests in the people with whom he works. As long as you're not a prima [...]]]></description>
			<content:encoded><![CDATA[<p>Dave Winer is <a href="http://www.scripting.com/2006/11/01.html#opportunityKnocks">looking for a developer</a> to work on <a href="http://share.opml.org">Share Your OPML</a>.</p>
<p>If you're interested, I strongly urge you to pick up the baton. I can vouch for what Dave says in his post: he's demanding, but he really invests in the people with whom he works. As long as you're not a prima donna who cannot handle tough questions about your work, Dave has a lot to offer as a teacher and a boss. Actually, boss is a terrible word for the working relationship you can expect to have with Dave. He's an articulate collaborator with an insight into users' wants and needs that I find amazing.</p>
<p>Opportunity knocks. Answer the door.</p>
]]></content:encoded>
			<wfw:commentRss>http://yabfog.com/blog/2006/11/01/answer-the-door/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>Optimal Bugfix</title>
		<link>http://yabfog.com/blog/2006/06/15/optimal-bugfix</link>
		<comments>http://yabfog.com/blog/2006/06/15/optimal-bugfix#comments</comments>
		<pubDate>Thu, 15 Jun 2006 23:14:43 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[announcements]]></category>
		<category><![CDATA[opml]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[xml]]></category>
		<category><![CDATA[xsl/xslt]]></category>

		<guid isPermaLink="false">http://yabfog.com/blog/2006/06/15/optimal-bugfix/</guid>
		<description><![CDATA[I released a bugfix for Optimal today. The latest version is 0.4c. If you haven't experienced any weird problems with the 0.4 release, don't bother updating. Thanks to Chris Pirillo for bringing the problem to my attention and working through it with me.]]></description>
			<content:encoded><![CDATA[<p>I released a bugfix for Optimal today. The <a href="http://yabfog.com/blog/optimal/#download">latest version is 0.4c</a>. If you haven't experienced any <a href="http://yabfog.com/blog/optimal/#gotcha">weird problems</a> with the 0.4 release, don't bother updating.</p>
<p>Thanks to <a href="http://chris.pirillo.com">Chris Pirillo</a> for bringing the problem to my attention and working through it with me.</p>
]]></content:encoded>
			<wfw:commentRss>http://yabfog.com/blog/2006/06/15/optimal-bugfix/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
	</channel>
</rss>

