InfoQ

News

Is Stream-oriented a better UI paradigm than Document-oriented for today's knowledge workers?

Posted by Sadek Drobi on Jul 11, 2008 04:27 AM

Community
Architecture
Topics

The mainstream approach to user interface has recently been questioned by Bryce Harrington who believes that “the prevailing UI paradigm today […] built around the notion of document authoring” is not appropriate for what most people use computers for. He argues in effect that knowledge workers more often deal with streams of information rather than traditional documents:

Really, what I mostly do today is stream management. And I suspect this is true for the vast majority of people. I don’t deal with writing documents, but with changes to documents. I put comments onto things. I slap patches onto things. I tweak the states of things. Once in a rare while I may author a completely new thingee, but even there I usually end up working with it as a stream of changes that I build up over time (and usually in collaboration with a few other people who stream changes to me).

Harrington believes that, with regard to this, many tools offered by today’s interfaces are irrelevant whereas they are not at all instrumental in helping users staying atop all the streams. What actually handles streams are cron jobs, “a stodgy old *server* tool” that non-technical people are not acknowledgeable about. To remedy to this, Harrington advocates for changing the underlying paradigm of UI:

Since the purpose of our desktop UI is to make our work easier and more efficient, then if today's knowledge workers are, like me, more stream-oriented than document-oriented, then doesn't it stand to reason that we ought to re-think our UI design to optimize it for making stream management easier and more efficient? How would such optimization be done? How would such a UI look and feel? What kinds of toolkits would be needed?

This post triggered a lot of reactions on the author’s blog and on reddit even though it was pointed out by many commentators that this idea is not really new. Many mentioned Lifestream project led in the mid-nineties at Yale University. Based on the conviction that today desktop paradigm is not the optimal way to organize information, Eric Freeman under the direction of David Gelernter developed novel software architecture:

Lifestreams is built on a simple storage metaphor --- a time-ordered stream of documents combined with several powerful operators --- that replaces many conventional computer constructs (such as named files, directories, and explicit storage) and in the process provides a unified framework that subsumes many separate desktop applications to accomplish and handle personal communication, scheduling, and search and retrieval tasks.

In the aftermath of this project, Steve G. Steinberg has analyzed the advantages of the approach based on temporal dimension that is ignored by most UI and absent from many alternative methods of organizing information rather focused on spatial, semantic or network aspects. First of all, Steinberg stresses that “unlike spatial and networked schemes, which require users to come up with their own, highly arbitrary classifications, and unlike semantic schemes that place the burden on the computer, chronological ordering is clearly defined and unarguable.” Moreover, this kind of UI facilitates information search because “instead of following links or guessing keywords, we can simply scroll back in time, using our memory for hints”, which in turn allows to rebuilt the context of the researched information. Finally, as highlighted by Steinberg, “chronological ordering underlies many types of information”, e.g. files, emails, URL of visited web pages, and this makes Lifestreams “incredibly general and flexible”.

Even though commercialization of the project’s results was not successful, many recent products mentioned by commentators are based on similar concepts: Mac OS X, services like LifeInLine and LifeBlob, Sugar interface by the One Laptop Per Child Foundation, Miro interface or upcoming Microsoft's Live Mesh. It looks like the momentum is growing for a shift towards stream-oriented approach to UI. Other technologies and tools that may be instrumental, i.e. dataflow languages or functional reactive programming, are summed up in Bryce Harrington’s follow up to his own post and on a wiki set up by Rudd-O.

1 comment

Reply

Google's in this game too by Ryan Platte Posted Jul 15, 2008 8:06 AM
  1. Back to top

    Google's in this game too

    Jul 15, 2008 8:06 AM by Ryan Platte

    Gmail is a very vividly realized implementation of this concept. When they added chats, the chats merged right in with the rest of the timeline. It's enormously powerful.

    Google's Web History is another.

Exclusive Content

A Formal Performance Tuning Methodology: Wait-Based Tuning

Steven Haines talks about tackling web application performance tuning by proposing a method called wait-based tuning.

Shaw and Fowler About Forging a New Alliance

Shaw and Fowler talk about the need for a new relationship between the business department and the IT department. Studies have shown that projects mostly fail due to miscommunication between the two.

How to GET a Cup of Coffee

In this article, Jim Webber, Savas Parastatidis and Ian Robinson show how to drive an application's flow through the use of hypermedia in a RESTful application.

Archaeopteryx: A Ruby MIDI Generator

Eccentric artist turned overnight anti-celebrity, Giles Bowkett captures the heart and soul of RubyFringe as he demonstrates his revolutionary Archaeopteryx MIDI drum pattern generator.

Alexandru Popescu Discusses the InfoQ.com Site Architecture

InfoQ Chief Architect Alexandru Popescu discusses the InfoQ architecture, WebWork and DWR, Hibernate and JCR, Hibernate scalability, the new InfoQ video streaming system, and future plans for InfoQ.

LHC Grid: Data storage and analysis for the largest scientific instrument on the planet

higgs-event

The Worldwide Large Hadron Collider (LHC) Computing Grid provides data storage and analysis for the entire high energy physics community that will use the LHC.

Fostering Software Craftsmanship in a Corporate Setting

Scott talks about software craftsmanship represented by people responsible for their work, continuously learning, taking pride in their work, sharing knowledge and respecting professional standards.

Eric Nelson on Windows as a Web Platform

Eric Nelson explores Windows as a web platform using IIS 7.0 providing an architecture deep dive and striving to reduce the lines of code in web applications.