POSH Patterns

April 27th, 2007

The crowds at the big keynote events just weren’t my kind of people. That’s not to say they were bad people; they just don’t love the Web. They see the opportunities and power offered by the Web. They see how the Web can help them. But they don’t love the Web.

At the edges of the conference, it was a different story. There were some great ad-hoc gatherings organised by people who truly are my kind of people.

Kelly put together a Mobile Salon over at her place, gathering together some great geek minds from across the globe. She did a great job of herding the cats and made sure that everyone had a productive but fun time. I found myself in a particularly fruitful round-table discussion. The whole thing was recorded so keep an eye on Kelly’s site for a podcast of the evening.

From the Mobile Salon, I was whisked across town to the Thirsty Bear, the last-minute location of the microformats dinner: good food, good company and good markup. There was a great turn-out and the gathering was a great success due in no small part to on-the-spot sponsorship from Google, Yahoo (thanks, Nate), Technorati and Praized, all of whom chipped in for the first round of food and drinks. Magnolia followed up with the second round—Larry Halff is a gentleman and a scholar.

It wasn’t all eating, drinking and merriment. I sat down with Tantek, Chris and John to discuss some issues that had been on my mind ever since having a conversation with Andy and Brian in an Edinburgh pub. We reached consensus pretty quickly that we need to refocus the way that we’re presenting microformats to newcomers.

Microformats are an exciting technology and once that light bulb goes off over your head and you “get” how useful they are, your natural inclination is to enthusiastically join in the fun. The problem is how people then choose to get involved.

When myself or Tantek are speaking at conferences, evangelising microformats, we make a point of saying “Anyone can get involved in creating microformats.” This is true but it needs clarification. The process of creating a microformat is well documented but often ignored. Instead, enthusiastic developers toil in isolation before announcing “Look, I’ve created a microformat!” At this point we have to reluctantly crush their dreams and tell them that what they’ve created is not a microformat. Disappointment and disillusionment follows.

A lot of people are very eager to create microformats. But they’re missing a number of key points. First of all, the creation of a new microformat is rarely desirable. If existing microformats can be recycled or if regular markup suffices, that’s a success. But not everyone sees it that way—maybe because they want to have their name attached to a new microformat.

Microformats are cool. I don’t know when the tipping point occurred but at some stage over the past year, I no longer had to convince people that microformats are a good idea. That’s progress but the cool factor brings some problems with it. People are proposing new microformats left, right and centre, not because they solve existing problems but simply because having your own microformat would be cool.

Most surprisingly of all, there are now developers who are ready to embrace microformats before fully embracing meaningful markup in general. This really is a problem. Microformats are a subset of meaningful markup (itself a subset of markup in general). I personally don’t believe it’s possible to truly grok microformats unless you’re already using semantic markup.

There is a misconception that the word “microformat” refers to any re-usable piece of markup. That simply isn’t true. Microformats need to also solve problems (like aiding aggregation and easing the export of data). Having re-usable chunks of markup is still incredibly useful and powerful… but they’re not microformats.

So what you should you call a piece of semantically meaningful markup that can be applied in many places? Well, you could call it POSH: Plain Old Semantic HTML.

Okay, so it doesn’t sound quite as cool as “microformat” but it’s more accurate. Even if you decide not to use the POSH label, you should definitely be embracing the POSH mindset, especially if you plan on contributing to the possible creation of future microformats.

A great example of POSH was published by Garrett Dimon on Digital Web this week in an article called Coding for Content. Garrett outlines the markup he uses for putting captions with images in articles. This is a good re-usable piece of markup: a POSH pattern. Chris has an alternate pattern and so does Dan. These are all good. This is not microformats. This doesn’t need to be a microformat… and that’s a good thing.

Garrett calls this a personal markup pattern but muddies the waters a bit by using the word microformat to describe it:

You can think of a personal markup pattern as a sort of microformat that solves a problem unique to your situation.

Personal markup patterns, POSH patterns, or just plain old patterns: call them what you will but the important thing is to be thinking about this stuff. I don’t know about you, but I kind of miss the angels-on-a-head-of-a-pin discussions that we used to have on Dan’s Simple Quiz.

I intend to start publishing and discussing my own POSH patterns. I encourage you to do the same. Just don’t call them microformats.