New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Smart history #419
Comments
Yes, i like that idea too. |
I would imagine to keep a relevancy score for every app, say from 0 for the most relevant to 1 for the least relevant. Then I would order the history by:
A further refinement would be to add a user setting to adjust the sensitivity of the weight. For this I would have a slider setting from 0 to 1 and order the history by
|
There is an interesting app launcher, Hangar https://github.com/corcoran/Hangar. It ranges apps by time of usage. |
I know it, but it is not the same thing. Hangar works either as a notification bar or a widget, and handles only apps as far as I can remember. |
But i think idea is interesting. For example: i have conversation in chat, and some interesting pages in browser. I don't use kiss for switching between them, because android's last apps are convenient for this. So, kiss dont know that chat and browser are popular, and move them away(if it uses your formula). |
As is said in #397 : When i discovered KISS a sentence caught my attention :
I was expecting a launcher that present me the "most supposed to be used now" apps like Z launcher or Aviate launcher. But it only does that for search result apparently. So i'm interested too. |
I see your point, but also right now you will not see your app coming to the bottom if you use the Android recent apps. Maybe analysis of recents can be used as one of the parameters to build the "score". |
I would like to jump on to this train. A weighted history would be great. I launch a lot of apps during the day but, some apps more often than other apps. An expected behaviour would be that the most often used apps are almost always at the bottom and easily accessible. I'm not only talking about apps but all results. At the moment the only alternative way to access most used programms are favorites. But I do not like the way it is implemented to cover fast access. To complicated IMO:
If we get the history |
Maybe I just implement the favorites in another way so I can access them without pressing kissbar circle. I have some spare DP :-) |
@austil GREAT, you already did the job 👍 So the only thing left is to discuss the postion of the favorite bar ? I'm with you. |
I think the #404 is still a mockup, I don't know if anyone has already implemented anything :-) |
Sorry but 404 seems quite a different thing. Can we continue on the history here? |
Yeah, this issue is for thinking about a more relevant, possibly weighted, and more "smart" history. Your proposal @eevleevs of a weighted history sounds like a way forward to me. How is the history working currently, it seems to be sorted purely on most recently used. Right? |
So, if I get it right @eevleevs suggested a slide to tune between recently used apps and frequently used apps. If the user selects one side, you see history ordered by most recently used apps (as of now) and if he selects the other side, history is ordered by most frequently used apps (something similar but not exactly the same as the freeze history feature) |
How about not changing the position of an item in history (when clicked) if that item is already visible in the front page? |
Not sure I understand. How does that help? |
if an application is on a visible place in history and you select it, then it remains on the same spot, thus you don't have to look for it on the history list the next time you try to launch it. not sure it that would be nice |
I still prefer the original idea. If the slider thing sounds unclear, just drop that and consider to use the first formula:
The user gets only the option to use smart history or not. Scoring can be based on the same principles as the search results (not sure what they are). |
If i get it right, order of items in the history list will change even when no action is done by the user since the time_passed_from_last_launch will always increase. |
Yes! That is why it's called smart: it does by itself :-) The point is that the most relevant apps should disappear from the history at a slower speed. |
Lol, I will give it a try on the weekend but you would have to somehow persuade @Neamar to merge it :-D |
Ready to fight ;-) |
@eevleevs: why not, could be a usefule feature (there was something similar in the very early drafts of KISS, when it was still named "Summonß": I think the name was "frecency" for frequency / recent. I'm not a huge fan of the slider (sounds too complex, and clearly not Keep It Simple), but an option to sort by frecency could be implemented and merged :) |
Good :-) Then we have to find a reasonable set point. |
I have a running/basic implementation for this. What's the formula using score (how many times has been launched) and position_in_normal_history ? Lets take an example: Should App 1 be first in SmartHistory since it has been recently launched (for the first time)? |
We can use
This should give you a basic scoring logic that will reset over time, if you quit using an app. We have to play a little with the divisors to find values that work. When you start to use time, newly installed items should come first by just faking one launch. |
Hi @eevleevs, yes I understand your idea. The problem is that I would like to do the sorting of apps inside the sql and I wouldn't like to have a periodical update. Can you and anyone else build from source? I use this formula for weighting history items: weight = number_of_launches_for_app / total_number_of_launches + 2.0 / (position_in_history_for_app + 1)^2 ( in other words: weight = frequency + launch_recency_decayed ) You can find the formula in db/DBHelper.java line 60. To test, first go Settings> Advance> History mode> Frecency, then launch a "useless" app that you have never launched before (not in history) and wait to see this app first in history. Then I would launch a single favourite app many times and watch the useless app go up in the history list. Edit: To be honest, I am not excited with the current result. Any opinions? |
Ok, for testing purposes I had to clear my history. |
In the current commit, I switched back to the I noticed also that on the weekends there is a big change on the type of apps that I launch. What do you think, should the smart history load apps based on the type of day (workday / weekend) or even time (morning / evening etc) ? |
This should be closed? |
Good point :p |
As far as I understand, the search function orders the results in a way that should be most relevant to the user. Could we have an option to apply a similar logic to the history, so that the elements can be also weighted by relevancy? For example, apps that are used often could fall back in history slower than others.
The text was updated successfully, but these errors were encountered: