Skip to main content

On her weblog, danah boyd writes:

[Compared to Wikipedia,] weblogs take an entirely opposite approach to knowledge production. A weblog's entire structure is built around single authors, control and individualism. There aren't even mechanisms for multiple authors and the tools available for collaboration are extremely limited. "Collaboration" still assumes a primary author.

... Weblogs are quickly becoming a "unit of spam" instead of a unit of knowledge. Y'see - a system that is driven by individualism quickly becomes a tool for self-promoters.

... Frankly, from my POV, weblogs look like an abysmal failure. There's no life to the content. Already articles are being forgotten and left to rot, along with a lot of other web content. There's no common format or standards and there's a lot more crap than gems.

Oops, no, I'm sorry. She was talking about Google Knol. My bad.


Normal people remember episode 110 of South Park as the one that introduced Mr. Hankey the Christmas Poo. I remember it as the one where the South Park students performed a non-denominational holiday dance "with music and lyrics by Philip Glass." I was at a party when this episode first aired, and everyone had stopped partying long enough to watch South Park together. When faux-Philip Glass came on, I and one other person in the room starting laughing uncontrollably, while the rest of the partygoers alternated staring at us and at the TV in utter confusion.

11 years later, I still like Philip Glass and I still like minimalism, although I don't get invited to nearly as many parties. My approach to web design has always tended towards minimalism, but that was just because I wasn't very good at it (design, that is).

Last week, I was talking with Joe about how certain things have made the leap from content to chrome. ("Chrome" is what Mozilla developers call the browser interface around the content pane -- the tabs and menus and location bar and so on.) It used to be that you could only find feeds by looking for special icons within web pages themselves. Now all modern browsers support feed autodiscovery tags, and they expose the feeds in menus and icons within the chrome area of the browser. So you don't need to litter your pages with feed icons; feed autodiscovery allowed them to make the jump from content to chrome.

Along the same lines: Universal Edit Button. It appears to be mired in bikeshed syntax discussions at the moment, but the idea is simple enough: "edit this page" links in wikis and such have always been included directly in the web pages themselves. This sucks for a variety of reasons, not the least of which is that there's no machine-readable way to know for sure whether a page is editable or not. So some people got together to create a standard for machine-readable "edit this page" links, and they wrote some supporting software to expose those links... where? In the browser's chrome, of course.

It was in this context that I stumbled upon James Bennett's Minimal, and from there Ryan Tomayko's Administrative Debris. And it got me thinking about how much of my "design" I could simplify by moving things out of the page and into the browser.

  • Feed icons? Already exposed via feed autodiscovery. Axed.
  • Previous/next links between posts? Already exposed via rel=prev/next links. Axed. (What's that you say? Your browser is run by megalomaniacs who decided you don't deserve to be informed about navigation links? Never fear, there's an extension for that! Or you could, you know, switch to Opera. Or iCab. Or SeaMonkey.)
  • Site search? Already exposed via OpenSearch. Axed. (This is a bit harsh. I suspect very few people know what it means when their search box starts blushing blue -- that they can drop down the list of search providers and add a site search. But my access logs show very few people use my site search in the first place; many, many more people simply use a general-purpose search engine with the words "diveintomark" or "mark pilgrim" appended to their query.)

That was enough to get me started on a full-on redesign, which is still technically in progress (so if you see something's broken, well, it's "beta"). Along the way, I found The Elements of Typographic Style Applied To The Web and Setting Type on the Web to a Baseline Grid, which reminded me just how much I hate designers. But I think I got the hang of it, at least for my post archives. I honestly can't see the difference, but maybe you can.

Also, I have a new archives page that lists every post ever, an idea I stole shamelessly (and with permission) from Joe. This is so unbelievably useful and obvious, I can't imagine why I never did it before. It is optimized for exactly one use case: every now and then I get in the mood to read my old writing, and this page lets me skim my entire body of writing and reminisce efficiently. If you like it too, that's nice, but I don't care about your opinion nearly as much as you might think. I was initially worried about page size, but it turns out it's only 46K after 7 years of blogging.

I made a bunch of other changes too, some obvious, some not. As promised, I have integrated PapayaWhip into my design, as the background color for comments I leave on my own posts. This is a long-running inside joke that is funny to about three people, one of whom doesn't even read this site. I haven't really tackled Ryan's inline editing ideas yet, but I did add a little "edit this page" link (but only for me, when I'm logged into Wordpress already). Come to think of it, that should really be Universal Edit Button markup instead. See? This minimalism thing, there's a lot to it. You think you're done, and then you find one more thing to take away.


Time to resurface a few good comments I made at Tim's place last year:

> if an electronic-trading system receives an XML message for a transaction valued at €2,000,000, and there's a problem with a missing end tag, you do not want the system guessing what the message meant

You [Tim] have used this example, or variations of it, since 1997. I think I can finally express why it irritates me so much: you are conflating "non-draconian error handling" with "non-deterministic error handling". It is true that there are some non-draconian formats which do not define an error handling mechanism, and it is true that this leads to non-interoperable implementations, but it is not true that non-draconian error handling implies "the system has to guess." It is possible to specify a deterministic algorithm for graceful (non-draconian) error handling; this is one of the primary things WHATWG is attempting to do for HTML 5.

If any format (including an as-yet-unspecified format named "XML 2.0") allows the creation of a document that two clients can parse into incompatible representations, and both clients have an equal footing for claiming that their way is correct, then that format has a serious bug. Draconian error handling is one way to solve such a bug, but it is not the only way, and for 10 years you've been using an overly simplistic example that misleadingly claims otherwise.

And, in the same thread but on a different note:

I would posit that, for the vast majority of feed producers, *is* RSS (and Atom). People only read the relevant specs when they want to argue that the validator has a false positive (which has happened, and results in a new test) or a false negative (which has also happened, and also results in a new test). Around the time that RFC 4287 was published, Sam rearranged the tests by spec section. This is why specs matter. The validator service lets morons be efficient morons, and the tests behind it let the assholes be efficient assholes. More on this in a minute.

> A simpler specification would require a smaller and finite amount of test cases.

The only thing with a "finite amount of test cases" is a dead fish wrapped in yesterday's newspaper.

On October 2, 2002, the service that is now hosted at came bundled with 262 tests. Today it has 1707. That ain't all Atom. To a large extent, the increase in tests parallels an increase in understanding of feed formats and feed delivery mechanisms. The world understands more about feeds in 2007 than it did in 2002, and much of that knowledge is embodied in the validator service.

If a group of people want to define an XML-ish format with robust, deterministic error handling, then they will charge ahead and do so. Some in that group will charge ahead to write tests and a validator, which (one would hope) will be available when the spec finally ships. And then they will spend the next 5-10 years refining the validator, and its tests, based on the world's collective understanding. It will take this long to refine the tests into something bordering on comprehensive *regardless of how simple the spec is* in the first place.

In short, you're asking the wrong question: "How can we reduce the number of tests that would we need to ship with the spec in order to feel like we had complete coverage?" That's a pernicious form of premature optimization. The tests you will actually need (and, hopefully, will actually *have*, 5 years from now) bears no relationship to the tests you can dream up now. True "simplicity" emerges over time, as the world's understanding grows and the format proves that it won't drown you in "gotchas" and unexpected interactions. XML is over 10 years old now. How many XML parsers still don't support RFC 3023? How many do support it if you only count the parts where XML is served as "application/xml"?

I was *really proud* of those 262 validator tests in 2002. But if you'd forked the validator on October 3rd, 2002, and never synced it, you'd have something less than worthless today. Did the tests rot? No; the world just got smarter.

On a somewhat related note, I've cobbled together a firehose which tracks comments (like these) that I make on other selected sites. Many thanks to Sam for teaching me about Venus filters, which make it all possible. If you've been thinking "Gee, I just can't get enough of that Pilgrim guy, I wish there were a way that I could stalk him without being overly creepy about it," then this firehose is for you.


  • Days between writing "freedom 0 is the freedom to run a program for any purpose" and reading "you can freely modify, redistribute, and use Movable Type for any purpose": 1,307
  • Amount I donated to the fledgling Wordpress movement in 2004, just before writing that: $535
  • Number of hits I've gotten on that post in the past 1,307 days: 283,361
  • Number of times Wordpress 2.3.1 has been downloaded: 448,472
  • Number of times Anil used the words "free", "freedom", or "freely available" in the MTOS announcement: 9
  • Number of times he used the words "free", "freedom", or "freely available" to refer to something other than freedom 0: 8
  • Number of times he mentioned "those who are quick to judge or quick to question whether the intention of openness was ever there": 1
  • Number of times he used "open" or "openness" to refer to something other than open source: 9
  • Number of words he used before finally stating "Movable Type Open Source is being released under the standard GPL license": 1,178
  • Number of times he mentioned "community", not including the page header or the name of the blog itself: 11
  • Number of times Wordpress has been downloaded since I began writing this list: 316

(with apologies to Harper's)

There is an episode of "Sex and the City" where Charlotte befriends a group of "power lesbians" who seem to run everything in her little corner of the art world. The lesbians are friendly and chummy and accommodating, up to a point -- the point at which they finally confront Charlotte about her sexuality:

Charlotte: I do so much enjoy the company of all these women. Everyone's so smart and funny. I've been spending way too much time and attention on men. It feels like such a safe, warm environment. While sexually I feel that I am straight, there's a very powerful part of me that connects to the female spirit.

Patty: Sweetheart, that's all very nice, but if you're not going to eat pussy, you're not a dyke.

Sex and the City s02e06, The Cheating Curve

So anyway, congratulations to Six Apart for finally joining the open community of freedom-loving pussy eaters. There may be those who are quick to judge or quick to question whether this move is a day late and a dollar short, or indeed 1,307 days late and 535 dollars short. I assure you I am not one of those people.


Source: Neil Chase's comment on

Welcome to the birth of conversational marketing.

We've reinvented payola and given it five more syllables.

It's making people like you and me, who came from the world of traditional newspapers, have to learn about three-way conversations.

Three-way conversation is like three-way sex; it sounds good on paper, but in reality it's awkward and you never know where to put your elbows.

... So the next step, naturally, is for marketers to want to join the conversation.

This has never happened before in the history of conversation.

It can be done in ethical, responsible ways, and FM's authors are among the first to figure out how to do it.

I am high as a kite.

In the case of this Microsoft campaign, the marketers asked if our writers would join a discussion around their "people ready" theme. Microsoft is an advertiser on our authors' sites, but it's paying them only based on the number of ad impressions delivered.

Advertisers give us money.

There was no payment for joining the conversation and they were not required to do it.

We like money.

They're not writing about this on their blogs, and of course several of them have been known to be pretty hard on Microsoft at times as reporters. They're talking about the topic, and readers joined that conversation.

Money money money.

We're carefully expanding conversational marketing based on all kinds of new ideas that are coming from authors, marketers and our sales reps.

Our advertisers shit all over us, then leave it to us to convince everyone else that shit is the new black.

We're drafting a set of principles for conversational marketing that will help everyone, inside FM and across the industry, frame the discussion about how we do this the right way.

You too can be covered in the new black.

And we're taking care at every step of the process to make sure we don't compromise the editorial integrity of our authors.

Integrity is the old black.

Because our authors are in constant conversation with their readers, they know how their audience feels.

We're hoping our audience can't tell payola from Shinola.

If a reader feels an author has crossed a line or betrayed the reader's trust, that author will hear about it quickly.

You can post a comment in our Can You Hear Me Now?™ section.

Neil Chase
Vice President
Federated Media Publishing

Brought to you by Carl's Jr.

(with apologies to John Gruber,
who did it first and did it best)

Disclosure: I work for a company with an advertising distribution network.