Wednesday, March 25, 2015

[xeplrmle] Tables

Hypothesis: a table is only useful as a format to depict information if it is small enough to fit entirely onto the display medium, e.g., one page or the screen or window.  This is in contrast to, say, lists, hierarchical lists, and even multiple paragraphs of text, which remain useful even if they span more than one page.

The profound corollary is that tables are only of limited usefulness: perhaps for information that is inherently small, or for pedagogy (an intentionally small example).  This provides a prescription of when to use tables.  And information that is inherently small can often be depicted in other ways equally well.

Tables do not scale.

Tables are the one HTML feature that Markdown supports poorly.  Perhaps this is fine.

A mathematical matrix is often depicted as a table.  However, if it is too big, perhaps it contains large algebraic expressions, or is a generic NxM matrix, it might be better to express the matrix elements as a list: a[i][j]=...

A counterargument might be that a large table is useful if interactive features are provided: row headers and column headers which stay on the screen while scrolling; ability to sort, select and hide columns.  However, this becomes more like the front end to a database than a table, and then we might want even more powerful ways, e.g., scripting, to interact with and explore such large data.

Wikipedia struggles with large tables.

The inspiration was computer programming, in which there are often two-dimensional relations.  However, computer programs are rarely inherently small, so a language or IDE providing tabular features for programming is probably not useful.

No comments :