After stumbling upon

I am kinda proud and disappointed…
I am proud that the Zeitgeist team managed to start a project that tackles some of these points. Zeitgeist is aware of activities of other apps and can share it with them, as well of occurring events on the desktop. With the 0.3.3 release of the engine we can do even more. We will introduce a whole new set of machine learning algorithms, and believe me it will blow your mind away. I am blessed to have a team of rockstars hacking on Zeitgeist and GAJ. We got Zeitgeist running on Maemo now and maybe Android soon. (And it all started in my bedroom
)
I am disappointed because I still don’t see GNOME Shell trying to make use of the information we have. I really think it is about time to get things running with Shell. I mean even KDE 4.4 copied our functionality (Zeitgeist-Filesystem) into Nepomuk. We are very efficient at what we do and we do it well. We will introduce the Nautilus Integration soon too. I cant see any road map or plan on working with Shell, but our developers are willing to start talking use cases. The Shell guys are an amazing bunch of developers, yet IMHO the Shell development is following too much the beaten track of desktop experience. Until now I can only call what they are doing providing enhanced and better experience, however not really new. When I say providing new experience I am not only talking about Zeitgeist but also Tracker as well. I mean if Shell is not going to make use of Zeitgeist + Tracker for a GNOME 3 experience than who will. Its time to end this phobia towards “semantic desktop”. Limiting oneself to an application centric desktop wont help the evolution of GNOME 3. Tracker and Zeitgeist provide ground for re-scoping of possibilities (Application Centric, Document Centric and Event Centric). Maybe a little IRC Meeting between the devs of (Shell, Tracker and Zeitgeist) would be a good idea…
Most of the apps that make use of us are either homegrown (GAJ) or not official GNOME apps (Docky). Our Nautilus integration will most probably land into the Elementary OS Project and not in Nautilus
I would love to see Zeitgeist growing to be something like Telepathy in terms of providing a standard for event logging (even if its in python), and I hope we get there soon. And I hope Nokia and Intel could also make use of what we have and not reinvent the wheel if they like what we do….
P.S: I am thinking of starting a company with some of the Zeitgeist developers, the first steps have been taken…










{ 25 } Comments
I think timing is some of it, rather than lack of interest. The big Gnome 3.0 release is, in theory, just 6 months away, and the Gnome Shell people already seem rather rushed in terms of getting the basics right by then. Zeitgeist itself is relatively experimental, and as far as I can see, only now reaching the kind of maturity where other projects like Shell or Nautilus might realistically consider integrating with it,
@Simon: The engine is very stable now… At least for deploying. It never crashed here…
Other than that as long as Shell and Nautilus dont consider using Zeitgeist it will STAY experimental in the eyes of the others…
@Simon: Ive been playing and testing zeitgeist for a year now and ive never seen it unstable and the memory footprint has dropped to almost nothing. It is ready for use it just needs support from the Gnome app developers. Ive seen and done some awesome stuff with it already.
Hi Seif
I would recommend integrating Zeitgeist engine functionality into tracker (in C/vala/Genie – python has a really poor start up time and with distros already optimising ever faster boot times, python daemons will likely be frowned upon by them).
Its likely that tracker would implement some zeitgeist funcitonality in the future in any event and being able to query everything using sparql is a big plus for everyone
jamie
@Jamie: Zeitgeist only starts up when its poked for info so it doesnt affect boot times. On my lucid machine with zeitgeist installed I get a 20 second boot. And on the Python being slow point it is getting faster and faster everyday. C(and Vala because its complied to C) are the fastest but thats because C was made nearly 40 years ago. We are getting to the point where it doesnt matter so much what language we use its more about what you are comfortable with.
Just adding an opposing point of view – while Zeitgeist seems to do a lot of fancy timeline related stuff, there are also people (like me) who mostly know where the stuff they put is and how they want to access it.
For such people zeitgeist seems to be next to useless. Gnome Shell should cater for both sets of users – give integration to those that want it but allow those that will find it a hindrance the ability to work without it.
@Jamie: We thought about it and its not the right time yet. We will lose developers on the Zeitgeist side since most of us are not that good with C. Second Zeitgeist daemon never runs on startup. It runs with the first request being made to it (D-Bus starts it).
I dislike going into the Zeitgeist + Tracker discussions and its not a point of discussion here… But to be clear once and for all…
The amount of logging we do is crazy. We are optimized to do that task and only that task. And I don’t think Tracker would outperform us in that task.
When we started Zeitgeist we tried to get into the territory of the Tracker use cases. However it made no sense since Tracker would beat us hands down in all of them. Except for event logging.
We narrowed down our use cases during the Hackfest. And now we dont collide with Tracker in any way. If you want to search for a timeline of “Michal Jeckson” you will still have to get all URIs related to Michael Jackson over Tracker and then look into Zeitgeist. And its not as bad as it sounds, trust me on that. While Tracker benefits from its generic database using SPARQL, Zeitgeist’s DB went through a lot of iterations to be optimized for what it does.
I had a series of discussions with Rob Taylor and I still stand by what I said. It is too early. We will lose developers and momentum. However I agree that Zeitgeist could be some kind of short term memory feeding Tracker with static usage info.
@You: I fully agree with you… But Zeitgeist doesnt only provide a timeline but also stuff like “Must used files for an app”
Seif,
Take a look at Seth Nickell’s blog. During the recent UX the idea was floated about finding things without creating long queries but with reference to certain “large events”(meaning something that the user can recall well;I’d assume this maps to focus length fairly well). In the pdf you’ll see the idea for a three-dimensional view of events with the origin as the “large event”. I personally think the particular idea of searching for something that way to be clunky, but it certainly seems as though the backend could be zeitgeist. I really don’t know if they are all aware of it…
Zeitgeist, as I’m sure you’d agree, should be one of the central ideas behind Gnome 3. The timeline view in nautilus is only a very trivial thing for your datastore. Of much more interest(to me, at least) is something like Task Pooper(again, in the pdf). That is something that seems as though it could be very easy to handle with the zeitgeist framework, yet, I’m not sure they have any concrete ideas about how to actually associate, and make persistent in a store, the tasks.
They need zeitgeist. They really need it and I’m not sure they even know about it.
Best/Liam
Well, if you want zeitgeist to be a part of gnome 3, you need to stop throwing around buzzwords like “re-scoping of possibilities (Application Centric, Document Centric and Event Centric)” and get down to picking one or two concrete user problems and solve them in gnome apps by providing patches.
If that is timeline-based access to documents in nautilus, then write nautilus patches that expose sidebar functionality to extensions and use it.
If it is Seth’ newfangled event-based search for documents, then implement that in the shell.
I’ve said the same thing six month ago when we last discussed zeitgeist on desktop-devel-list.
Waiting for shell or nautilus developers to come approach you is not a winning approach…
@Matthias Clasen: Easy! “Most used docs per application”, “Most used files this month”… It is all there and its not like we never approached before. We are writing some Nautilus patches based on my last blogpost.
We came a long way since 6 months ago….
Another thing is we approach most ppl. If an idea is out there we try to hack it and solve it. We had alot of ideas for shell but they always get dismissed. So its not that we are not trying.
Matthias
I’m only speaking for myself and I don’t know how Gnome development works(I assume similar to most large projects), but it seems as though there is some uncertainty as to who to approach. Seif mentioned a meeting between Gnome Shell, Zeitgeist/Tracker, but is Seth part of that group? Gnome Shell certainly is a good place to start, but are the devs of that project a hub for all Gnome 3 activity? Apparently Seif came to you and you suggested patches. Some of these ideas are patches but some are completely new projects. I view Zeitgeist as more like a sqlite. Something that assumed to be part of the desktop. Is it up to the sqlite devs to write/maintain their engine as well as think up and write new uses for it? Is there really no interest in the Gnome community to use something they seemingly desire(just judging from the UX writeup)?
Best/Liam
@Seif, @Shane – when I spoke of maturity, I wasn’t thinking about stability in the sense of crashing, more about whether the project could be considered ready for other projects to take advantage of it – commitment to stable APIs, for example.
My impression from following PlanetGnome and the like is that Zeitgeist has mostly been about trying new things, seeing what works, freely changing whatever doesn’t. I guess the issue is, is it ready for core-Gnome projects to depend on it? Sounds like you think so…
@Simon: Sorry for misunderstanding
But yeah we used to change the API but we haven’t since the 0.3.0 release.
we just add new methods but we never break the API. And before adding a new method we really think it through. We have this one method that has been waiting since before the 0.3.0 release that will first me introduced with the upcoming release. We wanted to ensure that we wont break it later or at least for the 0.3 cycle.
Seif, you say the Shell doesn’t do anything new. What you are failing to see is that it is concentrating on getting the details right and not trying to reinvent the world (though I assert that it does actually bring something new to the table but that is a different argument).
The issue with Zeitgeist is, what is the usecase for GNOME? Right now it is a ball of pretty cool technology with a lot of potential but no one has stepped up to say this is how it should be used in GNOME 3.0 beyond a few mockups of the Nautilus timeline view. By the way, those look great, and would be a nice first step into getting Zeitgeist integrated.
The thing with design is it is pretty bad to say, we have this technology, now lets fit it into our design. One should first identify a problem that needs to be solved and design for that. If you happen to have technology that will solve that issue then use it. Looking at the UX hackfest, they may not have mentioned Zeitgeist but it doesn’t mean it can’t be used to implement the design at hand. Same goes for the design of the shell. I’m sure the team would be happy to take patches which integrates Zeitgeist functionality though with 3.0 around the corner I think you are going to have to be patient before it is switched on in the mainline branch.
It may be frustrating but you should look at the experience of other disruptive technology like D-Bus. We at one point had to slow adoption and ask people to not go crazy implementing D-Bus apps as we slowly rolled it out to support base infrastructure bits such as HAL and then finally felt it was robust enough to be supported for all apps. Today it is pretty transparent and pervasive in every GNOME App.
So in other words, get Zeitgeist integrated for a few specific use cases which will give outside developers an idea of best practices and some sample GNOME specific code to look at. At that point they will be beating at your door to add Zeitgeist to their apps and pretty soon we will wonder how we lived without it.
@John (J5) Palmieri: Thank you for this amazing comment! I agree with you fully! Thus I would like to have another irc meeting between Shell, Tracker and Zeitgeist devs to discuss possible use cases. We cant afford hacking up solution to use cases that the Shell devs find unimportant.
Such a meeting would make alot of sense to have before GUADEC…
@You: Zeitgeist is an event-logging framework, providing activity awareness from user-related as well as from more computer-side events. It can do much more than what is currently visible in what you term as “a lot of fancy timeline related stuff”. Still, our starting-point use case was the ubiquitous re-finding problem, which some computer users happen to have. GAJ is our developing contribution to it. And there is more to come.
And there are many of them.
Some of us are very organized long-time computer users, just as those you probably have in mind stating “For such people zeitgeist seems to be next to useless”. Again, Zeitgeist is not equal to GAJ. And the point with GAJ is that personal computing in whatever form is becoming so common place that even unorganized users appear on the scene – yes, they are users, too
Plus, recognizing situations, in which time invested into keeping and organizing personal information or references will pay off in the end and distinguishing those situations from other cases, when re-finding can be more easily achieved is not trivial for many. Even worse, this keeping and organizing work is known to sometimes track users off from their primary task, keeping and organizing being the secondary. Well, and one of Zeitgeist’s ambitions happens to be alleviating this secondary-task burden for GAJ users.
Finally, there are people considering it more natural to re-situate in what they have done and experienced as opposed to going back to what they have filed. Example: Alan has the habit to come up with ideas when listening to certain songs. He jots his notes down here and there, and thereby, yes, classifies as a member of the unorganized user species. Still, even Alan usually wants to get back to his notes at some point. Just now, he remembers to have formulated “some stuff in a row” about two weeks ago, while listening to song X. As he knows the titles of his favorite thinking-songs by heart, Alan wants to employ this knowledge for referring back to his creativity burst. Oops …
Not making a short story long: “While”, “before”, and “after” tend to be little supported query means in today’s common desktop experience. Zeitgeist provides users with this sort of relative time scoping, because time is one of the central means for everyday people to structure and remember their everyday activities and experiences. As our approach is totally open information-format wise and doesn’t only look backwards in time, but allows also subscribing to events, we know that there are other use cases coming up, with other Zeitgeist-enabled tools.
I love GAJ, Zeitgeist and the Nautilus integration. I think the file chooser should get Zeitgeist too.
Just stick with it. It is amazing tech.
A side note though: Couldn’t you reimplement some parts (eventually all of them) in Genie (Python-Vala). Start with parts where Genie is now mature enough and expand.
Reimplementing everything in C is just insane, but in a world where Gnome will mostly run on mobile devices (the future) Python is not really the answer (Google tried hard to make it fast, but didn’t really succeed)
“I mean even KDE 4.4 copied our functionality (Zeitgeist-Filesystem) into Nepomuk.”
KDE already has this and you’re only talking about this. Maybe you’re copying from them?
@anonymous: Check your facts
http://trueg.wordpress.com/2009/10/26/just-another-way-of-browsing-your-files/
Maybe you could collect some ideas where _you_ would like to see Zeitgeist integration, and then ask specific app developers for this. For example, as mentioned above some integration in file chooser would be nice (but might be a too intrusive change).
Another nice thing would be if the mail client’s “Add Attachment” button would automatically offer files which were recently used – this might be a change that’s small and non-intrusive, and would show users what’s possible. So for example go to devs of Thunderbird, Evolution, Claws…, tell about the ideas, and ask if somebody is interested to add this feature or to write a plugin.
I fear, like many initially cool-sounding ideas, Zeitgeist is a problem looking for a solution. So far, I’ve yet to see a single compelling use case that would make me want to use it.
Hi I found your site by mistake when i was searching Google for this issue, I have to say your site is really helpful I also love the theme, its amazing!. I dont have that much time to read all your post at the moment but I have bookmarked it and also add your RSS feeds. I will be back in a day or two. thanks for a great site.
Hello, Would it be possible to make use of this great write-up on my site? I would naturally backlink back to you. Let me find out what you determine to perform.
Good article, thanks. I signed up to RSS on this blog.
{ 2 } Trackbacks
Social comments and analytics for this post…
This post was mentioned on Twitter by seiflotfy: New blog post: Thoughts about the current Zeitgeist situation (GNOME 3 and beyond) http://seilo.geekyogre.com/2010/03/zeitgeist-and-beyond/...
[...] Thoughts about the current Zeitgeist situation (GNOME 3 and beyond) I would love to see Zeitgeist growing to be something like Telepathy in terms of providing a standard for event logging (even if its in python), and I hope we get there soon. And I hope Nokia and Intel could also make use of what we have and not reinvent the wheel if they like what we do…. [...]
Post a Comment