Everybody who might be reading this already knows about Twitter and Facebook. So, they have already been faced with challenges regarding how to organize the deluge of events from the feeds/streams they are following. It turns out that we have lots of successful frameworks for organizing the presentation of temporal information. Two from popular culture are musical scores and comic books. In this post i'll just focus on the use of the musical score as an organizing metaphor.
i'm not sure how many people fully realize this, but a musical score represents synchronously parallel streams. That is, all the musical events corresponding to notes and rests are governed by a global clock. Here we mean global in the sense that every note and rest is in scope of the clock -- they can all "see" the clock. The "tick" of this clock corresponds to the smallest notated/audible subdivision of the beat. i mention this fact in this context because so much of music is decidedly not synchronous, but better thought of as a message-passing form of concurrency. Jazz is an excellent example of this, but so are many of the indigenous African musical forms. One of the most interesting challenges i can contemplate is the design of a system that is as accessible as western musical notation but that affords the expression of message-passing forms of musical composition. Such a device could have profound impact precisely because the artifacts we use to express ourselves shape and form out ways of thinking about what we're doing (and hence what we end up actually doing).
A score is organized into staves or systems. A system is effectively given by 5 actual (and many virtual) lines, one for each pitch class, or note. Time flows left-to-right in a score. Roughly speaking, events are effectively notes and/or rests, marks on the line of some pitch class that indicates the duration of the sounding (or "unsounding") of that pitch class. A system is subdivided into measures or bars. These are marked by vertical lines and in conjunction with the time signature add further organization to time by delimiting the number of beats.
We can use this basic framework as a more generic way to organize events. Here is an outline of one such generalization.
- The horizontal line normally associated with a pitch class (aka note) is now associated with some semantically relevant concept, for example "home" or "travel".
- Events get marked on this line depending on their association to the concept. In the example illustrated above the user could have made "groups" of "friends". Then, when a "friend" in the "travel" or "yoga" group posts, their avatar/icon appears on that line with a little flag that provides a visible place to get more information. One might imagine a summary, a mouse-over summary and a link to detail. The location and orientation of the flag can give further information; for example, above the vertical midpoint of the avatar means something about importance or need for response; pointing to the right means something about the future; below the midpoint means strictly informational; pointing to the left means some something about the past.
- This arrangement could easily be pivoted. For example, each "friend" could correspond to a line for a pitch class. Then the posting marker could be labeled with an icon representing the associated group.
- Just as in musical notation, staves/systems, can be groups themselves, representing logical and potentially aggregate "voices".
- The notion of "measure" and "beat" can be used to control how much information is displayed.