<?xml version="1.0"?>
<!-- RSS generated by Radio UserLand v8.0.6 on Fri, 31 Jan 2003 02:24:14 GMT -->
<rss version="2.0">
	<channel>
		<title>Drew Marsh: Drew&apos;s Blog::Blogging</title>
		<link>http://radio.weblogs.com/0104813/categories/blogging/</link>
		<description>Comments and revalations about blogging.</description>
		<language>en-us</language>
		<copyright>Copyright 2003 Drew Marsh</copyright>
		<lastBuildDate>Fri, 31 Jan 2003 02:24:14 GMT</lastBuildDate>
		<docs>http://backend.userland.com/rss</docs>
		<generator>Radio UserLand v8.0.6</generator>
		<managingEditor>drub0y@hotmail.com</managingEditor>
		<webMaster>drub0y@hotmail.com</webMaster>
		<category domain="http://www.weblogs.com/rssUpdates/changes.xml">rssUpdates</category> 
		<skipHours>
			<hour>2</hour>
			<hour>3</hour>
			<hour>4</hour>
			<hour>5</hour>
			<hour>6</hour>
			<hour>7</hour>
			<hour>1</hour>
			<hour>0</hour>
			</skipHours>
		<cloud domain="radio.xmlstoragesystem.com" port="80" path="/RPC2" registerProcedure="xmlStorageSystem.rssPleaseNotify" protocol="xml-rpc"/>
		<ttl>60</ttl>
		<item>
			<title>Radio Dies Again</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/30.html#a217</link>
			<description>This time my worskspace.pt table was missing.</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/30.html#a217</guid>
			<pubDate>Fri, 31 Jan 2003 02:23:59 GMT</pubDate>
			</item>
		<item>
			<title>Heads Up: Sam Gentile Has Moved His Weblog</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/30.html#a216</link>
			<description>&lt;P&gt;&lt;FONT face=Tahoma&gt;&lt;EM&gt;Ok, I&apos;ve had it with Radio and its many bugs, lack of updates, quirks, etc. This is not anything new. I have wanted to move for a very long time to something .NET based but I have not had the time. &lt;/EM&gt;&lt;/FONT&gt;&lt;A href=&quot;http://aspnetweblog.com/&quot;&gt;&lt;FONT face=Tahoma&gt;&lt;EM&gt;Scott Watermasysk&lt;/EM&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Tahoma&gt;&lt;EM&gt; has graciously volunteered access to his &lt;/EM&gt;&lt;/FONT&gt;&lt;A href=&quot;http://aspnetweblog.com/archive/01292003.aspx#180&quot;&gt;&lt;FONT face=Tahoma&gt;&lt;EM&gt;ASP.NET solution and hosting&lt;/EM&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Tahoma&gt;&lt;EM&gt;. So I am moving. &lt;/EM&gt;&lt;A href=&quot;http://dotnetweblogs.com/sgentile/Default.aspx&quot;&gt;&lt;EM&gt;My new site will be&amp;nbsp;&amp;nbsp;here&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;. The new &lt;/EM&gt;&lt;A href=&quot;http://dotnetweblogs.com/sgentile/Rss.aspx&quot;&gt;&lt;EM&gt;RSS feed is here&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;. It will take some time to move over and get things squared away especially with project and book deadlines, and a new baby so please be patient with me. I hope all my loyal readers will continue to read at the new site and as always, I thank each and every one of you for reading my stuff and hope that it continues to help you in youyr work. &lt;/EM&gt;&lt;/FONT&gt;[&lt;A href=&quot;http://radio.weblogs.com/0105852/&quot;&gt;Sam Gentile&apos;s Weblog&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;Hmm... I might have to try this out myself.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/30.html#a216</guid>
			<pubDate>Thu, 30 Jan 2003 18:45:32 GMT</pubDate>
			<source url="http://radio.weblogs.com/0105852/rss.xml">Sam Gentile&apos;s Weblog</source>
			</item>
		<item>
			<title>Simon&apos;s Radio Pingback Client: A Small Code Review</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/18.html#a211</link>
			<description>&lt;P&gt;So, I&apos;m sitting here doing a database upgrade and while I was waiting for a ton of data to finish replicating I was looking over the implementation of &lt;A href=&quot;http://www.pocketsoap.com/weblog/stories/2003/01/01/pingbacks.html&quot;&gt;Simon&apos;s PingBack Client for Radio&lt;/A&gt; and noticed that in his &lt;CODE&gt;pingbackSuite.checkPost&lt;/CODE&gt; method he has a support function called &lt;CODE&gt;extractLinks&lt;/CODE&gt; that does a lot of manual string parsing that could very easily be replaced with some Regex calls. Radio has &lt;A href=&quot;http://old.scriptmeridian.org/projects/regex/index.html&quot;&gt;Regex support&lt;/A&gt; via &lt;CODE&gt;system.extensions.regex&lt;/CODE&gt;. In that library there is an &lt;A href=&quot;http://old.scriptmeridian.org/projects/regex/docs/docServer/extract.html&quot;&gt;&lt;CODE&gt;extract&lt;/CODE&gt; method&lt;/A&gt;. The regex to find the links would be &lt;CODE&gt;&amp;lt;a .*?href=&quot;?([^&quot;&amp;gt;\s]*)&lt;/CODE&gt;. Therefore, &lt;CODE&gt;extractLinks&lt;/CODE&gt; could be rewritten simply like so:&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;on extractLinks(txtWP)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; local(txt = string(txtWP))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; local(linkMatches = nil)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Extract the matches, specifying the list returned contain only the URL group&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; regex.extract(&quot;&amp;lt;a .*?href=\&quot;?([^\&quot;&amp;gt;\\s]*)&quot;, @txt, @linkMatches, { 1 })&lt;BR&gt;&lt;/CODE&gt;&lt;CODE&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(linkMatches)&lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;Nothin&apos; major, but why write all that annoying parsing logic yourself, ya&apos; know? :)&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/18.html#a211</guid>
			<pubDate>Sat, 18 Jan 2003 23:38:17 GMT</pubDate>
			</item>
		<item>
			<title>Item Titles Not Rendered On Category Specific Pages In Radio</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/17.html#a209</link>
			<description>&lt;A href=&quot;http://radio.weblogs.com/0105852/2003/01/17.html#a1715&quot;&gt;&lt;EM&gt;Riddle me thiis grasshopper&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;. Why do titles that have been set in Radio and inserted manually into the Item Template not show up on any category pages even if they use the same exact template?&lt;/EM&gt; [&lt;A href=&quot;http://radio.weblogs.com/0105852/&quot;&gt;Sam Gentile&apos;s Weblog&lt;/A&gt;] 
&lt;P&gt;Excellent observation Sam. Time to dive into the publishing code.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Update:&lt;/STRONG&gt; Just got the chance to look into this, then I remembered that categories have their own independant templates. So you actually need to go into &amp;lt;Radio Program Files Root&amp;gt;\www\categories\&amp;lt;Your Category&amp;gt; and update the templates there to inclue &amp;lt;%itemTitle%&amp;gt;. You can probably just copy your itemTemplate from the main site since you pretty much want the same look and feel across categories in that respect.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Update 2:&lt;/STRONG&gt; Apparently you can &lt;A href=&quot;http://radio.userland.com/discuss/msgReader$11647?mode=day&quot;&gt;just nuke the templates&lt;/A&gt; from the category sub-directories and they&apos;ll be rendered using the templates from the main directory. Makes sense if you wanted to control each category&apos;s rendering independently.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/17.html#a209</guid>
			<pubDate>Fri, 17 Jan 2003 18:40:32 GMT</pubDate>
			<source url="http://radio.weblogs.com/0105852/rss.xml">Sam Gentile&apos;s Weblog</source>
			</item>
		<item>
			<title>Radio&apos;s News Aggregator and RSS (Part 2)</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/16.html#a208</link>
			<description>
&lt;P&gt;Ok, so I was partly wrong. After wading through the process of reading a news feed and turning it into a story, it turns out that in the presense of an RSS title it is concatenated onto the front of the &lt;CODE&gt;storytext&lt;/CODE&gt; member of the &lt;CODE&gt;story&lt;/CODE&gt; datatype. Here&apos;s the code from &lt;CODE&gt;system.verbs.builtins.xml.rss.compileService&lt;/CODE&gt;:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;CODE&gt;if sizeof (title) &amp;gt; 0&lt;BR&gt;&amp;nbsp; if sizeof (link) &amp;gt; 0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; s = &quot;&amp;lt;a href=\&quot;&quot; + link + &quot;&quot;&amp;gt;&quot; + title + &quot;&amp;lt;/a&amp;gt;&quot;&lt;BR&gt;&amp;nbsp; else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; s = title&lt;/CODE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;That is then concatenated with the RSS description text node and set as the &lt;CODE&gt;title&lt;/CODE&gt; member (a weird name considering it&apos;s a lot more than a title) of an &lt;CODE&gt;item&lt;/CODE&gt; data type (the adritem variable in the code). Then in &lt;CODE&gt;system.verbs.builtin.xml.aggregator.storyArrivedCallback&lt;/CODE&gt; this &lt;CODE&gt;item&lt;/CODE&gt; is translated into a &lt;CODE&gt;story&lt;/CODE&gt; type and stored.&lt;/P&gt;
&lt;P&gt;Really, I&apos;m guessing most of this is legacy. I&apos;d really like to have more fine grain access to each piece of an incoming &lt;CODE&gt;item&lt;/CODE&gt; so I can render it differently on the news page. However, this would appear to require drastic changes to the way news is currently processed in Radio. It&apos;s not that it can&apos;t be done, but it would require a lot of work on system modules.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/16.html#a208</guid>
			<pubDate>Thu, 16 Jan 2003 19:56:49 GMT</pubDate>
			</item>
		<item>
			<title>Radio&apos;s News Aggregator Sorely Lacking In The RSS Department</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/16.html#a207</link>
			<description>
&lt;P&gt;Sadly, upon further investigation, it&apos;s not just a problem with the RSS title being rendered, it&apos;s a problem with it even being collected! The news is stored in a file called aggregatorData. If you open Radio and jump to this address (CTRL+J) you&apos;ll see a table called stories. Each one of these &quot;stories&quot; is apparently the Radio native equivalent of an RSS item. The only available properties of a &lt;CODE&gt;story&lt;/CODE&gt; are:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;CODE&gt;channeltitle&lt;/CODE&gt;: the title of the channel from which this story came (/rss/channel/title) 
&lt;LI&gt;&lt;CODE&gt;storytext&lt;/CODE&gt;: the content of the story (/rss/channel/item/description) 
&lt;LI&gt;&lt;CODE&gt;time&lt;/CODE&gt;: time the story was processed and entered into the database (NOT /rss/channel/item/pubDate) 
&lt;LI&gt;&lt;CODE&gt;url&lt;/CODE&gt;: link to the actual story (/rss/channel/item/link)&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;So we&apos;re missing a ton of RSS data here. That said, all the RSS data *is* available and stored in &lt;CODE&gt;aggregatorData.services.[urlOfRssFeed]&lt;/CODE&gt;. So now the trick is to find where the RSS data is translated into a Radio &lt;CODE&gt;story&lt;/CODE&gt; and augment the recording process from there.&lt;/P&gt;&lt;/CODE&gt;&lt;/CODE&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/16.html#a207</guid>
			<pubDate>Thu, 16 Jan 2003 18:49:32 GMT</pubDate>
			</item>
		<item>
			<title>Radio&apos;s News Aggregator Doesn&apos;t Render RSS Titles</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/16.html#a206</link>
			<description>
&lt;P&gt;After the previous post, I realized something I never noticed before: &lt;A href=&quot;http://radio.userland.com&quot;&gt;Radio&lt;/A&gt;&apos;s built in news aggregator doesn&apos;t render item titles! No wonder a lot of Radio user&apos;s don&apos;t use the title feature, it has no benefit to Radio&apos;s own aggregator.&lt;/P&gt;
&lt;P&gt;I&apos;m looking at the code right now, which is in system.verbs.builtins.radio.html.viewNewsItems, and they don&apos;t even try to pull titles out of the &lt;A href=&quot;http://backend.userland.com/rss&quot;&gt;RSS&lt;/A&gt; items. How bizzare. I&apos;m going to edit my copy, but I&apos;ve also &lt;A href=&quot;http://radio.userland.com/discuss/msgReader$22035&quot;&gt;suggested&lt;/A&gt;&amp;nbsp;to&amp;nbsp;&lt;A href=&quot;http://www.userland.com&quot;&gt;UserLand&lt;/A&gt; that they add this in their next Radio.root update.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/16.html#a206</guid>
			<pubDate>Thu, 16 Jan 2003 18:17:55 GMT</pubDate>
			</item>
		<item>
			<title>RSS Titles In Radio</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/16.html#a205</link>
			<description>&lt;P&gt;&lt;A href=&quot;http://www.intertwingly.net/blog/1126.html&quot;&gt;&lt;EM&gt;Radio Titles&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;. &lt;/EM&gt;&lt;A href=&quot;http://radio.weblogs.com/0118356/2003/01/15.html#a20&quot;&gt;&lt;EM&gt;Anil John&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;: I for one DO use the Title option that Radio provides&lt;/EM&gt; [&lt;A href=&quot;http://www.intertwingly.net/blog/&quot;&gt;Sam Ruby&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;As do I, but the problem is I have to repeat it in my content. I suppose I could edit my item template to emit the title for me with &lt;A href=&quot;http://radio.userland.com/stories/storyReader$6881#macrosForUseInTheItemTemplate&quot;&gt;&amp;lt;%itemTitle%&amp;gt;&lt;/A&gt;. Hmmm... then all my existing posts where I&apos;ve included the title in the content would be doubled and I&apos;d need to go&amp;nbsp;back through them and remove the repeated title&amp;nbsp;from the content. I might just do that though.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/16.html#a205</guid>
			<pubDate>Thu, 16 Jan 2003 17:34:00 GMT</pubDate>
			<source url="http://radio.weblogs.com/0101679/rss.xml">Sam Ruby</source>
			</item>
		<item>
			<title>RFC: RSS 2.0 and the MetaWeblog API</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/13.html#a204</link>
			<description>
&lt;P&gt;&lt;A name=When:10:34:07AM&gt;&lt;EM&gt;RFC: &lt;/EM&gt;&lt;A href=&quot;http://www.xmlrpc.com/stories/storyReader$2406&quot;&gt;&lt;EM&gt;RSS 2.0 and the MetaWeblog API&lt;/EM&gt;&lt;/A&gt; [&lt;A href=&quot;http://scriptingnews.userland.com/&quot;&gt;Scripting News&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;Ugh, holy hacking batman. The more &lt;A href=&quot;http://www.xmlrpc.com/spec&quot;&gt;XMLRPC&lt;/A&gt; gets put to the test, the more is shows just how weak it really is. It&apos;s only based on simple well-formed XML, so that&apos;s as far as it can go without hacking things like this:&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style=&quot;MARGIN-RIGHT: 0px&quot;&gt;
&lt;P&gt;&lt;FONT color=gray&gt;If you wish to transmit an element that is part of a namespace include a sub-struct in the struct passed to newPost and editPost whose name is the URL that specifies the namespace. The sub-element(s) of the struct are the value(s) from the namespace that you wish to transmit.&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr&gt;Wow... nasty. :\&lt;/P&gt;
&lt;P dir=ltr&gt;This would be an absolute XML no-brainer in &lt;A href=&quot;http://www.w3.org/TR/2002/CR-soap12-part0-20021219/&quot;&gt;SOAP&lt;/A&gt;. Perhaps it&apos;s time to work on a SOAP based weblogging API.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/13.html#a204</guid>
			<pubDate>Mon, 13 Jan 2003 19:55:10 GMT</pubDate>
			<source url="http://scriptingnews.userland.com/xml/scriptingNews2.xml">Scripting News</source>
			</item>
		<item>
			<title>MetaWeblog API Mailing List</title>
			<link>http://groups.yahoo.com/group/MetaWeblog-API/</link>
			<description>
&lt;P&gt;&lt;A href=&quot;http://groups.yahoo.com/group/MetaWeblog-API/&quot;&gt;&lt;EM&gt;A new mail list&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt; for the MetaWeblog API&lt;/EM&gt; [&lt;A href=&quot;http://www.scripting.com/&quot;&gt;Scripting News&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;Dave&apos;s started a mailing list for those interested in discussing the &lt;A href=&quot;http://www.xmlrpc.com/metaWeblogAPI&quot;&gt;MetaWeblog API&lt;/A&gt;.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/10.html#a203</guid>
			<pubDate>Fri, 10 Jan 2003 17:54:36 GMT</pubDate>
			<source url="http://www.scripting.com/rss.xml">Scripting News</source>
			</item>
		<item>
			<title>Pingback Test</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/09.html#a202</link>
			<description>
&lt;P&gt;&lt;A href=&quot;http://www.pocketsoap.com/weblog/2003/01/08.html#a944&quot;&gt;&lt;EM&gt;pingback&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;. The v0.3 &lt;/EM&gt;&lt;A href=&quot;http://www.pocketsoap.com/weblog/stories/2003/01/01/pingbacks.html&quot;&gt;&lt;EM&gt;pingback client for Radio&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;&amp;nbsp;is now available, it now fully implements the auto-discovery aspects and also spawns off a new thread to do the pingback work, so as not to slow down upstreaming.&lt;/EM&gt; [&lt;A href=&quot;http://www.pocketsoap.com/weblog/&quot;&gt;Simon Fell&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;I just installed Simon&apos;s Pingback client for Radio, this is just a test to see if it works. If it does, this should send a pingback request for &lt;A href=&quot;http://www.pocketsoap.com/weblog/2003/01/08.html#a944&quot;&gt;this post&lt;/A&gt;&amp;nbsp;(#944). &lt;A href=&quot;http://www.pocketsoap.com/services/pingback.aspx&quot;&gt;Here&apos;s his current server implementation&lt;/A&gt; that displays the pings. &lt;/P&gt;
&lt;P&gt;Update: Sure enough, it works! Great stuff Simon.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/09.html#a202</guid>
			<pubDate>Thu, 09 Jan 2003 20:59:16 GMT</pubDate>
			<source url="http://www.pocketsoap.com/weblog/rss.xml">Simon Fell</source>
			</item>
		<item>
			<title>Blogger API Wars: Mind the FUD</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/09.html#a201</link>
			<description>
&lt;P&gt;&lt;EM&gt;...&lt;/EM&gt;&lt;EM&gt;&amp;nbsp;The naming is unfortunate because Pyra is radically changing the Blogger API, breaking everyone who implemented it. Presumably someday the pages describing the API will disappear. We should do a backup and a rename, those of us who plan to continue to support it, regardless of what Pyra does. I wish we could convince them to tread more lightly. Perhaps the best thing to do is to fill in the MetaWeblog API, with docs for the entry-points that are currently documented on the Blogger site. We&apos;ll get through this. It&apos;s a fairly broadly supported API, despite Pyra&apos;s &lt;/EM&gt;&lt;A href=&quot;http://radio.weblogs.com/0001015/images/2003/01/09/pyradisclaimer.gif&quot;&gt;&lt;EM&gt;disclaimer&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;.&lt;/EM&gt; &amp;nbsp;[&lt;A href=&quot;http://scriptingnews.userland.com/&quot;&gt;Scripting News&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;Uhh... this smells like&amp;nbsp;a serious&amp;nbsp;FUD spreading attempt to me. First off, they&apos;re not breaking anything. All &lt;A href=&quot;http://groups.yahoo.com/group/bloggerDev/files/documentation.html&quot;&gt;Blogger2 API&lt;/A&gt; XMLRPC calls are prefixed by &quot;blogger2.&quot; instead of &quot;blogger.&quot;, so there&apos;s no breaking going on at all. Also, just because &lt;A href=&quot;http://www.pyra.com/&quot;&gt;Pyra&lt;/A&gt; is coming out with the Blogger2 API doesn&apos;t mean they&apos;re going to stop supporting the &lt;A href=&quot;http://plant.blogger.com/api/index.html&quot;&gt;Blogger1 API&lt;/A&gt;.&amp;nbsp;Nor are they expecting the entire world to switch. If they do stop supporting the Blogger1 API that&apos;s really only going to hurt their customers and, if they want to do that, that&apos;s their decision. Personally, I think the new API feels a lot cleaner, albeit there are &lt;A href=&quot;http://radio.weblogs.com/0104813/2003/01/06.html#a196&quot;&gt;some things that still need some ironing out&lt;/A&gt;. The important thing is that it&apos;s still in the RFC stages, so if you have a problem with it you should be &lt;A href=&quot;http://groups.yahoo.com/group/bloggerDev/&quot;&gt;contributin&lt;/A&gt;&lt;A href=&quot;http://groups.yahoo.com/group/bloggerDev/&quot;&gt;g feedback &lt;STRONG&gt;now&lt;/STRONG&gt;&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;IMVHO, the real problem is that these APIs are layered on top of &lt;A href=&quot;http://www.xmlrpc.com&quot;&gt;XMLRPC&lt;/A&gt;. Had they been layered on a more strongly typed protocol (i.e. &lt;A href=&quot;http://www.w3.org/TR/2002/CR-soap12-part0-20021219/&quot;&gt;SOAP&lt;/A&gt;) we wouldn&apos;t even have needed the &lt;A href=&quot;http://www.xmlrpc.com/metaWeblogApi&quot;&gt;MetaWeblog API&lt;/A&gt;. The major differences between the Blogger 1.0 API and the MetaWeblog API are the concept of what data makes up a post. Why should we need a completely different set of publishing/editing methods just because the details of a post in each has a different shape?? Had SOAP been used, we could have typed the post parameter using a namespace and the backend could have&amp;nbsp;determined whether or not it was capable of handling content from that namespace. This would have immediately allowed us to go from a simple text only post to an &lt;A href=&quot;http://www.w3.org/MarkUp/&quot;&gt;XHTML&lt;/A&gt; post&amp;nbsp;to rich &lt;A href=&quot;http://backend.userland.com/rss&quot;&gt;RSS 2.0&lt;/A&gt; posts including titles, links, etc. Really, it could accept &lt;EM&gt;any&lt;/EM&gt; type from &lt;EM&gt;any&lt;/EM&gt; namespace and, as long as the server supported it, there would be no problem. Another nasty bit of the APIs is that you always have to pass application key, userName and password to each method. Not only does this clutter the meaning of the method, but in some of the APIs the order of the parameters varies!!! How about a little consistency?? Had SOAP been used, these details would simply be &lt;A&gt;SOAP headers&lt;/A&gt; and wouldn&apos;t clutter each specific method signature. 20/20 hindsight I guess, but I can&apos;t understand why any APIs being invented now aren&apos;t taking these things into consideration.&lt;/P&gt;
&lt;P&gt;Finally, I agree that updating the documentation for the Blogger1 and MetaWeblog APIs in a single place is a great idea. Some of the Blogger1 APIs aren&apos;t even doc&apos;d in a single place (i.e. blogger.getRecentPosts, blogger.deletePost), same with MetaWeblog though (i.e. metaWeblog.getRecentPosts, )... nevermind both. I&apos;ve had to scour all over to fill in the complete APIs and that&apos;s just not a good way to promote third party development which is what exposing these standard APIs is all about.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/09.html#a201</guid>
			<pubDate>Thu, 09 Jan 2003 15:50:49 GMT</pubDate>
			<source url="http://scriptingnews.userland.com/xml/scriptingNews2.xml">Scripting News</source>
			</item>
		<item>
			<title>Blogger API Differences in Blogger/Radio (Part 2)</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/08.html#a200</link>
			<description>
<P>Ok, so I tracked down&nbsp;<A href="http://127.0.0.1:5335/<%%20radio.macros.weblogUrl()%20%>2003/01/08.html#a199">the problem</A>&nbsp;in Radio and made a simple change to the script responsible for generating the response to getUsersBlogs. It's located in <EM>system.verbs.builtins.radio.weblog.bloggerApi.rpcHandlers</EM>. Basically, you just need to change this line:</P>
<BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"><CODE>t.<STRONG>blogname</STRONG> = encode (adrblog^.prefs.title)</CODE></BLOCKQUOTE>
<P dir=ltr>To this:</P>
<BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
<P><CODE>t.<STRONG>blogName</STRONG> = encode (adrblog^.prefs.title)</CODE></P></BLOCKQUOTE>
<P dir=ltr>A <A href="http://www.userland.com/">UserLand</A> representitive has responded to my <A href="http://radio.userland.com/discuss/msgReader$21778?mode=topic&amp;y=2003&amp;m=1&amp;d=8">bug report</A> in their <A href="http://radio.userland.com/discuss">forums</A> and&nbsp;hopefully they will make a patch to Radio.root that will fix this for users so that Radio is truly compliant with the Blogger API.</P></description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/08.html#a200</guid>
			<pubDate>Wed, 08 Jan 2003 20:31:09 GMT</pubDate>
			</item>
		<item>
			<title>Blogger API Differences in Blogger/Radio</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/08.html#a199</link>
			<description>
&lt;P&gt;&lt;A href=&quot;http://www.cookcomputing.com/blog/archives/000182.html&quot;&gt;&lt;EM&gt;Case Sensistivity in XML-RPC&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;. Drew Marsh emailed me about some discrepancies between the Blogger and Radio impementations of the Blogger API. It seems that....&lt;/EM&gt; [&lt;A href=&quot;http://www.cookcomputing.com/blog/&quot;&gt;Cook Computing&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;So, I&apos;m toying around writing a &lt;A href=&quot;http://radio.weblogs.com/0104813/postResources/weblogEditorSnapshot.png&quot;&gt;Weblog client&lt;/A&gt;. I&apos;ve created an abstract connection/weblog/post model which would then have strongly typed connection classes per protocol. I&apos;ve started with the &lt;A href=&quot;http://plant.blogger.com/api/index.html&quot;&gt;Blogger 1.0 API&lt;/A&gt; which&amp;nbsp;is layered on the &lt;A href=&quot;http://www.xmlrpc.com/spec&quot;&gt;XMLRPC&amp;nbsp;protocol&lt;/A&gt; since it&apos;s basically the bare minimum that &lt;A href=&quot;http://www.blogger.com/&quot;&gt;Blogger&lt;/A&gt; and &lt;A href=&quot;http://radio.userland.com/&quot;&gt;Radio&lt;/A&gt; support. Immediately, I run into a problem: &lt;A href=&quot;http://radio.userland.com/emulatingBloggerInRadio&quot;&gt;Radio&apos;s implementation&lt;/A&gt; uses different casing for some of it&apos;s struct members than Blogger.&amp;nbsp;For example, here&apos;s a weblog struct from a response&amp;nbsp;to &lt;A href=&quot;http://plant.blogger.com/api/xmlrpc_getUsersBlogs.html&quot;&gt;getUsersBlogs&lt;/A&gt;:&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style=&quot;MARGIN-RIGHT: 0px&quot;&gt;
&lt;P&gt;&lt;STRONG&gt;Blogger&apos;s Response:&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style=&quot;MARGIN-RIGHT: 0px&quot;&gt;&amp;lt;struct&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;member&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;name&amp;gt;isAdmin&amp;lt;/name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;value&amp;gt;&amp;lt;boolean&amp;gt;1&amp;lt;/boolean&amp;gt;&amp;lt;/value&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;/member&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;member&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;name&amp;gt;url&amp;lt;/name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;value&amp;gt;&lt;a href=&quot;http://drub0y.blogspot.com&quot;&gt;http://drub0y.blogspot.com&lt;/a&gt; &amp;lt;/value&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;/member&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;member&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;name&amp;gt;blogid&amp;lt;/name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;value&amp;gt;3372021&amp;lt;/value&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;/member&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;member&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;name&amp;gt;lastPublished&amp;lt;/name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;value&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dateTime.iso8601&amp;gt;20020422T09:58:58&amp;lt;/dateTime.iso8601&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/value&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;/member&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;member&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;name&amp;gt;showTitle&amp;lt;/name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;value&amp;gt;&amp;lt;boolean&amp;gt;0&amp;lt;/boolean&amp;gt;&amp;lt;/value&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;/member&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;member&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;&amp;lt;name&amp;gt;blogName&amp;lt;/name&amp;gt;&lt;BR&gt;&lt;/STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;value&amp;gt;Drew&apos;s Blog&amp;lt;/value&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;/member&amp;gt;&lt;BR&gt;&amp;lt;/struct&amp;gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr&gt;&lt;STRONG&gt;Radio&apos;s Response:&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&amp;lt;struct&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;member&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;name&amp;gt;blogid&amp;lt;/name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;value&amp;gt;home&amp;lt;/value&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;/member&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;member&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;&amp;lt;name&amp;gt;blogname&amp;lt;/name&amp;gt;&lt;/STRONG&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;value&amp;gt;Drew&apos;s Blog&amp;lt;/value&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;/member&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;member&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;name&amp;gt;url&amp;lt;/name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;value&amp;gt;&lt;a href=&quot;http://radio.weblogs.com/0104813/&quot;&gt;http://radio.weblogs.com/0104813/&lt;/a&gt; &amp;lt;/value&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;/member&amp;gt;&lt;BR&gt;&amp;lt;/struct&amp;gt;&lt;/BLOCKQUOTE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Now, the problem is, Radio uses &quot;blogname&quot; where Blogger uses &quot;blogName&quot;. I consider this to be Radio&apos;s problem since Blogger &lt;EM&gt;defined&lt;/EM&gt; the API and their definition of the&amp;nbsp;weblog struct uses the mixed case version: &quot;blogName&quot;.&lt;/P&gt;
&lt;P&gt;The whole reason I had to write &lt;A href=&quot;http://www.cookcomputing.com/blog/&quot;&gt;Charles&lt;/A&gt; is because I couldn&apos;t believe that &lt;A href=&quot;http://www.scriptingnews.com/&quot;&gt;Dave Winer&lt;/A&gt;, the XMLRPC inventer and the one&amp;nbsp;who implemented the Blogger API for Radio would make such a mistake. Furthermore, how, after almost a year now, does nobody else pick up on this? So I thought perhaps XMLRPC struct members were intended to be case-insensitive and there was a potential bug in &lt;A href=&quot;http://www.cookcomputing.com/xmlrpc/&quot;&gt;XMLRPC.NET&lt;/A&gt;. I looked&amp;nbsp;and looked and no where do I find concrete information about casing rules. I&apos;ve read many things about the tags being case-sensitive, but that&apos;s a given considering it&apos;s just XML.&lt;/P&gt;
&lt;P&gt;So, if the answer is indeed that struct member names in XMLRPC are case-sensitive (which would make the most sense) then the bug lies in the Radio implementation of the Blogger API. I guess my next step is to venture into the Radio forums to report the bug.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/08.html#a199</guid>
			<pubDate>Wed, 08 Jan 2003 15:57:28 GMT</pubDate>
			<source url="http://www.cookcomputing.com/blog/index.rdf">Cook Computing</source>
			</item>
		<item>
			<title>XML-RPC.NET v0.7.0 Delivered</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2003/01/06.html#a196</link>
			<description>
&lt;P&gt;&lt;A href=&quot;http://www.cookcomputing.com/blog/archives/000179.html&quot;&gt;&lt;EM&gt;XML-RPC.NET v0.7.0&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;. I&apos;ve just uploaded version 0.7.0 of XML-RPC.NET. Its available here. The changes/fixes in this release are: error reporting of parsing......&lt;/EM&gt; [&lt;A href=&quot;http://www.cookcomputing.com/blog/&quot;&gt;Cook Computing&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;I&apos;m pretty sure anyone who has to work with &lt;A href=&quot;http://www.xmlrpc.com/spec&quot;&gt;XML-RPC&lt;/A&gt; in .NET uses &lt;A href=&quot;http://www.cookcomputing.com/blog/&quot;&gt;Charles&apos;&lt;/A&gt;&amp;nbsp;implementation. I&apos;ve been using it lately to implement a blogging client capable of talking to any server implementation that speaks &lt;A href=&quot;http://plant.blogger.com/api/index.html&quot;&gt;Blogger 1.0&lt;/A&gt;. The &lt;A href=&quot;http://groups.yahoo.com/group/bloggerDev/files/documentation.html&quot;&gt;Blogger 2.0 API&lt;/A&gt;&amp;nbsp;is currently in the RFC stages and while I&apos;ve offered what I think it some decent feedback on a&amp;nbsp;&lt;A href=&quot;http://groups.yahoo.com/group/bloggerDev/message/1296&quot;&gt;couple&lt;/A&gt; &lt;A href=&quot;http://groups.yahoo.com/group/bloggerDev/message/1299&quot;&gt;of&lt;/A&gt; &lt;A href=&quot;http://groups.yahoo.com/group/bloggerDev/message/1300&quot;&gt;issues&lt;/A&gt;&amp;nbsp;via the &lt;A href=&quot;http://groups.yahoo.com/group/bloggerDev/&quot;&gt;bloggerDev mailing list&lt;/A&gt;, I haven&apos;t really gotten much of a response (yet).&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2003/01/06.html#a196</guid>
			<pubDate>Mon, 06 Jan 2003 14:26:17 GMT</pubDate>
			<source url="http://www.cookcomputing.com/blog/index.rdf">Cook Computing</source>
			</item>
		<item>
			<title>Radio Strikes Again</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2002/11/04.html#a179</link>
			<description>
&lt;P&gt;Ok, I don&apos;t know why it&apos;s working all of a sudden, but it is. For the past few days I haven&apos;t been able to post anything because &lt;A href=&quot;http://radio.userland.com&quot;&gt;Radio&lt;/A&gt; complained about not being able to read one of my data files due to an &quot;incompatible version&quot; or something like that. I have no clue why it started, but Radio hadn&apos;t been shutting down cleanly for about a week so I figure that had something to do with it. Its bound to happen&amp;nbsp;again, so I&apos;m starting to backup all my posts to XML in case I need to bail out of Radio and start using other blogging software. It seems like &lt;A href=&quot;http://dotnetguy.techieswithcats.com/archives/001410.shtml&quot;&gt;a lot of people are doing that&lt;/A&gt; these days...&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2002/11/04.html#a179</guid>
			<pubDate>Tue, 05 Nov 2002 01:43:26 GMT</pubDate>
			</item>
		<item>
			<title>Ethan Brown Joins the Community</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2002/10/23.html#a173</link>
			<description>&lt;P&gt;&lt;A href=&quot;http://urbanasylum.dynu.com/JustTheFacts/&quot;&gt;&lt;EM&gt;Ethan Brown&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt; has started a blog. Welcome, and &lt;/EM&gt;&lt;A href=&quot;http://urbanasylum.dynu.com/JustTheFacts/index.rdf&quot;&gt;&lt;EM&gt;subscribed&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;.&lt;/EM&gt;&amp;nbsp;[&lt;A href=&quot;http://dotnetguy.techieswithcats.com/&quot;&gt;The .NET Guy&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;Welcome Ethan! I don&apos;t know Ethan personally, but he&apos;s a familiar name on many of the mainling lists to which I&apos;ve subscribed over the years. &lt;A href=&quot;http://urbanasylum.dynu.com/JustTheFacts/index.rdf&quot;&gt;RSS subscribed&lt;/A&gt;.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2002/10/23.html#a173</guid>
			<pubDate>Wed, 23 Oct 2002 16:35:12 GMT</pubDate>
			<source url="http://dotnetguy.techieswithcats.com/index.xml">The .NET Guy</source>
			</item>
		<item>
			<title>Changing Themes</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2002/10/17.html#a165</link>
			<description>&lt;P&gt;Bear with me while I change to a new theme. I wanted to go with something simpler/cleaner. I thought this template would be a good jumping off point, but I still need to&amp;nbsp;XHTML&apos;ize it and hand tweak some of the CSS.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2002/10/17.html#a165</guid>
			<pubDate>Thu, 17 Oct 2002 19:58:20 GMT</pubDate>
			</item>
		<item>
			<title>Don Box on Blogging and RSS</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2002/07/10.html#a131</link>
			<description>&lt;P&gt;&lt;A href=&quot;http://www.gotdotnet.com/team/dbox/&quot;&gt;Don&lt;/A&gt; made an awesome &lt;A href=&quot;http://www.gotdotnet.com/team/dbox/spoutlet.aspx&quot;&gt;observation&lt;/A&gt; about the ties between blogging and &lt;A href=&quot;http://groups.yahoo.com/group/rss-dev/files/specification.html&quot;&gt;RSS&lt;/A&gt;. This little snippet pretty much sums it up:&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style=&quot;MARGIN-RIGHT: 0px&quot;&gt;
&lt;P&gt;&lt;FONT color=gray&gt;while (true) {&lt;BR&gt;&amp;nbsp; &amp;nbsp; ScanRSSFeeds();&lt;BR&gt;&amp;nbsp; &amp;nbsp; RantAboutStuffYouSawFromRSSFeeds();&lt;BR&gt;&amp;nbsp; &amp;nbsp; ExposeYourRantsViaRSS();&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;What an amazingly virtuous cycle!&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2002/07/10.html#a131</guid>
			<pubDate>Wed, 10 Jul 2002 22:27:06 GMT</pubDate>
			</item>
		<item>
			<title>Blogchalking</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2002/07/09.html#a128</link>
			<description>&lt;P&gt;I saw &lt;A href=&quot;http://www.quality.nu/dotnetguy/view.aspx?post=293&quot;&gt;Brad&lt;/A&gt; did this and thought it was a cool idea, so here goes:&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style=&quot;MARGIN-RIGHT: 0px&quot;&gt;
&lt;P&gt;Google! DayPop! This is my &lt;A href=&quot;http://www.blogchalking.tk/&quot;&gt;blogchalk&lt;/A&gt;: English, United States, New York City, Greenwich Village, Drew, Male, 21-25!&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr&gt;Now to add meta tag and icon on the page...&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2002/07/09.html#a128</guid>
			<pubDate>Tue, 09 Jul 2002 23:57:48 GMT</pubDate>
			</item>
		<item>
			<title>.NET Blogging Tool Saga Cont&apos;d - Part 2</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2002/07/02.html#a116</link>
			<description>&lt;P&gt;&lt;EM&gt;Except that my web server already has ASP.net. I get a few hundred hits a day. What do I care? :-) I understand what motivates someone like Dave to make it just require FTP and no active server components. He has a monetary interest in working with the largest crowd possible. Personally, I don&apos;t have any such need. I&apos;d rather prefer something powerful and dynamic over something static and flaky, but that&apos;s just me. :-) &lt;/EM&gt;[&lt;A href=&quot;http://www.quality.nu/dotnetguy/&quot;&gt;The .NET Guy&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;You&apos;re right. That&apos;s the only real difference between a power user and a typical end user. So it&apos;s just a question of target audience.&lt;/P&gt;
&lt;P&gt;Technically, most of the code could be shared with the decision of when the content is generated being&amp;nbsp;the only thing done differently. Obviously the content generation engine and database manipualation could be the same. It&apos;s just a matter of when the content engine is executed and what is done with the results. In the &quot;desktop publishing&quot; scenario it&apos;s executed for all posts, over all categories, each time a new post is published. In the &quot;on demand&quot; scenario, there&apos;s some sort of&amp;nbsp;timestamp kept in the&amp;nbsp;database that the &lt;A href=&quot;http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemWebIHttpHandlerClassTopic.asp?frame=true&quot;&gt;IHttpHandler&lt;/A&gt; would check against the date of the file on the system (if it even existed) to determine if it needs to be regenerated. &lt;/P&gt;
&lt;P&gt;Just some thoughts... maybe one day one of us will actually find the time to put this thing together. ;)&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2002/07/02.html#a116</guid>
			<pubDate>Tue, 02 Jul 2002 23:42:50 GMT</pubDate>
			<source url="http://www.quality.nu/dotnetguy/rss.xml">The .NET Guy</source>
			</item>
		<item>
			<title>.NET Blogging Tool Saga Cont&apos;d</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2002/07/02.html#a115</link>
			<description>&lt;P&gt;&lt;EM&gt;What I want is dynamic page generation, so if I change something in one of my headers, etc., I don&apos;t need to re-generate and re-publish every single page on my site.&amp;nbsp; Since the FTP upload of Radio is a little flaky for me, this is a killer.&amp;nbsp; To add to that, Radio actually re-publishes every page in your site when you add a new article on a new day, so it can re-generate the calendar on each page.&amp;nbsp; Adds to my FTP problem.&lt;/EM&gt; [&lt;A href=&quot;http://www.rassoc.com/gregr/weblog/&quot;&gt;Greg Reinacker&apos;s Weblog&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;I&apos;ll echo your experiences with the FTP support in Radio. The FTP support in &lt;/EM&gt;&lt;A href=&quot;http://www.fogcreek.com/CityDesk/&quot;&gt;&lt;EM&gt;CityDesk&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt; is much better, but of course is still a manual system. Like you, I&apos;d prefer something that leveraged that ASP.net runtime so that publishing is a simpler and more foolproof. I&apos;m just about convinced that the right way to do it is to have whatever tool you&apos;re using generate XML files that get shoved up to the server, and then use ASP.net to walk through them as necessary. &lt;/EM&gt;[&lt;A href=&quot;http://www.quality.nu/dotnetguy/&quot;&gt;The .NET Guy&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;Well, that sort of defeats the whole idea behind content generation and publishing, doesn&apos;t it?&amp;nbsp;The whole power of &lt;A href=&quot;http://radio.userland.com/&quot;&gt;Radio&lt;/A&gt; is that it&apos;s &quot;desktop publishing&quot;. Your server doesn&apos;t need to be anything except a dumb HTTP server that supports the GET protocol basically. The idea is that, like in a database, writes occur a lot less than reads. So yeah, all the content is regenerated on a publish, but is static for the&amp;nbsp;&lt;EM&gt;N&lt;/EM&gt; reads that follow it on the web site.&lt;/P&gt;
&lt;P&gt;So what could a more dynamic alternative be? Run some kind of application (&lt;A href=&quot;http://www.asp.net&quot;&gt;ASP.NET&lt;/A&gt; based obviously) on the webserver which reads from a database which you update from your desktop via SOAP calls. Then, content could be cached by the built-in caching framework, but you&apos;d need a custom expiration scheme. Also it would all be cached in memory which is hardly as scalable as caching it to disk. So you would probably want a custom architecture, done with HttpModules most likely, that detects whether or not the requested URL&apos;s&amp;nbsp;content has been built since the last save and if not, build it on demand and save for future requests.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2002/07/02.html#a115</guid>
			<pubDate>Tue, 02 Jul 2002 21:45:36 GMT</pubDate>
			<source url="http://www.quality.nu/dotnetguy/rss.xml">The .NET Guy</source>
			</item>
		<item>
			<title>Radio Blow&apos;d Up</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2002/07/02.html#a112</link>
			<description>&lt;BLOCKQUOTE dir=ltr style=&quot;MARGIN-RIGHT: 0px&quot;&gt;
&lt;P&gt;&lt;CODE&gt;&lt;STRONG&gt;[&lt;/STRONG&gt;Macro error: The file &quot;C:\Program Files\Radio UserLand\www\#prefs.txt&quot; wasn&apos;t found.&lt;B&gt;]&lt;/B&gt;&lt;/CODE&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr&gt;Ok, great. Where&apos;d it go? I know I didn&apos;t delete it and&amp;nbsp;I haven&apos;t even posted anything in a couple days.&amp;nbsp;It only happens when I try to put a title on my posts. *sigh*&lt;/P&gt;
&lt;P dir=ltr&gt;&lt;STRONG&gt;Update:&lt;/STRONG&gt;&amp;nbsp;I went to the folder, saw that #prefs.txt &lt;EM&gt;was&lt;/EM&gt; in fact still there, so I opened it in notepad and just saved it (as is) and everything works again. Interesting.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2002/07/02.html#a112</guid>
			<pubDate>Tue, 02 Jul 2002 16:44:58 GMT</pubDate>
			</item>
		<item>
			<title>Bit Again By Radio Title Encoding (Or Lack There Of)</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2002/06/26.html#a107</link>
			<description>&lt;P&gt;Thanks to John St. Clair who pointed out that my &lt;A href=&quot;http://radio.weblogs.com/0104813/rss.xml&quot;&gt;RSS feed&lt;/A&gt; was trashed again. This time it was due to the &apos;&amp;amp;&apos; in the &lt;A href=&quot;http://radio.weblogs.com/0104813/2002/06/25.html#a104&quot;&gt;Don Box &amp;amp; Inclusion post&lt;/A&gt;. Even after I &lt;A href=&quot;http://radio.weblogs.com/0104813/2002/06/24.html#a95&quot;&gt;pointed&amp;nbsp;this bug&amp;nbsp;out&lt;/A&gt; the previous day, I fell victim to it again.&amp;nbsp;*sigh* Is it too much to ask for proper encoding/decoding in the next &lt;A href=&quot;http://radio.userland.com&quot;&gt;Radio&lt;/A&gt; root update? Pretty please?&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2002/06/26.html#a107</guid>
			<pubDate>Wed, 26 Jun 2002 16:26:49 GMT</pubDate>
			</item>
		<item>
			<title>Warning: Radio Doesn&apos;t Encode Post Titles</title>
			<link>http://radio.weblogs.com/0104813/categories/blogging/2002/06/24.html#a95</link>
			<description>&lt;P&gt;Just a heads up for anyone else who hasn&apos;t already discovered this. &lt;A href=&quot;http://radio.userland.com&quot;&gt;Radio&lt;/A&gt; does not encode the title supplied for a blog entry. This means that if it contains any illegal XML characters such as &amp;lt; or &amp;gt; your entire RSS feed will be screwed. Thanks to &lt;A href=&quot;http://www.andymcm.com/&quot;&gt;Andy McMullan&lt;/A&gt; for pointing this out! Andy discovered the problem when his aggrgegator barfed on parsing the RSS.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0104813/categories/blogging/2002/06/24.html#a95</guid>
			<pubDate>Mon, 24 Jun 2002 20:37:53 GMT</pubDate>
			</item>
		</channel>
	</rss>
