Tuesday, January 24, 2012

CSS was a terrible mistake

It is fashionable to talk about the "wisdom of crowds" and the power of crowd sourcing.

There's always a flip-side. That's the madness of crowds.

That madness comes to mind as I contemplate the wreckage of Microsoft's SharePoint 2007 to Sharepoint 2010 Wiki conversion. How did this happen?

Part of the explanation is that Microsoft is a dying company, and SP 2010 was never finished. Microsoft redid their rich text editor, moving away from the IE embedded Word-like editor [1], but they didn't finish the conversion tools. Many formatted SP 2007 wiki pages cannot be edited in the new environment. (Apple does this stuff too, but with SP 2010 Microsoft has exceeded Apple's appallingly low standards.)

I think there's another factor though, and that's where the madness of crowds comes in. That was the decision made in the late 1990s to use Cascading Style Sheets (CSS) to control the layout of web content.

In retrospect CSS layout was a dreadful mistake, a madness of crowds "bridge-too-far" class mistake. Table based layout worked back when 100MB was a lot of memory. Mixing table models and CSS and style sheets is too much. Humans can't scale to this level of complexity; and browsers struggle mightily to reconcile multiple formatting and layout rules.

We are going to be paying for the CSS mistake for a very long time. We would be wise to at least recognize that we blundered, and try to understand why.

[1] Chrome and IE 9 are equally bad at editing our 540 or so partly-converted wiki pages.

1 comment:

Martin said...

Table-based layouts were a mistake. Thanks to CSS, they are no longer necessary. HTML tables, even with CSS layout options, are fine as long as they are used as tables. For layouts, CSS rules today.