Latest revision |
Your text |
Line 1: |
Line 1: |
| {{task|ongoing}} | | {{task|ongoing}} |
| | | |
- | Application karma seeks to provide plausible "score number" for each application in the Maemo application catalog.
| + | This task is to define a karma system for applications as a basis for judging their "quality". |
- | | + | |
- | The application karma will follow a pattern familiar from Maemo's user karma (see http://maemo.org/profile/list/ and http://maemo.org/profile/view/bergie/), utilizing various sources of information about the application to calculate its activity and importance.
| + | |
| | | |
| == Goals == | | == Goals == |
Line 9: |
Line 7: |
| * Provide a simple, unified way for users and developers to judge an application's quality. | | * Provide a simple, unified way for users and developers to judge an application's quality. |
| * Provide a distributed [[Extras repository process definition|quality assurance]] system for handling package promotion. | | * Provide a distributed [[Extras repository process definition|quality assurance]] system for handling package promotion. |
- | * Provide a fast-updating list of "currently hot" applications
| |
- | * Provide a way to rate applications remotely
| |
| | | |
| == Metrics for judging "quality" == | | == Metrics for judging "quality" == |
| | | |
- | These are calculated using information inside maemo.org Midgard database:
| + | In no particular order. |
- | | + | |
- | * Number of downloads
| + | |
- | * Number of ratings
| + | |
- | * Average rating
| + | |
- | * Frequency of updates
| + | |
- | * Number of releases available
| + | |
- | * Number of OS versions supported
| + | |
- | | + | |
- | As well as from outside it:
| + | |
- | | + | |
- | * Bug activity (in Bugzilla)
| + | |
- | * Freshmeat.net stats (when the new Freshmeat [http://help.freshmeat.net/discussions/questions/39-where-are-the-rdf-files-from-the-backend-directory#comment_120399 reimplements their APIs])
| + | |
- | * Blog mentions (via Technorati, using "unixname" as tag)
| + | |
- | * Screenshots uploaded (via [http://www.flickr.com/services/api/flickr.photos.search.html Flickr], using "unixname" as tag)
| + | |
- | * Number of contributors in Garage
| + | |
- | | + | |
- | All karma items are counted once per day, and stored so that the development of application karma can be followed on a graph. The total karma of an application will be available in the application's [http://www.midgard-project.org/documentation/mgdschema-metadata-object/ metadata.score].
| + | |
- | | + | |
- | == Counting currently "hot" applications ==
| + | |
- | | + | |
- | To make a dynamic listing of applications that are "hot right now", we need to store some additional download statistics per application:
| + | |
- | | + | |
- | * Total amount of downloads
| + | |
- | * Average downloads per day during last week
| + | |
- | * Yesterday's downloads
| + | |
- | | + | |
- | These can then be used to calculate whether an application is getting more downloads on a given day than usual, meaning that it is "currently hot".
| + | |
- | | + | |
- | This should be possible to count via:
| + | |
- | | + | |
- | current karma = (yesterday's karma - age modifier) + (total download count - yesterdays downloadcount - lastweeks daily average)
| + | |
- | | + | |
- | == Remote rating of applications ==
| + | |
- | | + | |
- | Maemo applications will be featured in other services outside the regular Maemo.org website scope, including the application manager in the device itself.
| + | |
- | | + | |
- | To support rating applications through these, we should implement an API for rating and commenting applications remotely.
| + | |
| | | |
- | The API could be modeled after [http://web.archive.org/web/20060203035137/http://wellformedweb.org/story/9 CommentsApi].
| + | * Number of downloads. |
| + | * Number of ratings. |
| + | * Level of ratings. |
| + | * Actively maintained. |
| + | ** Frequency of updates. |
| + | ** Bug activity (assuming a tracker on bugzilla). |
| + | * Number of releases available for. |