Hi Natan,


 cool overview article, with a good level of detail! Me likey! :-)


Just throughing in notes on "activities" and "logging vs. indexing" as I had
originally thought it could be reflected in the article. But I like the
article as is. So just view this as comments.


--- Natan, I'll send an email with some feedback  on the wording in the next
email ---


In my thesis experience-computing about the contextdrive prototype (which
has a lot in common with zeitgeist), I adopted the concept of activities
from activity theory for computer use and found it to be useful. It has
become the frame for a lot of Seif's and my thinking and is behind one of
the central observations motivating my work:


As opposed to the intimacy expressed by many people interacting with their
personal computers, it is striking to observe that these very personal
computing devices are not really prepared and in fact offer only limited
support in answering the central questions of orienting oneself: "What did I
do?" (retrospective perspective), "What am I currently doing?" (current
perspective, where 'current' turns out to be a very vague term), and "What
have I planned for the future?" (prospective perspective).


The verb "to do" above points to activities:



The core definition is as follows: activity := "a user does (~acts)
something employing tools (~ computer tools) to objects (~ information
items) with a certain outcome ( changed documents, changed source code,
written emails, read emails, posted comments, chat traces, changed wiki
entries, read websites). 


Some outcomes (~output) is more tangible than others, but one thing assumed
is that the personal trace of the user is important to him (and possibly to
others): not only the changed/written information items, but also the ones,
which were just viewed or read. Among others, this touching or reading is
also presented/reflected in the zeitgeist journal view to give the user a
more complete overview of what he did, for example, on a specific day.
Otherwise: "I did read this email, I did view this website . why isn't it

. where too many items presented is a drawback, I see that. A flexible and
expand/collapse display could help.


Information items is just the framing notion for all the items in the
zeitgeist database

:= some persistent and packaged form of information, which is relevant to
the user and can be given a URI; 

examples: emails, source code, all kinds of local or remote files, chat
conversations, websites, etc. 


Why do activities help and how do they relate to zeitgeist?

A user has plans and goals, which he turns into tasks. Here it doesn't
matter, if the tasks were given to you by someone else or if you came up
with them yourself :-) User goals and tasks are things a computer doesn't
know and care about. But computers often host the user's to-do lists, which
usually reflect the user's tasks (sometimes with deadlines and time
estimates) and his "language". So, the idea is to turn to-do's into special
tags in zeitgeist (todo-tags or task-tags). And a user working on
to-do's/tasks performs _activities_: "I am working on the gnome-article on
zeitgeist" (the user's language). While performing this activity, which
usually extends over time (notequal to events, notifications), the user
writes a document, reads some blog entries, and maybe writes emails with
questions for feedback or the like.


What does this look like?

Natan writes a text document using whatever tool, the text document being
the object of activity.

Natan reads blog entries using firefox or whatever, the blog entries being
objects of activity.

Same for the emails.


What now?

The objects of activity are often computer-hosted or accessed via computers:
the text document, the blog entries, the emails. The user working with these
objects / information items performs his activity "I am working on the
gnome-article on zeitgeist". So, summarizing, activities provide the
"missing-link" between a user's tasks and "touched" objects, which are
computer-hosted or accessed via the computer, in support of the user working
on his task. 


Opportunities (some examples)?

You can search via your tasks, in order to get to the relevant information

You can employ the task-tags to have something like awareness and maybe
sharing on the task-level, which is usually closer to user-language than all
the information objects you touched.

You can be supported in task resumption, just providing your task-tag to
zeitgeist, will find all the relevant information (vision).


To pick one more use case from the "use cases for zeitgeist" list:

"7. You downloaded a file but forgot where you downloaded it from. Zeitgeist
can tell you when and where from."

Activity = Downloading the file 

Actor = user

Tool  = downloading tool

Object = the file

Outcome = downloaded file


This points to two more characteristics of activities:

a) There are levels of activities

b) activities cannot be captured via content indexing only


(a) at least three levels:

- user activities = the ones, which a user performs in order to work on a
task (side node: tasks can also only later be named, because it's sometimes
only later that a user realizes that some work actually belongs to a certain

- actions = something like downloading a file, which is usually embedded in
a user activity such as "writing a document (downloading a related pdf

- operations = a user touching information items/objects via his computer



Something like "where did the file downloaded comes from" is hard to capture
when only doing content-indexing, but can be more easily done with logging:

- either the tool used for download provides the information (passive logger
in zeitgeist terminology)

- or the zeitgeist engine later relates the event "website touched" with the
event "new file", which is again provided by other loggers


Logging is further needed

- to be able to present repeated use of the same URI in the journal (as they
get overwritten in gtk.recentManager)

- to be able to later determine patterns of use and compute
measures/indicators for relevance and relationships among information items


I focused here on the retrospective user support of zeitgeist, but there is
also realtime use, just as the instant sharing based on tags. I won't go
into this . as I wrote already way too much. . I'll by a beer to anyone who
made it up to here and shows up at guadec :-)


Any comments? :-)







Von: Natan Yellin [mailto:aan...@gmail.com] 
Gesendet: Dienstag, 16. Juni 2009 08:37
An: Zeitgeist Users; zeitgeist@lists.launchpad.net; Siegfried; Seif Lotfy;
Thorsten Prante; Mikkel Kamstrup Erlandsen
Betreff: GNOME Journal Article



My article for the GNOME Journal on Zeitgeist is below. Before I submit it,
does anyone have any comments or corrections which they'd like to make? Did
I miss anything which I should have mentioned or say anything which is





Hi Paul,


Sorry again about the delay. My article is below:


Zeitgeist is a data engine for the GNOME desktop. It logs and tags every
document, website, conversation, email, note and application that's is
opened on the GNOME desktop. All of the information is stored in one central
database for quick access and any application can easily add it's own data
to the mix. There are several user interfaces which show the information
stored in the database, sorting it by type, date, or relevance to other
files. They let users tag documents, bookmark them, and even attach custom
notes to each item in the database. One of the interfaces, currently being
developed by Siegried Gevatter as a GSoC project, even shows information
from Zeitgeist inside the new GNOME Shell.


Zeitgeist was founded eight months ago after the GNOME User Experience
hackfest in Boston. The first prototype was based on Mayanna/Gimmie and had
only two regular developers who hacked on it in their free time. Today, we
have a whole new codebase and there's already six developers who commit code
on a regular basis and several other community members who help test
Zeitgeist, handle bugs, and design mockups for future user interfaces. The
Zeitgeist team recently presented at the Ubuntu Developer Summit and
Zeitgeist is slated for adoption in future versions of UNR (Ubuntu Netbook
Remix). Zeitgeist is also going to be used in the as-of-yet unreleased
Ubuntu Parental Controls and is even at the heart of a thesis paper and a
PHD research paper at a German university.


Parts of Zeitgeist are based on ideas from the "Document Centric GNOME"
presentation which Federico Mena-Quintero gave at GUADEC 2008. His ideas
inspired a journal and a calendar interface for Zeitgeist which lets users
view files that they edited at previous points in time. In accordance with
some observations made by Dave Richards at the User Experience hackfest,
some of the Zeitgeist interfaces hide filenames and directories from users
in an attempt to free them from worrying about <i>where</i> files are
located on the hard drive. Instead, users can tag the files and find them
based on <i>what</i> type of file they are and what other files they're
related to.


However, the current user interfaces for Zeitgeist don't even give users a
hint of the real power which lies dormant under the surface. Our current
goal is to index as much information from as many different sources as fast
as we can. Once that's done, it'll be easy to build exciting new user
interfaces which pull information out of Zeitgeist's database and display it
to users in all sorts of innovative ways. For example, it should be possible
to let users build their own interfaces where they define what documents
they want to see and how they want those documents to be organized. For
example, one recent mockup lets users build custom "Smart Feeds" which
aggregate together all sorts of different files according to user-defined
filters. [1]


One of the key concepts in Zeitgeist is that users care about "Documents"
and not "Files." In other words, users don't want to be bothered with the
distinction between documents that are on their computer (files) and
documents that aren't on their computer. Therefore, we have plans to index
documents from online sources such as Google Documents, Flickr, and
Launchpad. In a world where everything is online, there's no reason why file
managers should focus only on local files!


The biggest question that we're currently trying to answer is what's next.
We're already planning on adding on support for optionally using Tracker or
CouchDB as a backend in place of our own database. The aforementioned "Smart
Feeds" are also on the development map along with UbuntuOne integration, LAN
powered "Shared Feeds," and support for associating people with documents.
However, we're a versatile bunch and after that anything is possible. 


Zeitgeist is about humans- especially people like you and me who like
technology and want to make a better user experience for everyone. We care
just as much about the team work and the international cross-culture
collaboration that drives our work as we do about the end product that we
ship. We love to see new faces and hear new voices. A lot of our best
mockups are scribbled in love on the back of cafe napkins, which just goes
to show that you don't need fancy paper or great artistic skills in order to
innovate. We'd love to hear your voice as well. When we're not sleeping, we
live in the #gnome-zeitgeist channel on  <http://irc.gnome.org>
irc.gnome.org and will soon have our own website up at
<http://zeitgeist-project.org> zeitgeist-project.org. We look forward to
seeing you and hearing your idea for GNOME 3 and the next generation user
interface. Welcome to Zeitgeist!


[1] See http://natanyellin.com/2009/06/14/zeitgeist-mockup/

Mailing list: https://launchpad.net/~zeitgeist
Post to     : zeitgeist@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zeitgeist
More help   : https://help.launchpad.net/ListHelp

Reply via email to