Make use of the application usage frequency

Registered by Jan

For example by automatically pinning (or recommending to pin) often used apps. This could help users knowing which applications are _actually_ their favorites.

(Taken from https://blueprints.launchpad.net/cardapio/+spec/take-hints-from-gnome-shell )

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
None
Definition:
Discussion
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

[tvst 2010-06-06]
This has to be brainstormed a little more. Some mockups would be nice, too :)

The one thing I am adamant about is that apps *should not* change positions based on frequency/recency. The location of an app should *always* be predictable.

So if frequency/recency are added to Cardapio, it should be done in a way that doesn't violate this rule.

-------------------------------------------------------------
[inquata 2010-06-06]
Completely right, everything should be predictable. :)
I’ll keep thinking about it.

________________________________________
[frederik.nnaji 2010-06-10]
i'd rather not tie those laces too tight...
* if somebody wants his app to stay put, he should pin it.
below manually pinned stuff, Cardapio should
* autopin a fixed number of items, e.g. 5 items
* autopin and sort by user propagated data:
  1. recency (autopin the last used app
  2. frequency of usage aka FOU (compare items' FOU via Zeitgeist data)
* inhibit position swapping until a new item appears in the filtered view
If the difference in FOU of 2 applications falls below a given threshold of e.g. 2%, don't swap their positions due to frequency anymore (this condition is an incrementally adaptive one; with it, Cardapio would be able to "learn")

________________________________________
[tvst 2010-06-16]

frederik.nnaji:
For what it's worth, I started writing a Zeitgeist plugin last week that would do some of the things you were talking about. But it turns out that the Zeitgeist API doesn't offer some of the abilities that I am looking for, so I would have to implement some non-trivial things on my side.

For instance, the API offers no way to search recent items for a substring. The Zg developers have proposed that I should just pull *all* recent items and do the search by myself. This is just too dirty a solution for me, since it involves duplicating a large part of the Zg database.

So right now I am postponing this plugin while I talk to the Zeitgeist developers. I will keep you posted.

________________________________________
[tvst 2010-06-24]

Update:

I've been toying with the Zeitgeist plugin on my side, and now I have a plugin that can search for files opened by some app. For example, type "ink" and you'll get the files that were recently opened with Inkscape.

This is good stuff, but that's not the only thing that I had planned for this plugin. I also want "ink" to show all recent files that have "ink" in their name.

The good news is that there's an experimental extension for Zeitgeist that allows just that -- and much more! It's the full-text search extension, and you can read all about it here http://lists.zeitgeist-project.com/pipermail/dev/2010-June/000127.html

The bad news is that there's no PPA for that Zeitgeist extension yet. But I was told "it's coming" :)

________________________________________
[tvst 2010-07-2]

New "Recent Documents" plugin:
https://answers.launchpad.net/cardapio/+faq/1192

Of course, this plugin is about recency, though, not frequency. So it isn't exactly doing what was proposed in this blueprint, but I thought I'd mention it here anyways. For the blueprint itself, I think more discussion is required, as I'm not sold on the idea of moving things around based on frequency. But if anyone would like to make a plugin for this, that's what plugins are for :)

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.