Ian Bicking: the old part of his blog

Microformats, Feeds, and Blogs

At BarCamp Chicago one of the topics of discussion was about blog tools, and generalizing blogs, and adding features to blog software, and stuff like that. I like thinking about blogs as a minimalistic set of tools, and a number of the features people mentioned struck me as great opportunities for microformats and intermediaries.

For instance, Josh McAdams was writing a blog for YAPC and wanted to be able to turn posts and comments into a FAQ. A blog post attached to a point in time and potentially buried in the archive wasn't a great way of answering questions, but it was a great way of notifying people of things related to the event (including new questions and answers).

So, I imagine putting something like this into a post:

<dl class="faq" tags="billing">
  <dt class="question">Q: ...</dt>
  <dd class="answer">A: ...</dd>
</dl>

And a bot reading your feed would automatically pick it up and put it into a FAQ page (picking up other information from the feed as well, like date posted, the link to the original post that may have comments or other information, and using the Atom ID to detect the difference between additions and edits).

A FAQ is probably an extraction from the feed -- you'd want the ability to add items without going through the blog (e.g., for initial setup), and removing and rearranging items, so the feed is not the canonical source for items.

Another example was a blog for a specific campaign to raise some money for charity. You might post progress like:

We got another <span class="donation-addition">$100</span> in
donations over the weekend.

And it would automatically update the donation counter.

Another idea involved filtering of the blog itself, not just watching the blog. To filter the blog, the feed would be the complete canonical source for the blog, and the public page would just be a view on that feed. (This is not currently a common architecture for blog software, but it could be.) So, imagine another microformat:

<div class="product-item" product-id="458XY" product-cost="$19.99">
  Buy one of our new T-Shirts!  Available in M, L, and XL.
  <img align="right" src="/images/t-shirt.jpg">
</div>

The intermediary adds a button to purchase the item, maybe coordinated with a payment system (like PayPal) or with some shopping cart system, and adds a record about the item and its description to some internal index. The post not only introduces the item, but probably serves as a product page. The intermediary is configured with information about payment systems, authentication information to the payment backend, etc.

In all these cases, the microformats aren't really accessible to large audiences -- they require writing custom HTML. But that's solvable problem, and what makes it interesting is that it can be solved purely in terms of authoring. No new tables, no fancy restructuring, the backend doesn't have to be aware of every feature you might be interested in.

It's too bad this didn't come up until the second day of BarCamp, and when things had quieted down some; I bet we could have banged out a couple examples of this in real code during BarCamp itself.

Created 17 Jul '06

Comments:

This reminds me a bit of what syncato could do.

# Jos

It's been a while since I've looked at Syncato -- and a while since it's been developed -- but it seemed more about microcontent than microformats... though I suppose the microformat (e.g., <span class="donation">) is like a bit of embedded microcontent -- though often the whole point of a microformat is presenting the content in a meaningful context. Actually the HyperCardish system we worked on at BarCamp (see) has a lot more similarity with Syncato.

# Ian Bicking

Your product example is pretty much what Edgeio is doing. And here's the link as plaintext because your markup docs don't make sense. http://www.edgeio.com/

# Peter Harkins