Friday, September 19, 2008

Using tables for non-tabular data is ok, really

I came across this publication about writing content that is clear and easy for your audience to understand. It's a very interesting read, especially if you do any form of business-related writing.

Here's the part that made me think (it's about 3/4 of the way down):

c) Tables make complex information readily understandable.

If-then tables lay out the text visually, helping your reader see relationships more easily and usually requiring fewer words than straight text. For example, the paragraph below is written in the "dense text" method:

For good reasons, the Secretary may grant extensions of time in 30-day increments for filing of the appeal and all required documents, provided that additional extension requests are submitted and approved before the expiration of the original 30 days or the previously granted extension.

Try it this way instead.


additional requests for extensions are submitted and approved before

  • the original 30 days, or
  • the expiration of a previously granted extension

the Secretary may grant additional 30-day extensions of time for filing of the appeal and all required documents.

Now, obviously this article is not a technical document for web developers, but it does raise an interesting point: that plain text isn't always necessarily the best way to display information.

I thought about it for a bit and considered the possibility of implementing the example above using two divs, styled as two columns via CSS, but there's a key organization cue that columns do not provide: that the titles, in addition to possessing a hierarchical relationship to their respective bodies of content, have a parallel relationships between themselves.

What this means is that reading the titles left-to-right without paying attention to the table body is intended to be a viable way extracting information from the block of text.

If one title spanned more lines than the other, a div-based column layout would likely lose its spatial organizational cue (and restoring it via CSS would involve adding way too much extra markup).

The concepts of non-linear content and orthogonality are not new by any means: hyperlinking often breaks the linearity of content to add context and background information to a discussion (e.g. those "read this and come back" articles). Even in ancient China, poets wrote acrostic poems that could be read both horizontally and vertically.


I'm not saying that it's now ok to build table-based layouts. My point is that thinking of content as a bunch of parallel lines is an incomplete way of looking at how content can be displayed.

It's easy for us developers to mentally blur blobs of text when creating websites that have more inane content than we care to read (especially for back-end folks), but going the extra mile of tweaking content structure and its strategic organization on a page /site can do wonders to improve usability - and getting your message across to your visitors.

1 comment:

  1. The aproach here may be that from a design pint of view it is in fact tabular data. When writing your content you have to do this extra step, and realize that presenting the information in a tabular way is clearer. Then, when it comes to designing the page, it IS tabular data. :-)