The recommender should always return a full set of recommendations on a recommend_me, even if they are somewhat generic
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ubuntu-recommender |
Fix Released
|
Medium
|
Łukasz Czyżykowski |
Bug Description
Currently, if a person opts into the recommendations service in the Ubuntu Software Center but has not yet actually reviewed/rated any software, then zero results are returned by the recommend_me call. This has the the unpleasant result that Software Center hides the panel (this hiding is a side-effect of the fact that this code in USC is shared with the categories screen recommendations and with the current implementation it's a valid condition that there may be no uninstalled recommended items for any given category).
Anthony mentioned that this will change and a full set of recommendations will always be returned on opt-in once we start using the uploaded profile data, but currently it is the case. So, before Precise goes out, we will have to do one of:
1. Implement the ratings based on profile data functionality, such that a full set of recommendations are returned, or
2. We always return a full set of recommendations, even if they are initially somewhat generic as we continue to fine-tune the recommender.
Of course, a third possibility is to prompt the user to review/rate some items after opt-in for the case where no items are returned, but that doesn't seem a satisfactory user experience.
So, in summary, the goal is that we always return a full set of 60 items on a recommend_me call, and we fine tune that set as the recommender engine is tuned.
Related branches
- Anthony Lenton (community): Approve
-
Diff: 436 lines (+319/-2)8 files modifiedsrc/recommender/api/handlers.py (+9/-1)
src/recommender/management/commands/import_rnr_data.py (+6/-1)
src/recommender/migrations/0015_add_wilson_score_to_package.py (+155/-0)
src/recommender/models/package.py (+11/-0)
src/recommender/tests/__init__.py (+1/-0)
src/recommender/tests/test_api.py (+23/-0)
src/recommender/tests/test_models_package.py (+53/-0)
src/recommender/utilities.py (+61/-0)
- Anthony Lenton (community): Approve
-
Diff: 63 lines (+19/-2)2 files modifiedsrc/recommender/api/handlers.py (+3/-2)
src/recommender/tests/test_api.py (+16/-0)
Changed in ubuntu-recommender: | |
status: | New → Confirmed |
importance: | Undecided → Medium |
Changed in ubuntu-recommender: | |
assignee: | nobody → Łukasz Czyżykowski (lukasz-czyzykowski) |
Changed in ubuntu-recommender: | |
status: | Confirmed → In Progress |
Changed in ubuntu-recommender: | |
status: | In Progress → Fix Committed |
Changed in ubuntu-recommender: | |
status: | Fix Committed → Confirmed |
Changed in ubuntu-recommender: | |
status: | In Progress → Fix Released |
As the software-center client and server teams have discussed on IRC during the week, the current fix can return too few results (sometimes just a single item) to prevent the usability issue described in the bug description. That is, the unexpected disappearance of the recommendations panel after opt-in. The reason this can happen is because we do not display recommended items if they are currently installed on the computer, so a small list of recommendations has a high probability of hitting an item that is installed, with the result that the panel is hidden.
If possible, a full set of 60 items would be ideal, as this will also help insure that there will be a good chance of recommendations in the categories screens as well.
Many thanks!