Display surfaces and control surfaces

I've added one of Phil Windley's1 suggested features to iwx: a breadcrumb trail documenting the current filters, with a reset control to release all filters at once. You can see it at work in, for example, this URL which displays my April podcasts. I'm not satisfied with this widget, I took it down for a while, then decided to put it back for a while just to see what folks think.

Here's the problem. In iwx, every piece of metadata is simultaneously part of the display surface and part of the control surface. So, for example, the type label Column might appear eleven times in a given view. Each of those instances displays information, and also affords a way to toggle the corresponding filter on or off.

This might or might not turn out to be a workable scheme, but it's interesting and I want to see where it leads. It's most valuable when used with a multi-valued column -- in this case, the tags column. I really like the effect of a filterable tag cloud distributed vertically across a table of filterable metadata. With tags you have lots of choices to scan, and it's handy to have all of them available as immediate controls.

Single-valued columns work the same way, which is consistent with the experience of toggling the tag filters, yet arguably overkill for the much smaller sets of values that occupy these columns. I've thought about using dropdowns here instead, but consistent point-and-click is seductive and I want to give it a chance to work if it can.

The breadcrumb-trail/filter-reset widget forces the issue. Currently it displays the active filters, but does not present a control surface -- except for the reset link. Should the filter values be active here as well? Arguably that would be more convenient as well as more conventional. But it undermines the notion that the values shown in the main display are also controls. And while the breadcrumbs can only be used to turn filters off, the values in the main display are more potent: they can turn filters on or off.

I dunno. It would be helpful to collect examples of other interfaces that try to combine the display surface with the control surface. If you've seen (or done) one of those, I'd be curious to take a look.

1 I just listened to Phil's latest Technometria podcast, on the subject of AJAX, and it's excellent. Everyone on the show is really knowledgeable and, although I follow this topic closely, I learned a lot. The most thought-provoking bit for me comes near the end. Phil asks how AJAX will affect the server side of the equation. The discussion turned to Comet, which is one of a number of approaches to nailing up HTTP connections for highly interactive client/server apps. The question of server load comes up, and one of Phil's gang of Utahans -- I lost track of who -- mentions that Novell's Drew Major had long ago built the NetWare kernel to handle vast numbers of connections without breaking a sweat. Here's the quote:

100,000 simultaneous IP connections was nothing, on standard Intel hardware, and Novell has all that technology right in their pocket.

Former URL: http://weblog.infoworld.com/udell/2006/04/25.html#a1435