People that want tracking in F-Droid should understand that F-Droid is not Google Play. They are a ridiciously small minority here. There is no reason for F-Droid to provide them with stats by complicating the system and going against the majority of users. If developers want tracking, they have to add it in their applications - that was a point of my previous post.
@HenriDellal It’s F-Droid project / team that will decide, if and when they will introduce statistics. In this thread earlier I wrote that sustainability, one of real goals of any organization, may gain from statistics.
@spaetz provided links to dramatic situation in Fedora community that forced them to introduce collection of stats in the face of being left without a budget…
I think now F -Droid team has enough information to think about and to predict, what reaction to expect
I’d say this is more a decision for the F-Droid community, than the team. Sure, I have more access to F-Droid systems than most, but I do not want to do anything regarding tracking without a feeling that there is a consensus on the topic.
So I agree both with the principle that F-Droid should never track users. I also agree that usage statistics can be quite useful. I believe it is possible to have both at the same time, but it is not easy to do. I do think it would be quite valuable since F-Droid could serve as a model to the internet as a whole for how to get usage statistics without tracking any users.
For anyone who wants to work on figuring out private ways of generating usage statistics, I think the place to start is looking at the issues mentioned at the beginning. For example, set up a test based on the data following this setup https://gitlab.com/fdroid/admin/issues/37 I think it is possible to derive something that could be called “Trending” based on that download count data alone.
There is then another issue of whether we really want to make the user experience use all these tactics to “drive adoption” or “increase engagement”. Those kinds of things lead to pointlessly additive software, from the user point of view. Google Play and iTunes push ever more apps since they take a 30% of all sales. F-Droid does not, so we have the luxury of considering the user above all. The developers who ship apps in F-Droid are some of those users as well.
F-Droid is an open ecosystem, so I think it is OK to make download count data available that is confirmed to be anonymous. Then people who are interested can use it. People who want a user experience based on this data can easily make a fork.
Sounds good to me. I like the approach taken by GDroid (available in the fdroid repo) which looks at releases, source code cleanliness and other data to create a ranking. It is explicitely NOT based on feedbach from gdroid users.
I think statistics based on the git repo are definitely interesting, so
I’m looking forward to seeing what happens there.
Thank you, Hans, for requalifying the Anonymous application installs tracking, proposed here, from “betrayal of principals” to “quite useful… but it is not easy to do”
I also agree that searching for a proper way to do this we should think broadly, understanding that our solution may be used as a model for the whole Internet.
The “Tracking usage without tracking people” article really shows that similar initiatives are being done not only in F-Droid, but even in the Tor project that is regarded by many people as really protecting user’s privacy.
The application installs tracking concept, that I briefly described in this thread, is much more sophisticated than simple download counting via web server’s log parsing. So I see that I will need to describe it in more details and in a separate place to be correctly understood and easy to discuss…
There are some key things to keep in mind if you want to try to figure
out how to do truly anonymous tracking of installs for F-Droid:
F-Droid will not add user accounts ever
any kind of unique ID must be opt-in, never opt-out, and must be
generated only for the specific use (e.g. IMEI, IMSI, MAC address,
Android ID, etc cannot be used).
the anonymity of the data must proven, not assumed. it only takes
33-bits of data to uniquely identify every person on the planet. There
are so many cases where organizations put data on the internet that they
believed had been “anonymized” only to find out it was trivial to
deanonymize with the right techniques
app_match.R - find similar apps on f-droid by similarity of their descriptions
Android Version Statistics on F-Droid?
I added a snippet with a sorted list of apps at gitlab. The sorting metric is not based on download stats but instead uses the description in the fdroiddata git repository.
It was not clear to me that this could work but it turned out to give at least some useful results.
Plan would be to have this list on the phone itself to allow for quickly navigating through similar apps.
Would be an alternative or complement to the “most often installed” or “users who installed x also installed y” or “apps with most stars” ranking.
I wish referring F-Droid to a community of “gentlemen amateur” would be awesome.
This discussion (about … rankings ?) seriously remind me the concept of Pandora’ box : “A present which seems valuable but which in reality is a curse”
As an example, when bad actors will access these stats , it will ease them to better target their forgery embedded with spyware or malware (without speaking about “complicating the system and going against the majority of users”…)
Applications statistics is not only about comparison of applications with each other (this is more interesting for users, sponsors, advertisers…). For developers and service providers (e.g. for F-Droid itself) It’s also about performance of an application and a service. it’s feedback, concrete enough to help moving in the right direction…
Unfortunately, this is true: any additional information, collected even from anonymous statistics, will help all interested parties, not only those having goodwill.
Hiding as much any information as possible is used by “security by obscurity” approach, also known as “need to know principle”. This works for corporations with isolated intranets and “communities”, and with signing non disclosure agreements… but will hardly work in the Internet. So we better know more
I’m certain that the best way to introduce stats is just a simple download counter, it is a very useful statistic (and could be even more useful over time if expanded with some kind of graph for users/app devs to see popularity over time), this wouldn’t require any sort of advanced device IDs, tracking or server side logging of anything except a counter having +1 added to it when it receives a download request.
Le me start this python script connecting through Tor, cycling an exit node every 5 minutes, downloading this APK each time… Hey…my app just had 6500 downloads yay
First side-effect would be that professional reviewers, instead of presenting advantages of fdroid’s foss plus detailed committed presentation for a dedicated app, will switch to a lazy passive copy/paste of best ~25 ranked apps.…
But most prejudicial will be that bad actors could “squeeze the lemon” by anticipating on-going reviews for emerging new apps, just by targeting the right precise downloads rate , AND fork the app, bloat it and push on Playstore: this always put reviewers and en-users in the haze (without speaking about “Metcalfe … undercuts” or simple fair play equalitarianism(?)).
Conversely every dev is free to push his app on Playstore before, or after fdroid releasing, and take advantage of numerous stats, without the risk of being faked.
A good start point could show the stars from the git repository that support that like gitlab/github etc and optional popularity Contest like debian does: https://popcon.debian.org/
that should be a DDoS, with stats or without starts could be a problem
With careful spaced requests? Maybe not…
FYI, several of us thought this was particularly well-put, so we tooted a slightly modified version of this:
There are some interesting comments and links in the replies.
False downloads could be mitigated on server-side (especially obvious fake tor ones), plus the main motivation of faking download counts on other app stores (making privacy invasive/malware apps look legit and getting more attention for a paid app/app with payments) doesn’t exist in F-Droid.
Providing accurate download/usage counts is quite hard. That’s why there are all these tracking companies who have all sorts of invasive tracking.
Would the normalized bandwidth used to send any given app be a valuable metric?