- Naming a file and choosing a storage location is unneeded overhead.
- Directories are inadequate as a classification mechanism. Classification should be dynamic and multi-dimensional (more than one “directory” a file can be in).
- Archiving should be automatic. Often users completely remove files to avoid clutter. Putting them away in an organized (and retrievable) way is difficult.
- Summarizing, compressing, visualizing groups of documents is important and should scale.
- Computers should make “reminding” convenient. The goal should be to make calendars active (send an email etc.) and integrate them into the system.
- Personal data should be accessible anywhere and compatibility should be automatic (that is, many devices should be supported).
|The graphical user interface of the Lifestreams application.|
- The past is used for archiving.
- The present holds what the user is currently working on.
- A date of creation can also be in the future, with the intention of the document being a reminder: something to be worked on in the future, an email to be sent automatically, an upcoming event, etc.
Standard operations. There are a few standard operations on documents:
- “new” for creating a new unnamed document, without having to specify a storage location;
- “clone” for duplicating documents;
- “freeze” for making documents read-only;
- “transfer” for distributing documents, sending emails etc.;
- and “print” for printing documents.
- A substream is created by filtering either the global stream or another substream. It is updated dynamically, whenever documents change.
- One example of filtering is using the full-text “find” operation. The substream only comprises those documents of its superstream that contain the search text.
- A summary of a stream is a dynamic document that summarizes one aspect of that stream. For example, “by document size” shows a table with document sizes.
- Email: is sent via the “transfer” operation. Automatic sending in the future is done by place the email creation date in the future. The future is thus a convenient metaphor for automation.
- Phone call records: the agent-supplied operation “make a phone call” automatically logs phone call records. A calling list can be created by summarizing them, possibly after a filtering step.
- Stock portfolio management: Each stock is a document. Summaries provide lists and graphs.
- Bookmark management: A daemon watches web browsers and automatically adds new bookmarks to a stream (as a URL document). These documents can be easily transfered to other users, via the “transfer” operation.
- Using time as the dominant criterion for ordering is smart, because it is intuitive and easily remembered. It also can be automatically attached as meta-data to documents. Conversely, document names have to be created manually.
- A similar kind of meta-data that is available to modern applications is geo-location.
- Splitting time into past, present, and future elegantly separates different ways of working with documents. However, this separation should probably be handled differently:
- Past, present: should be more like labels that are attached to documents, e.g. “archived” and “current”.
- Future: It is better to store a separate due date instead of using the date of creation, because even if with a reminder for the future, you will sometimes want to know when it was created.
- Delivering data to many devices (desktop computers, mobile phones, etc.) has been solved via webapps. It would still be a challenge if current smartphones didn’t have modern web browsers.