<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">	<channel>		<title>Truer Words - A Journal</title>		<link>http://www.truerwords.net/index/channel/radio</link>		<description>The online journal of Seth Dillingham: faith, family, code, cycling, joy, and pain.</description>		<language>en</language>		<copyright>Copyright 2008 seth@macrobyte.net</copyright>		<generator>Conversant's Weblog II plugin</generator>		<category>Radio</category>		<item>	<title>Dave Winer's Software, Users, and Fiftieth Birthday</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/4765/trackback</trackback:ping>	<link>http://www.truerwords.net/4765</link>	<pubDate>Sat, 30 Apr 2005 23:13:17 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/4765</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=4765#msg4765</comments>	<category>Essays</category>	<category>News</category>	<category>People</category>	<category>Technology</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;Years ago, some of us on the old Frontier mailing lists would complainthat &lt;a href=&quot;http://www.scripting.com/&quot;&gt;Dave Winer&lt;/a&gt; wrote his softwareto work for him, specifically. It did exactly what he wanted, how he wantedto do it. Frontier. The Website Framework (Frontier's original static webCMS). Manila. Radio. Some feature requests would make it into the software,but anything more than an inch to either side of Dave's focus had nochance. You had to write it yourself.&lt;/p&gt;&lt;p&gt;Support for using the existing features in ways he didn't anticipateusually got the same lack of interest, or confusion, or even, occasionally,hostility. (&amp;quot;Why would you want to use it that way!?&amp;quot;)&lt;/p&gt;&lt;p&gt;That drove me nuts, at the time. It's like we were all being allowed toplay with Dave's toys, but only so long as we played with them his way.&lt;/p&gt;&lt;p&gt;Some of you are nodding your heads, remembering those days. Some of you areprobably also shaking your heads (at the same time?), thinking this is anattack on Dave. It's not. Keep reading, you'll see this is about users, andeven my own education.&lt;/p&gt;&lt;p&gt;Over the years, I've come to see things in a slightly different way. Daveloves the users -- I truly believe that -- just not necessarily&lt;b&gt;*his*&lt;/b&gt; users. When Dave has an idea, a vision, he pushes his softwarein that direction with single-minded ferocity and the force of a hurricane.His users -- meaning, those using his software -- either go with him orblow away. (Consider the transition from Frontier as a Mac scripting systemto Frontier as a web development platform.)&lt;/p&gt;&lt;p&gt;His software is just that: his. It's how he expresses his ideas. Dave is --or at the very least, he thinks of himself as -- the software industry'sUncle Dave. His users aren't those people using his software. His users arethose people using his ideas. XML-RPC. Weblogs for everybody. RSSeverywhere.&lt;/p&gt;&lt;p&gt;He isn't always right, his ideas aren't always the best, and hisimplementations almost never are. They are often inspiring, though.Programmers look at what he's done and are inspired to write somethingbetter, faster, more scalable, more thorough. But they don't get it. &lt;b&gt;*Ididn't get it.*&lt;/b&gt; Dave's output isn't his software. His software is justan example, the implementation of whatever idea he was focused on.&lt;/p&gt;&lt;p&gt;The &lt;a href=&quot;http://www.atomenabled.org/developers/syndication/atom-format-spec.php&quot;&gt;Atom&lt;/a&gt;folks think that with Google behind them, they'll beat Dave because hisformat (RSS) isn't as good. The spec isn't as well written, theformat isn't as flexible, and there is no tightly-coupled API (atom is botha format and a publication API). They're probably right about the facts.&lt;/p&gt;&lt;p&gt;But! If, ten years from now, there are one hundred million or a billionAtom feeds and RSS has gone the way of HTML 3.2 (not likely), who has&amp;quot;won?&amp;quot; Would there be an Atom if Dave hadn't worked with Netscape on RSS,or pushed back so hard against the insanity that was RSS 1.0?&lt;/p&gt;&lt;p&gt;Certainly not.&lt;/p&gt;&lt;p&gt;Nor would there be a &lt;a href=&quot;http://conversant.macrobyte.net/&quot; title=&quot;Macrobyte's Groupware and Content Managent software&quot;&gt;Conversant&lt;/a&gt; without Frontier's originalMainresponder-based discussion groups. &amp;quot;They suck,&amp;quot; said I, and &lt;a href=&quot;http://macrobyte.net/&quot; title=&quot;Macrobyte Resources, my company.&quot;&gt;Macrobyte&lt;/a&gt;(at the time, Brian Andresen, Art Peña and myself) believed we could dobetter. Conversant has been evolving ever since. (That's a terribleover-simplification, but this isn't a history of Conversant.)&lt;/p&gt;&lt;p&gt;Seen that way, we look like nothing more than a swirly little storm thatspun off the side of Hurricane Dave. (As does the current Userland, actually,and a few other companies and applications.) There would be no Conversantwithout Dave and his annoying, unscalable, made-to-run-his-way software.The expression of Dave's needs, Dave's ideas.&lt;/p&gt;&lt;p&gt;Dave turns fifty on Monday. This is Dave the man, not Dave the hurricane.Dave the man that's missing his Uncle Vavavoom, and is surely thinkingabout his own mortality.&lt;/p&gt;&lt;p&gt;So, I just want to say, &amp;quot;Thank you, Dave!&amp;quot;, and let you know that whileothers may appreciate you for your &lt;a href=&quot;http://archive.scripting.com/2005/04/27#When:6:37:54PM&quot;&gt;abrasiveclarity&lt;/a&gt;,I prefer the hurricane of ideas and the constant focus on us, youridea-users.&lt;/p&gt;&lt;p&gt;Oh, and &lt;a href=&quot;http://archive.scripting.com/2005/05/01#aBirthdayRequest&quot;&gt;Happy Birthday, Dave&lt;/a&gt;.&lt;/p&gt;</description>	</item><item>	<title>How to Bring Frontier or Radio to the Front on Startup, on Windows</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/4737/trackback</trackback:ping>	<link>http://geeks.opml.org/2005/04/17#a23</link>	<pubDate>Sun, 17 Apr 2005 23:22:12 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/4737</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=4737#msg4737</comments>	<category>Technology</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;&lt;a href=&quot;http://geeks.opml.org/2005/04/17#a23&quot;&gt;Dave Winer wants to know&lt;/a&gt;how to bring Frontier to the front on startup, on Windows:&lt;/p&gt;&lt;blockquote cite=&quot;http://geeks.opml.org/2005/04/17#a23&quot;&gt;	&lt;p&gt;In the spirit of documenting our programming work openly whenever	possible, here's a question for Dave Luebbert who is working with me on	the outliner, and anyone else who's inclined to poke around the	Frontier source.&lt;/p&gt;	&lt;p&gt;	When the program launches it's only accessible through the Windows	system tray. This behavior makes sense for Frontier and Radio, but not	for the OPML editor.&lt;/p&gt;	&lt;p&gt;	It should come to the front when it's launched. I tried adding a call	to Frontier.bringToFront to the startup script, thinking that would do	it, but it doesn't.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;One possible solution, totally script based, is to just ask the OS to openthe application for you a second time. I figured this out (years ago) whenI noticed that double-clicking Frontier's icon on the desktop will reliablyopen Frontier's MDI window if the application is already running. (The rootof the problem Dave's trying to work around is that launching Frontier onWindows doesn't result in a window, you just get the little mini Frontiericon in the system tray.)&lt;/p&gt;&lt;pre&gt;&lt;code&gt;launch.application( Frontier.getProgramPath() )&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;That's all it takes. Just put that in a startup script (you can actually call it whenever and however you want.)&lt;/p&gt;&lt;p style=&quot;font-style: italic;&quot;&gt;I'd really like to know if this doesn't work for someone. Please let me know if you have problems with it.&lt;/p&gt;&lt;p&gt;Unfortunately, it looks like he's going with a modification to the kernel.I didn't think that's what he wanted, but maybe this ultra-mini how-to willbe useful for someone else, someday.&lt;/p&gt;</description>	</item><item>	<title>TLS is Now UserLand's</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/4319/trackback</trackback:ping>	<link>http://www.truerwords.net/4319</link>	<pubDate>Tue, 19 Oct 2004 19:08:18 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/4319</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=4319#msg4319</comments>	<category>Customers</category>	<category>Macrobyte</category>	<category>Business</category>	<category>Technology</category>	<category>Brian Andresen</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;Way back in the early history of the world (late 2002? early 2003?), one of &lt;a href=&quot;http://macrobyte.net/&quot;&gt;Macrobyte's&lt;/a&gt; clients needed to serve secure web pages from &lt;a href=&quot;http://frontierkernel.org/&quot; title=&quot;Frontier scripting system. Open source.&quot;&gt;Frontier&lt;/a&gt;. We tried -- in vain -- to make it work correctly with IIS, but it just wasn't stable enough.&lt;/p&gt;&lt;p&gt;So, we implemented a tool known generally as TLS, but which was officially called &quot;Macrobyte Resources TLS,&quot; for &lt;a href=&quot;http://frontierkernel.org/&quot; title=&quot;Frontier scripting system. Open source.&quot;&gt;Frontier&lt;/a&gt; and &lt;a href=&quot;http://radio.userland.com/&quot; title=&quot;Radio Userland&quot;&gt;Radio&lt;/a&gt;. &lt;i&gt;By &quot;we,&quot; in this case, I mean Brian Andresen. He did all the hard work. I acted like a client, just testing, providing feedback, and asking questions.&lt;/i&gt;&lt;/p&gt;&lt;p&gt;TLS itself wasn't our creation. The IETF did that, it stands for &lt;a href=&quot;http://www.ietf.org/rfc/rfc2246.txt&quot;&gt;Transport Layer Security&lt;/a&gt;. We 'simply' implemented a solution for Radio and Frontier, so they could act as TLS clients and servers.&lt;/p&gt;&lt;p&gt;In the late Spring of this year, &lt;a href=&quot;http://www.userland.com/stories/storyReader$214&quot;&gt;UserLand Software purchased TLS&lt;/a&gt; from Macrobyte. Today they finally announced it, and opened up &lt;a href=&quot;http://tls.userland.com/&quot;&gt;their TLS site&lt;/a&gt; to the world.&lt;/p&gt;&lt;p&gt;OK, with all that background out of the way... how's this for a lame-o quote?&lt;/p&gt;&lt;blockquote style=&quot;margin-left: 1.0em; border-left: 1px solid blue; padding-left: 1.0em;&quot;&gt;	&quot;I'm quite pleased that UserLand has taken over TLS,&quot; said Seth	Dillingham, President of Macrobyte Resources. &quot;This shows a	commitment to enhancing the tools available to their developer	community, and a genuine interest in offering and promoting secure	web sites and services. With TLS now being managed, distributed,	and updated by UserLand, it's sure to become a key component in	the UserTalk developer's toolbox.&quot;&lt;/blockquote&gt;&lt;p&gt;Whoo-ee, the things we'll say for the sake of business! It's all true, and I really did write that myself, but... who talks like that!? Makes me sound like a marketing person trying to talk like a geek. (Instead of the other way around?)&lt;p&gt;</description>	</item><item>	<title>MetaWeblog.getRecentPosts: Conflict and Confusion</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/4217/trackback</trackback:ping>	<link>http://www.truerwords.net/4217</link>	<pubDate>Wed, 15 Sep 2004 09:18:58 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/4217</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=4217#msg4217</comments>	<category>Essays</category>	<category>Technology</category>	<category>CMS</category>	<category>Conversant</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<category>XML</category>	<description>&lt;h1&gt;MetaWeblog.getRecentPosts: Conflict and Confusion&lt;/h1&gt;&lt;p&gt;I'm trying to fix an apparent bug in Conversant's support for theMetaWeblog and mt (movable type) api's. Conversant's Weblog II plugincan be used as a mt-compatible weblog, or a MetaWeblog-compatibleweblog, or even just a blogger-compatible weblog.&lt;/p&gt;&lt;p&gt;In fact, all three of those api's build on each other. Blogger is themost basicc. MetaWeblog &amp;quot;embraces and extends&amp;quot; it. The mt api does thesame to metaweblog. That's important to understanding the apparentconflict I've run into.&lt;/p&gt;&lt;p&gt;The MetaWeblog RFC has an entry point called &lt;a href=&quot;http://www.xmlrpc.com/metaWeblogApi#metawebloggetcategories&quot;&gt;MetaWeblog.getCategories&lt;/a&gt;.You tell it what weblog you want to know about, and who you are, andit returns the information about that weblog's categories.Specifically, the api documentation says:&lt;/p&gt;&lt;blockquote cite=&quot;http://www.xmlrpc.com/metaWeblogApi#metawebloggetcategories&quot;&gt;    &lt;p&gt;&lt;b&gt;metaWeblog.getCategories&lt;/b&gt;&lt;/p&gt;    &lt;p&gt;    metaWeblog.getCategories (blogid, username, password) returns struct&lt;/p&gt;    &lt;p&gt;    The struct returned contains one struct for each category, containing     the following elements: description, htmlUrl and rssUrl.&lt;/p&gt;    &lt;p&gt;    This entry-point allows editing tools to offer category-routing as     a feature.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;So it's clearly supposed to return a struct of structs, as it says,&amp;quot;the struct returned contains one struct for each category...&amp;quot;&lt;/p&gt;&lt;p&gt;Yet, it seems like everybody else has implementedmetaWeblog.getCategories to return an array of structs, rather than astruct of structs. Examples: &lt;a href=&quot;http://groups.yahoo.com/group/XMLRPCNET/messagesearch?query=getCategories&quot;&gt;XMLRPCNET&lt;/a&gt; and &lt;a href=&quot;http://wiki.xoops.org/wakka.php?wakka=XoopsAndXmlRpc&quot;&gt;xoops&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;What am I supposed to do? It wouldn't matter to me what other serversoftware has done, since I'm not trying to interoperate with otherservers, but I do need (Conversant) to work with the clientsoftware... which, of course, has been written to work with the otherserver software.&lt;/p&gt;&lt;p&gt;The metaweblog spec was written by Dave Winer, so it's safe to saythat Radio (as a client app) implements the spec he wrote... yet itlooks like most other applications (both client and server) have gonethe other way. &lt;a href=&quot;http://ecto.kung-foo.tv/&quot;&gt;Ecto&lt;/a&gt; forWindows, for example, expects the result of metaWeblog.getCategoriesto be an array of structs. (However, ecto uses the XMLRPC.NETframework, so this isn't entirely Ecto's fault.)&lt;/p&gt;&lt;p&gt;Is there any way I can handle this to be compatible with both camps? Aclient app could accept either type of result (like NetNewsWire'seditor probably does, if I know &lt;a href=&quot;http://inessential.com/&quot;&gt;Brent&lt;/a&gt;), but most of them don't do that. Since Conversant is a server app, whatshould I do: follow the original spec, or follow the more common spec?The purist in me suggests the former, but the realist (the one whowants to make the customers happy) says the latter.&lt;/p&gt;&lt;p&gt;What a mess. Simon Fell calls this the problem of &lt;a href=&quot;http://www.pocketsoap.com/weblog/2003/03/1126.html&quot;&gt;slightly uniform interfaces&lt;/a&gt;.&lt;/p&gt;</description>	</item><item>	<title>ScriptMeridian, NetSol, and Dotster</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3791/trackback</trackback:ping>	<link>http://www.truerwords.net/3791</link>	<pubDate>Mon, 29 Mar 2004 16:28:07 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3791</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3791#msg3791</comments>	<category>Technology</category>	<category>Frontier</category>	<category>Radio</category>	<category>Web Sites</category>	<description>&lt;p&gt;&lt;a href=&quot;http://www.scriptmeridian.org/&quot;&gt;ScriptMeridian&lt;/a&gt;'s domain is about to expire. I could:&lt;/p&gt;&lt;ul&gt;    &lt;li&gt;Renew it with &lt;a href=&quot;http://www.networksolutions.com&quot;&gt;NetSol&lt;/a&gt; for &lt;i&gt;just&lt;/i&gt; $39.&lt;/li&gt;    &lt;li&gt;Transfer it to &lt;a href=&quot;http://www.dotster.com/&quot;&gt;Dotster&lt;/a&gt; for $9.&lt;/li&gt;    &lt;li&gt;Let it expire.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I seriously considered the last option, as the site has been mostly dormant for the past year. The first option was never even a possibility, I'm not giving my money to those greedy morons. At less than $10, I don't mind keeping a sleepy site around for another year, so Dotster it is!&lt;/p&gt;&lt;p&gt;(Why Dotster? I already have loads of domains there, and have never had a problem with them. When I first started using them, they were the cheapest service I could find.)&lt;/p&gt;</description>	</item><item>	<title>Radio / Frontier and Mozilla's JavaScript Debugger</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3681/trackback</trackback:ping>	<link>http://www.truerwords.net/3681</link>	<pubDate>Fri, 23 Jan 2004 16:50:37 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3681</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3681#msg3681</comments>	<category>Technology</category>	<category>DHTML / AJAX</category>	<category>Frontier</category>	<category>Mozilla</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;If you use &lt;a href=&quot;http://www.mozilla.org/projects/venkman/&quot;&gt;Venkman&lt;/a&gt; (Mozilla's JavaScript debugger) to debug javascripts which are served by a &lt;a href=&quot;http://radio.userland.com/&quot; title=&quot;Radio Userland&quot;&gt;Radio&lt;/a&gt; or &lt;a href=&quot;http://frontierkernel.org/&quot; title=&quot;Frontier scripting system. Open source.&quot;&gt;Frontier&lt;/a&gt; server, then you may have noticed that the scripts don't completely load into the debugger's Source Code panel. The script just ends at some (seemingly random) point in the file. (Other servers do it too, but that's not my problem at the moment.)&lt;/p&gt;&lt;p&gt;When I ran into this today I thought it was a line-ending issue of some kind, but nothing i did would fix the problem. After a bit of research, I found that it's a &lt;a href=&quot;http://bugzilla.mozilla.org/show_bug.cgi?id=229024&quot;&gt;known bug&lt;/a&gt; in the interaction between Mozilla's network library and Venkman, that was introduced sometime after Mozilla 1.4. Script files that are delivered in &amp;quot;chunks&amp;quot; often display improperly in Venkman.&lt;/p&gt;&lt;p&gt;I mention this in relation to Radio/Frontier because they &amp;quot;chunk&amp;quot; HTTP responses (by default) into 8192-byte pieces. To fix it, set user.inetd.prefs.returnChunkSize to something larger than your script file (I set mine to 32768).&lt;/p&gt;&lt;p&gt;To be honest, I don't know what the other ramifications of this change might be. Perhaps web pages will be served &lt;b&gt;even slower than normal&lt;/b&gt;... so you should probably change it back again when you're done debugging the javascript. (Or, maybe the performance will increase, so you should leave it as it is! Point is, I don't know.)&lt;/p&gt;&lt;p&gt;Hopefully this Mozilla bug will be fixed, soon.&lt;/p&gt;</description>	</item><item>	<title>TLS version 0.3.1</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3590/trackback</trackback:ping>	<link>http://www.truerwords.net/3590</link>	<pubDate>Tue, 09 Dec 2003 11:53:19 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3590</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3590#msg3590</comments>	<category>Macrobyte</category>	<category>Technology</category>	<category>Brian Andresen</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<category>Web Sites</category>	<description>&lt;p&gt;&lt;a href=&quot;http://macrobyte.net/&quot; title=&quot;Macrobyte Resources, my company.&quot;&gt;Macrobyte&lt;/a&gt; has just released &lt;a href=&quot;http://tls.macrobyte.net/releases/0.3.1&quot;&gt;TLS version 0.3.1&lt;/a&gt; for &lt;a href=&quot;http://frontierkernel.org/&quot; title=&quot;Frontier scripting system. Open source.&quot;&gt;Frontier&lt;/a&gt; and &lt;a href=&quot;http://radio.userland.com/&quot; title=&quot;Radio Userland&quot;&gt;Radio&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;This is software which lets Frontier/Radio operate as a secure web server (&quot;https&quot;), and also allows it to communicate with secure web sites as a client (request secure pages and web services).&lt;/p&gt;&lt;p&gt;This version fixes a couple of bugs, and is probably the last version we'll release before 1.0.&lt;/p&gt;&lt;p&gt;This is really cool, to me, because it's a piece of software that I wasn't sure would ever make it to 1.0 (there's very little demand for secure web sites in the Frontier/Radio world).&lt;/p&gt;&lt;p&gt;Special thanks to Brian for making the time to finish this up. (Feels good to put a little project to bed again for awhile, doesn't it!?)&lt;/p&gt;</description>	</item><item>	<title>Sucking Up to Mr. Cadenhead</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3571/trackback</trackback:ping>	<link>http://www.truerwords.net/3571</link>	<pubDate>Wed, 03 Dec 2003 08:58:05 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3571</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3571#msg3571</comments>	<category>Humor</category>	<category>People</category>	<category>Technology</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;&lt;a href=&quot;http://www.npanet.org/public/interviews/careers_interview_92.cfm&quot;&gt;This interview with Rogers Cadenhead&lt;/a&gt; is just embarrassing. Could they possibly suck up to him any more, or lay it on any thicker?&lt;/p&gt;&lt;blockquote cite=&quot;http://www.npanet.org/public/interviews/careers_interview_92.cfm&quot; style=&quot;font-style: italic;&quot;&gt;	&lt;p&gt;&lt;q&gt;Q: You are an acknowledged expert in Radio Userland. How do you	employ Radio UserLand in your work?&lt;/q&gt;	&lt;/p&gt;	&lt;p&gt;&lt;q&gt;Q: Youre a widely read columnist on Linux. Talk about open	source, Linux, and related areasshare your views.&lt;/q&gt;	&lt;/p&gt;	&lt;p&gt;&lt;q&gt;Q: As a developer guru and IT expert you have a considerable	grasp of the IT industry. Can you make some predictionswhich	products and services plus vendors to concentrate on? Can you give	specifics?&lt;/q&gt;	&lt;/p&gt;	&lt;p&gt;&lt;q&gt;Q: With your considerable business and development knowledge, Im	going to ask you a questions on a hot and controversial topic today,	Web services.&lt;/q&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;And the one that prompted me to write this in the first place (the straw that broke the camel's back):&lt;/p&gt;&lt;blockquote style=&quot;font-style: italic;&quot;&gt;	&lt;p&gt;&lt;q&gt;Q: Wisdom is better than knowledge and derives from lifes	experiences. How did you get to your current position in life and	career? You must have some useful tips to share.&lt;/q&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;I'm not denying that Rogers deserved the interview. He's written lots of books and magazine articles... but that was too much sucking up.&lt;/p&gt;&lt;p&gt;Congratulations anyway, Rogers. I hope the book (&lt;a href=&quot;http://www.cadenhead.org/workbench/kickstart/&quot;&gt;Radio UserLand Kick Start&lt;/a&gt;) sells well.&lt;/p&gt;</description>	</item><item>	<title>Google's Weblog Tools Directory</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3492/trackback</trackback:ping>	<link>http://www.truerwords.net/3492</link>	<pubDate>Mon, 20 Oct 2003 07:57:26 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3492</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3492#msg3492</comments>	<category>Technology</category>	<category>Radio</category>	<category>Web Sites</category>	<description>&lt;p&gt;Google's &lt;a href=&quot;http://directory.google.com/Top/Computers/Internet/On_the_Web/Weblogs/Tools/Publishers/&quot;&gt;Directory of Weblog Publishing Tools&lt;/a&gt; doesn't include Radio, or Manila, or even Conversant. All of these tools can be found elsewhere in the directory, but aren't listed on that particular page.&lt;/p&gt;&lt;p&gt;Frankly, I don't think it matters, but it &lt;a href=&quot;http://scriptingnews.userland.com/2003/10/20#When:8:27:50AM&quot;&gt;bothered Dave enough&lt;/a&gt; that he mentioned it this morning. Not only don't they include his (er, UserLand's) products, but they actually list blogger first (Google owns blogger).&lt;/p&gt;&lt;p&gt;Brian Carnell &lt;a href=&quot;http://brian.carnell.com/articles/2003/10/000017.html&quot;&gt;mentioned this on his site&lt;/a&gt; -- basically picking on Dave for not understanding that the Google directory is actually the dmoz directory with a different name. I &lt;a href=&quot;http://brian.carnell.com/4734&quot;&gt;responded&lt;/a&gt; to point out that the dmoz and google versions of that particular directory branch are quite different, and Brian quickly posted a correction.&lt;/p&gt;&lt;p&gt;Google's directory is a re-purposing of the &lt;a href=&quot;http://dmoz.org/Computers/Internet/On_the_Web/Weblogs/Tools/Publishers/&quot;&gt;dmoz directory&lt;/a&gt;, but not a direct copy. They reorder the elements in each sub-directory based on page rank. That definitely explains why blogger is first in the list on Google, but not first at dmoz: blogger is the most popular weblog software by a huge margin, so it would stand to reason that it would have the highest page rank, and therefore would come first in the list in google's directory.&lt;/p&gt;&lt;p&gt;This doesn't explain why Radio isn't in Google's version of that sub-directory (branch). Some have claimed that it's because they're using an old version of dmoz's data because the dmoz syndication system has been broken for a long time, but I disagree. Radio has been in dmoz for quite awhile: I used to edit the &lt;a href=&quot;http://dmoz.org/Computers/Programming/Languages/Frontier/&quot;&gt;Languages/Frontier&lt;/a&gt; section, and remember checking to see where else &lt;a href=&quot;http://search.dmoz.org/cgi-bin/search?search=Radio+UserLand&amp;all=yes&amp;cs=&amp;cat=Computers%2FProgramming%2FLanguages%2FFrontier&quot;&gt;Radio&lt;/a&gt; and &lt;a href=&quot;http://search.dmoz.org/cgi-bin/search?search=UserLand+Frontier&amp;all=yes&amp;cs=&amp;cat=Computers%2FProgramming%2FLanguages%2FFrontier&quot;&gt;Frontier&lt;/a&gt; were listed. That was last year, and Radio was already in the list of weblog tools. Google has updated their cache of dmoz's content since then: the changes I made in Languages/Frontier are in Google's version.&lt;/p&gt;&lt;p&gt;Perhaps the problem with dmoz's syndication system is not global, so only parts of the database are being updated while others are not. That could explain this.&lt;/p&gt;&lt;p&gt;People are also saying it's a page rank issue. Perhaps Radio is ranked too low, and Google isn't showing the whole directory, so they're being &amp;quot;clipped off?&amp;quot; Not likely. Radio might not be as popular as Blogger, or perhaps not even Movable Type, but not even in the top 36? No way. Check out this search for &lt;a href=&quot;http://www.google.com/search?q=weblog+publishing+tools&quot;&gt;weblog publishing tools&lt;/a&gt; (which is basically the name of the google/dmoz directory). Radio comes in seventh, behind two lists of weblog tools (including Google's own directory page), a page about Movable Type, and a few other pages that aren't specific to any tool (based on the page titles, anyway). If Radio is in Google's copy of the directory (which is weird, but the only explanation besides Google being so scared of little UserLand's competition that they pulled them out), then it should be near the top of the list.&lt;/p&gt;&lt;p&gt;Unfortunately, Google doesn't usually respond to mere mortals when asked questions about how/why things are the way they are in their directory, so Dave isn't likely to get an answer any time soon. (Neither am I, but now that I've written this I'm going back to not caring much about the directories. ;-) They're not very useful, and they don't generate much traffic at all.)&lt;/p&gt;</description>	</item><item>	<title>Harvey's Help!blog</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3273/trackback</trackback:ping>	<link>http://www.truerwords.net/3273</link>	<pubDate>Fri, 18 Jul 2003 09:52:02 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3273</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3273#msg3273</comments>	<category>People</category>	<category>Technology</category>	<category>Radio</category>	<category>Web Sites</category>	<description>&lt;p&gt;&lt;a href=&quot;http://itown.com/hkblog/&quot;&gt;Harvey Kirkpatrick&lt;/a&gt; is seriously &amp;quot;into&amp;quot; doing nice things for people. In fact, that's my main impression of him, that's where he's slotted in my brain: &amp;quot;doer of nice things.&amp;quot; (This is in no way a criticism, at all. It's a good thing.)&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://www.itopik.com/&quot;&gt;itopik&lt;/a&gt;, &lt;a href=&quot;http://www.itown.com/&quot;&gt;itown&lt;/a&gt;, and &lt;a href=&quot;http://www.iteople.com/&quot;&gt;iteople&lt;/a&gt; (ouch) all seem to be designed to help people connect based on common interests: subject matter, locale / geography, or a common interest in other (famous or infamous) personalities.&lt;/p&gt;&lt;p&gt;Now he's started &lt;a href=&quot;http://www.helpblog.com/&quot;&gt;Help!blog&lt;/a&gt;, a weblog where people can post requests for... uh, help. Obviously. We're talking &amp;quot;answers and information&amp;quot; here, not money or things.&lt;/p&gt;&lt;p&gt;Interesting idea, from a low-cost philanthropic perspective. Honestly, a small part of me thinks Harvey seems like a happy hippy with too much technology at his disposal ;-), but the less cynical majority is proud of him for trying, for helping in any way he can.&lt;/p&gt;</description>	</item><item>	<title>New Radio Tool</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3259/trackback</trackback:ping>	<link>http://www.truerwords.net/3259</link>	<pubDate>Thu, 10 Jul 2003 18:24:33 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3259</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3259#msg3259</comments>	<category>Customers</category>	<category>Macrobyte</category>	<category>Business</category>	<category>Technology</category>	<category>Conversant</category>	<category>Radio</category>	<description>&lt;p&gt;I've mostly-finished a new &lt;a href=&quot;http://radio.userland.com/directory/6742/developers/tools&quot;&gt;Radio tool&lt;/a&gt; for a client (all done except for the client's review). It's pretty cool! I got to delve into an area of the environment that I hadn't played with (much) before -- nodeTypes and windowTypes -- and it provides another bridge between &lt;a href=&quot;http://radio.userland.com/&quot; title=&quot;Radio Userland&quot;&gt;Radio&lt;/a&gt; and &lt;a href=&quot;http://conversant.macrobyte.net/&quot; title=&quot;Macrobyte's Groupware and Content Managent software&quot;&gt;Conversant&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Really shouldn't say much more about it until the client has looked it over, of course. Once it's been accepted, Macrobyte will own it. I know a few users who will definitely find it useful besides this client.&lt;/p&gt;</description>	</item><item>	<title>Let's Buy UserLand! Yeah!</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3233/trackback</trackback:ping>	<link>http://www.truerwords.net/3233</link>	<pubDate>Tue, 08 Jul 2003 09:48:45 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3233</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3233#msg3233</comments>	<category>Humor</category>	<category>Technology</category>	<category>Conversant</category>	<category>Frontier</category>	<category>Radio</category>	<description>&lt;p&gt;Since John Robb announced that he no longer works at UserLand, and Dave's subsequent &lt;a href=&quot;http://scriptingnews.userland.com/2003/07/07#When:1:21:54PM&quot;&gt;non-announcement&lt;/a&gt; about changes at UserLand, numerous people have suggest that Macrobyte buy UserLand. &lt;a href=&quot;http://greg.agiletortoise.com/&quot; title=&quot;Greg Pierce&quot;&gt;Greg&lt;/a&gt; even offered to chip in $2!&lt;/p&gt;&lt;p&gt;If everybody who suggested that we purchase UserLand were to pool their money, we might have enough to at least buy a &lt;a href=&quot;http://radio.userland.com/&quot; title=&quot;Radio Userland&quot;&gt;Radio&lt;/a&gt; license. What's a UserLand go for these days?&lt;/p&gt;</description>	</item><item>	<title>That Was Support</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3223/trackback</trackback:ping>	<link>http://www.truerwords.net/3223</link>	<pubDate>Sat, 05 Jul 2003 11:26:53 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3223</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3220#msg3223</comments>	<category>People</category>	<category>Technology</category>	<category>CMS</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;Thursday's post, &amp;quot;&lt;a href=&quot;http://www.truerwords.net/3220&quot;&gt;It Must Be Dave's Fault&lt;/a&gt;,&amp;quot; was written in support of RSS, Dave, and UserLand. Apparently some people are unable to read between the lines.&lt;/p&gt;&lt;p&gt;Really, I was going to completely ignore the whole Echo &amp;quot;thing&amp;quot; until and unless something significant came of it, but it seems this is all anybody wants to talk about.&lt;/p&gt;&lt;p&gt;Would I like to have a better format than RSS 2.0? Uh... I guess. Depends on what &amp;quot;better&amp;quot; means... remember that part of being a good format is one which can be easily adopted. RSS is perfect, at least in that way.&lt;/p&gt;&lt;p&gt;How about a better protocol than MetaWeblog? Yes, that I'd be a little happier about. &lt;a href=&quot;http://conversant.macrobyte.net/&quot; title=&quot;Macrobyte's Groupware and Content Managent software&quot;&gt;Conversant&lt;/a&gt; supports an unlimited number of vectors for metadata (categorization) in weblog posts. Last I checked, that couldn't be done with the MetaWeblog API. On the other hand, that can't be done with any of the current desktop weblog clients either, so it doesn't matter that much to me.&lt;/p&gt;&lt;p&gt;Adding support for a new syndication format will take a couple hours. Adding another protocol, especially one based on SOAP instead of XML-RPC, is something I don't even want to think about right now.&lt;/p&gt;&lt;p&gt;If &lt;a href=&quot;http://www.blogger.com/developers/2003_07_01_archive.pyra#105711794730830300&quot;&gt;Blogger&lt;/a&gt; weren't behind Echo (or whatever they're calling it now), I wouldn't be worried aobut this at all... it would be one of those projects that start with a huge burst of energy and noise, but then fades away to obscurity and fossilization. Unfortunately, with Blogger's mass and resources behind it, I'm afraid the rest of us won't be able to ignore it.&lt;/p&gt;</description>	</item><item>	<title>Loop-de-loop</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3102/trackback</trackback:ping>	<link>http://www.truerwords.net/3102</link>	<pubDate>Tue, 20 May 2003 12:48:00 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3102</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3102#msg3102</comments>	<category>Technology</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;It is a little frustrating to watch the latest 'generation' of UserTalk programmers/scripters/users make the same mistakes and try to learn the same workarounds and hacks as those that came before. The frustration isn't witht he people -- it's certainly not their fault -- but that there's no way to help them, and that the workarounds are all still necessary.&lt;/p&gt;&lt;p&gt;Exercises to find the fastest way to loop through a table? Questions about whether it's faster to process a list or a table? Blah! This stuff was fun the first time, amusing the second time, somewhat interesting the third and fourth times, but every time since then I've had to force myself to read the messages and wish I had better answers for them this time around.&lt;/p&gt;&lt;p&gt;Like I said, loop-de-loop. It's a merry-go-round that never stops.&lt;/p&gt;</description>	</item><item>	<title>Optimize Your UserTalk: Remove Extra Variables</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3062/trackback</trackback:ping>	<link>http://www.truerwords.net/3062</link>	<pubDate>Fri, 02 May 2003 12:12:12 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3062</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3062#msg3062</comments>	<category>Essays</category>	<category>Technology</category>	<category>Conversant</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;When optimizing UserTalk code, one thing to watch for is the use of extra variables (this actually applies to all languages, though most have built-in optimizers that take care of this for you). Every variable creation and assignment operation uses a little processor time, so judicious use of extra variables will make your scripts run a little bit faster, and they'll use a little less RAM.&lt;/p&gt;&lt;p&gt;However, there's a bug in Frontier (and Radio) that you'll have to watch out for.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://www.truerwords.net/articles/ut/extravariables.html&quot;&gt;Read the full article...&lt;/a&gt;&lt;/p&gt;</description>	</item><item>	<title>Thanks, Emmanuel</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/3067/trackback</trackback:ping>	<link>http://www.truerwords.net/3067</link>	<pubDate>Fri, 02 May 2003 18:41:00 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/3067</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=3067#msg3067</comments>	<category>People</category>	<category>Technology</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;Emmanuel Decarie had some very &lt;a href=&quot;http://blog.scriptdigital.com/index.php?entry=/RadioUserLand/Dev/sethessays.html&quot;&gt;kind things to say&lt;/a&gt; about me, my scripting, and my writing.&lt;/p&gt;&lt;p&gt;Thanks man, I appreciate it.&lt;/p&gt;</description>	</item><item>	<title>Still No Way to Set Attributes in XML</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/2903/trackback</trackback:ping>	<link>http://www.truerwords.net/2903</link>	<pubDate>Mon, 24 Feb 2003 09:41:02 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/2903</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=2903#msg2903</comments>	<category>Technology</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<category>XML</category>	<description>&lt;p&gt;After years of working with XML in &lt;a href=&quot;http://frontierkernel.org/&quot; title=&quot;Frontier scripting system. Open source.&quot;&gt;Frontier&lt;/a&gt; and &lt;a href=&quot;http://radio.userland.com/&quot; title=&quot;Radio Userland&quot;&gt;Radio&lt;/a&gt;, I still can't believe there's no built-in way to set element attributes.&lt;/p&gt;&lt;p&gt;We have xml.getAttribute() and xml.getAttributeValue(). Why are we still lacking the analogous xml.setAttribute() or xml.setAttributeValue() ? Frontier's original parser, &lt;a href=&quot;http://www.techsoln.com/frontier/blox/&quot;&gt;Blox&lt;/a&gt; (written by my friend Brian Andresen), had a &lt;a href=&quot;http://www.techsoln.com/frontier/blox/docs/verbs/setAttribute.html&quot;&gt;setAttribute()&lt;/a&gt; from the very beginning becuase Brian recognized the need. Unfortunately, Blox is no longer maintained or supported.&lt;/p&gt;&lt;p&gt;I'm tired of writing my own fix for this little bug every time I'm working on a new project that manipulates XML.&lt;/p&gt;</description>	</item><item>	<title>Thread-based Global Variables in UserTalk</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/2787/trackback</trackback:ping>	<link>http://www.truerwords.net/2787</link>	<pubDate>Mon, 20 Jan 2003 20:57:58 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/2787</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=2787#msg2787</comments>	<category>Essays</category>	<category>Technology</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;Most UserTalk developers don't realize that the language supports thread-based global variables. Prompted by a discussion on UserLand's Radio-Dev mailing list, I've posted an article on &lt;a href=&quot;http://www.truerwords.net/articles/ut/globals.html&quot;&gt;how to use globals&lt;/a&gt; and what to watch out for.&lt;/p&gt;&lt;p&gt;I hope someone finds it useful.&lt;/p&gt;</description>	</item><item>	<title>Patching Frontier's Support for External Editors</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/2633/trackback</trackback:ping>	<link>http://www.truerwords.net/2633</link>	<pubDate>Tue, 26 Nov 2002 17:51:31 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/2633</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=2633#msg2633</comments>	<category>Essays</category>	<category>Technology</category>	<category>Frontier</category>	<category>Operating Systems</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;As has been mentioned, MacOS X 10.2.2 changed something related to the sending of Apple Events. Unfortunately &lt;a href=&quot;http://frontierkernel.org/&quot; title=&quot;Frontier scripting system. Open source.&quot;&gt;Frontier&lt;/a&gt; and &lt;a href=&quot;http://radio.userland.com/&quot; title=&quot;Radio Userland&quot;&gt;Radio&lt;/a&gt; have not yet been updated to deal with this change, and crashes under some circumstances.&lt;/p&gt;&lt;p&gt;There is an easy fix for this problem that restores full functionality &lt;b&gt;now&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://www.truerwords.net/2633&quot;&gt;Continued...&lt;/a&gt;&lt;/p&gt;</description>	</item><item>	<title>My Townblog</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/2630/trackback</trackback:ping>	<link>http://www.truerwords.net/2630</link>	<pubDate>Sat, 23 Nov 2002 08:40:07 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/2630</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=2622#msg2630</comments>	<category>Customers</category>	<category>Macrobyte</category>	<category>Technology</category>	<category>Radio</category>	<description>&lt;p&gt;Here's &lt;a href=&quot;http://www.townblogs.com/users/0000006/&quot;&gt;my townblog&lt;/a&gt; on townblogs.com. Forgot to link to it earlier.&lt;/p&gt;&lt;p&gt;I'm mainly going to use it for talking about Mystic. We decided to leave it there after townblogs.com launched because it'll be fun to come back to it in a couple years to see the &quot;making of.&quot;&lt;/p&gt;</description>	</item><item>	<title>Harvey Kirkpatrick: Man About Town</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/2622/trackback</trackback:ping>	<link>http://www.truerwords.net/2622</link>	<pubDate>Thu, 21 Nov 2002 11:03:30 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/2622</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=2622#msg2622</comments>	<category>Customers</category>	<category>People</category>	<category>Macrobyte</category>	<category>Business</category>	<category>Technology</category>	<category>Travel</category>	<category>CMS</category>	<category>Conversant</category>	<category>Frontier</category>	<category>Radio</category>	<category>Web Sites</category>	<description>&lt;p&gt;&lt;a href=&quot;http://www.itown.com/&quot;&gt;&lt;img src=&quot;http://www.itown.com/images/new_mid_itown.gif&quot; width=&quot;150&quot; height=&quot;161&quot; border=&quot;0&quot; align=&quot;right&quot; alt=&quot;itown logo&quot; /&gt;&lt;/a&gt;A few weeks ago, &lt;a href=&quot;http://www.itown.com/hkblog/&quot;&gt;Harvey Kirkpatrick&lt;/a&gt; was looking for someone to help him set up a &lt;a href=&quot;http://rcs.userland.com/&quot;&gt;Radio Community Server&lt;/a&gt; and custom &lt;a href=&quot;http://radio.userland.com/&quot; title=&quot;Radio Userland&quot;&gt;Radio&lt;/a&gt; installers. He contacted &lt;a href=&quot;http://inessential.com/&quot;&gt;Brent&lt;/a&gt; first, and Brent was kind enough to recommend me.&lt;/p&gt;&lt;p&gt;The system is all set up. It's called &quot;townblogs,&quot; and it's more than just a Radio hosting service.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://www.itown.com/&quot;&gt;itown.com&lt;/a&gt; is a &lt;b&gt;big&lt;/b&gt; directory of towns. It doesn't have every town in the world, but most of them are in there (and if your town is missing, just ask them to add it). Each town has its own page.&lt;/p&gt;&lt;p&gt;The idea behind &lt;a href=&quot;http://www.townblogs.com/radio/&quot;&gt;townblogs&lt;/a&gt; is that people like writing about their towns, so why not give them a place to do it?&lt;/p&gt;&lt;p&gt;It works like this: download a copy of itown Radio, and you have thirty days to decide if blogging is for you. If you enjoy it, then pay for your copy. If you are writing about your town then you can be listed on your town's page in the directory. Show it to your friends and maybe some of them will do the same thing about their towns. Link to each other. Then the search engines find you and your writing gains an audience as people read your writing to learn about your town.&lt;/p&gt;&lt;p&gt;The townblog sites are relaly nice looking. &lt;a href=&quot;http://www.bryanbell.com/&quot;&gt;Bryan Bell&lt;/a&gt; did the theme and logo designs. (Yes, I'm a little jealous...)&lt;/p&gt;&lt;p&gt;Harvey is the man &quot;about town&quot; (excuse the pun). He's been dreaming about this for seven years, and it's finally starting to take shape. I hope it works out for him, I hope it's wildly successful.&lt;/p&gt;&lt;p style=&quot;color: #999&quot;&gt;I hope... I hope he eventually uses Conversant to host the itown directories. &lt;tt&gt;;-)&lt;/tt&gt;&lt;/p&gt;</description>	</item><item>	<title>Apple Events and Frontier</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/2590/trackback</trackback:ping>	<link>http://www.truerwords.net/2590</link>	<pubDate>Tue, 12 Nov 2002 12:46:12 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/2590</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=2590#msg2590</comments>	<category>Technology</category>	<category>Frontier</category>	<category>Operating Systems</category>	<category>Programming</category>	<category>Radio</category>	<description>&lt;p&gt;John VanDyk had to &lt;a href=&quot;http://iowa.weblogger.com/2002/11/12&quot;&gt;rewrite some Frontier scripts&lt;/a&gt; in AppleScript today. I had the same problem, and wasted a couple hours this morning doing the very same thing.&lt;/p&gt;&lt;p&gt;Something about AppleEvents changed in 10.2.2, and neither &lt;a href=&quot;http://frontierkernel.org/&quot; title=&quot;Frontier scripting system. Open source.&quot;&gt;Frontier&lt;/a&gt; or &lt;a href=&quot;http://radio.userland.com/&quot; title=&quot;Radio Userland&quot;&gt;Radio&lt;/a&gt; have been updated yet to deal with it. The first AE always seems to go fine, and the second one causes Frontier/Radio to crash.&lt;/p&gt;&lt;p&gt;It's especially frustrating in Radio. If your browser isn't running when you launch Radio, it launches it for you (one AE) and then sends you to the desktop website's home page (two AE's). Kaboom.&lt;/p&gt;&lt;p&gt;I'm sure they'll have it fixed soon, but it was a major hassle this morning to rewrite my scripts in AppleScripts. When it comes to string handling, AppleScript is to Frontier what Frontier is to Perl. Seriously, it's that bad.&lt;/p&gt;</description>	</item><item>	<title>RSS in Weblog II</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/2585/trackback</trackback:ping>	<link>http://www.truerwords.net/2585</link>	<pubDate>Thu, 07 Nov 2002 17:36:37 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/2585</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=2585#msg2585</comments>	<category>Macrobyte</category>	<category>Technology</category>	<category>CMS</category>	<category>Conversant</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<category>Web Sites</category>	<category>XML</category>	<description>&lt;p&gt;Today I taught Conversant's new weblog plugin (Weblog II) how to produce &lt;a href=&quot;http://backend.userland.com/rss&quot;&gt;RSS feeds&lt;/a&gt; in a way which is both flexible and ridiculously easy to use (zero effort required).&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://www.truerwords.net/2555&quot;&gt;The cool feature&lt;/a&gt; I was all excited about last week dovetails perfectly with its new RSS savviness, making for a killer combo.&lt;/p&gt;&lt;p&gt;I decided to put the beta test off until next week. Too much to do, and rolling it out the beta-testers would make everything take longer. (Sorry, guys.)&lt;/p&gt;</description>	</item><item>	<title>XSLT for Frontier and Radio</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/2580/trackback</trackback:ping>	<link>http://www.truerwords.net/2580</link>	<pubDate>Tue, 05 Nov 2002 17:59:13 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/2580</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=2580#msg2580</comments>	<category>Technology</category>	<category>CMS</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<category>XML</category>	<description>&lt;p&gt;&lt;a href=&quot;http://spicynoodles.org/&quot;&gt;André Radke&lt;/a&gt; has released an early version of an &lt;a href=&quot;http://www.spicynoodles.net/2002/11/05.html&quot;&gt;XSLT engine&lt;/a&gt; for &lt;a href=&quot;http://radio.userland.com/&quot; title=&quot;Radio Userland&quot;&gt;Radio&lt;/a&gt; and &lt;a href=&quot;http://frontierkernel.org/&quot; title=&quot;Frontier scripting system. Open source.&quot;&gt;Frontier&lt;/a&gt;.&lt;/p&gt;&lt;h3&gt;What is XSLT?&lt;/h3&gt;&lt;p&gt;&lt;a href=&quot;http://www.w3.org/TR/xslt&quot;&gt;XSLT&lt;/a&gt; is a technology for transforming &lt;a href=&quot;http://www.w3.org/TR/REC-xml&quot; title=&quot;Extensible Markup Language&quot;&gt;XML&lt;/a&gt; documents into other XML documents. Sound silly? It's not.&lt;/p&gt;&lt;p&gt;An XML document might be written by a person (or assembled by a program) to contain a particular type of information, to be used by a particular type of application (the internal storage formats of some CMS's are XML). However, that XML is almost never designed to be presented to the user as-is, it must be converted to another format. HTML can be written as valid XML, so one popular use of XSLT is the transformation of XML documents written with one vocabulary into HTML documents for presentation on the web.&lt;/p&gt;&lt;p&gt;This is a very good thing. It allows the original XML documents to retain real meaning, while the transformed document can be optimized for presentation. I ran into this when working on the documentation for &lt;a href=&quot;http://conversant.macrobyte.net/&quot; title=&quot;Macrobyte's Groupware and Content Managent software&quot;&gt;Conversant&lt;/a&gt;. Writing in &lt;a href=&quot;http://www.docbook.org/&quot;&gt;DocBook&lt;/a&gt; allows (er, forces) me to provide a lot of meta-information about everything in the documentation (&quot;this is sample code&quot; and &quot;this is the abstract for a subsection of a chapter&quot;), without consideration for how it will actually be presented. XSLT is one way to transform that XML into HTML, automatically.&lt;/p&gt;</description>	</item><item>	<title>Finding and Activating URLs with Regular Expressions (Regex)</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/2539/trackback</trackback:ping>	<link>http://www.truerwords.net/2539</link>	<pubDate>Fri, 25 Oct 2002 13:25:34 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/2539</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=2539#msg2539</comments>	<category>Macrobyte</category>	<category>Technology</category>	<category>Conversant</category>	<category>Email</category>	<category>Frontier</category>	<category>Programming</category>	<category>Radio</category>	<category>Web Sites</category>	<description>&lt;p&gt;It's funny how one thing leads to another.&lt;/p&gt;&lt;p&gt;When Conversant mails out a &lt;b&gt;plain-text&lt;/b&gt; email (versus HTML email), it strips out HTML links and puts the URL in parentheses after the linked text. Then it just strips out all other HTML tags, so that the people on the mailing list don't see HTML tags in their email.&lt;/p&gt;&lt;p&gt;After two and a half years of working this way, it was requested that we change from &lt;a href=&quot;http://support.free-conversant.com/5710&quot;&gt;parens to angle brackets&lt;/a&gt;. So, I looked into it. Sounds easy enough, at first...&lt;/p&gt;&lt;p&gt;Except that it's not just about outgoing email. When you reply to one of those messages, it's posted back to the site, which means whatever we send out in the email must translate into valid content for displaying in a web page. When a plain text email comes in to Conversant, the angle brackets (&amp;lt; and &amp;gt;) are converted to entities (&amp;amp;lt; and &amp;amp;gt;).&lt;/p&gt;&lt;p&gt;Even that would be ok, but when URL's are sitting alone on a page (not in a tag), Frontier (on which Conversant is written) tries to activate them like this: http://conversant.macrobyte.net/&lt;/p&gt;&lt;p&gt;Frotier's URL activator didn't realize...&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/2539&quot;&gt;Continued...&lt;/a&gt;&lt;/p&gt;</description>	</item><item>	<title>Fun Day, Funny Frontier</title>	<author>seth@macrobyte.net</author>	<dc:creator>Seth Dillingham</dc:creator>	<trackback:ping>http://www.truerwords.net/2415/trackback</trackback:ping>	<link>http://www.truerwords.net/2415</link>	<pubDate>Fri, 20 Sep 2002 18:36:17 GMT</pubDate>	<guid isPermaLink="true">http://www.truerwords.net/2415</guid>	<comments>http://www.truerwords.net/fullThread$msgNum=2415#msg2415</comments>	<category>Technology</category>	<category>Conversant</category>	<category>Frontier</category>	<category>Radio</category>	<description>&lt;p&gt;Today was a fun day. Started out helping one client with his new Conversant server, and explained some ideas for a clever integration of Conversant and Apache. Then I spent most of the rest of the day working on the single &quot;most lacking&quot; feature in Conversant. It's now 90% complete, and I should have it finished on Sunday.&lt;/p&gt;&lt;p&gt;Just a few minutes ago, though, Frontier did something very strange. It popped up a dialog box -- with no text entry field -- which said, &quot;Name for new script cell?&quot; It was supposed to be a debug message containing nothing but a password string, but instead it was asking for something completely different.&lt;/p&gt;&lt;p&gt;Turns out that this is a bug in Frontier and Radio on OS X. If you pass an empty string to dialog.notify( ), it displays the last text passed to dialog.ask(). For proof, run this in the quickscript window:&lt;/p&gt;&lt;blockquote&gt;&lt;code&gt;    local ( s );&lt;br /&gt;    dialog.ask( &quot;What is your name?&quot;, @s );&lt;br /&gt;    dialog.notify( &quot;&quot; )&lt;/code&gt;&lt;/blockquote&gt;&lt;p&gt;Very odd.&lt;/p&gt;&lt;p&gt;Anyway, on a &quot;normal day&quot; I could certainly finish that Conversant upgrade I've been working on, but I need to sleep early and deeply tonight. I have a long, hard day ahead of me tomorrow! Six hours in the car, and almost six on the bike. (The worst of it will be the drive home after the ride. That's really going to stink.)&lt;/p&gt;</description>	</item>	</channel></rss>