Tuesday, November 29, 2005

Work in progress

Originally uploaded by interstar.
OK. So this isn't the most exciting screenshot you've seen.

What is it? It's a list of a few of those UnfinishedProjects I'm working on. It came from an OPML file I created in Dave Winer's OPML editor. And it's being rendered by Gene Cash's great Tree widget (for Python Tkinter).

Don't worry, I'm not writing an outliner! :-)

Nor am I so on the OPML tip that I'm desperate to do anything with the format. No, really!

So what is going on? Well, one clue is in the open "Gutter Family" section.

GutterClique is the name of the script which manages and generates my blogroll. For various reasons, this isn't like a typical blogroll or subscription list. It's not stored as OPML or Xoxo. And it's not a hierarchy.

Instead, all the links are stored in a double-comma separated file and each can have an indefinite number of tags. When you see my blogroll in the gutter of one of my blogs, it's actually being pulled out by a simple template which matches links or tags. So, for example, the Smart Cookies section of my blogroll is produced by this line in the template :


which selects all the links that have been tagged "SmartCookie". That's why the same link can appear in several sections. This is folksonomy rather than taxonomy.

GutterClique is a simple, throw-away script. But I have another idea for it. And for various reasons, I want to give it a simple GUI.

At the same time, I do happen to have some OPML handling code I wrote recently. And today I wanted to look at this Tree rendering widget.

I'm looking at the Tree renderer for use in SystemSketch, which is my real work in progress, and which I'll give a status report soon.

Suffice to say, before deciding to slot it into SystemSketch (which is currently a confused heap of UI code because I'm still not sure what I want) I thought I'd just play with it in a simpler context. Plugging it into OPML reading code was the easy way to do that.

And now I think GC really ought to be able to import and export OPML - so much is happening on this front at the moment. OPML may be evolving into something for both attention and social networking (as I predicted here).

If GutterClique is going to be viable in this world, even though I have a very different trajectory in mind to take it in, I think it's going to have to know a little bit about OPML.

Bonus factoid : people who've been paying very close attention to me for a long time (ie. no-one), may remember that an early draft of Typed Threaded Discussion exported OPML. (Don't bother looking 'cos it's broken now.) TTD is no more. But see that SmartDiscuss project? :-)

At some point TTD will be reborn as Tagged Threaded Discussion. I'll take the advice of my critics and allow users to mark their responses with multiple free-form tags rather than forcing the users to choose one "type".

There's a commonality between TTD and GC: trees with tags. Not clear whether OPML can handle this, but if it can, it'll be part of the mix too. If not, I may find myself going the microformat route after all :-)

Update : my simple code is here.

No comments: