WeblogRoadmap

Coming back to this page much later, I must confess that I don’t have the foggiest idea what this has to do with either weblogs or a roadmap. 😄

So let’s try to put in some perspective: Let this page be a part of the OddmuseRoadmap. This is the page where I’m going to write about things I’m adding to Oddmuse that make it usable as a WebLog.

OddmuseRoadmap

Oddmuse

WebLog

Weblogs use RSS to broadcast updates. Oddmuse use it, too. At first, it used the XML::RSS module which produces RSS 1.0. Later I moved to hand-coded RSS 2.0, however. It seemed more elegent than the RDF crap that went into RSS 1.0.

I’m actually interested in using Atom (RFC 4287), since I’d like the wiki to be editable with an Atom editor. Right now I don’t know of any Atom editor I would want to use however, so this will have to wait. That’s why Atom support is in an extension, where as RSS 2.0 support is part of the Oddmuse core.

I actually like ¹. It gets rid of all XML ugliness. We also loose some XML power, but we only needed the power because we didn’t constrain the problem. RSS 3.0 is a simple solution for the contrained problem. Got the link from the discussion on Sam Ruby’s wiki. ² I implemented RSS 3.0 for OddMuse.

=>

¹

²

OddMuse

The point is not Design Patterns and Object Orientation and Namespaces and Extensability – it is SimpleSoftwareDesign!

SimpleSoftwareDesign

Aaron Schwartz recently wrote about a critical point in the life cycle of the weblog roadmap wiki: Ideas & Opinions were collected, but as things are getting more concrete, we see that no conflicts have been resolved, and now a small number of people is taking things into their own hands. ³

³

Here is a Python parser for RSS 3.0 ⁴:

[dict(re.compile('(?s)([^\n:]+): (.*?)(?=\n[^ t]|\Z)').findall(item)) for item in unicode(s, "utf-8").split('\n\n')]

There is also a very interesting rant on the evilness of XML on the intertwingly wiki ⁵. The author has managed to name the problem which had eluded me for so long. I knew I had a problem, because somehow XML was harder to use than it looked. Finally the explanation is here:

Whether something is an attribute or element is *completely* arbitrary. It is based on some arbitrary choices in the design process that reveal absolutely no inherent qualities. For purely pragmatic reasons, SGML folks will use attributes for some things and elements for others because their tools can deal with some things in attributes and some things in elements. The faulty idea that attributes say something “about” the element and sub-elements somehow constitute be their contents is the same premature structuring that premature optimization of code suffers from.

BrianTempleton notes with respect to this that ErikNaggum has done “much ranting, often quite informative, about the structural and semantic weaknesses of SGML; Erik on SGML, Erik on XML.”

Erik on SGML

Erik on XML

For some of the more arcane abominations, check out the old MetaWeblog API example ⁶ in the Atom Article on xml.com ⁷ (via dive into mark ⁸). Mark’s article then goes on to show how great Atom is. But all I care about is this: Should I implement Atom for Oddmuse? And that will certainly blow my 4000 lines limit on the source. So the question really is: How important is this? And: Can it be done in the config file? (Actually I think it can...)

Anyway, I started using RSS 3.0 to exchange search results between Oddmuse wikis... See Oddmuse:Near_Links. More thoughts about Oddmuse on the OddmuseRoadmap.

Oddmuse:Near_Links

OddmuseRoadmap

---

​#Blogs ​#Oddmuse