Hello everyone!
A small question I’ve been wondering about and wanted to get your opinion on before implementing anything is the use of « telemetry » in Gladys 4.
In all software, open-source or not, there are often measures taken to keep anonymous usage statistics of the software.
When I say statistics, it’s just to know, for example, the number of software installations. Nothing too harmful.
I know, it’s a very sensitive topic and some of you might be thinking « what, does he want to track us?? » 
Absolutely not. The privacy of Gladys users is my number one priority, and you can see it in all my development choices (we are literally the only ones in the market to have an end-to-end encrypted web gateway, at least to my knowledge).
The current problem, in Gladys 3, we have no information on how many people have installed Gladys at home. I know the number of Gladys downloads, but it’s a somewhat useless stat because we don’t really know who is actually using it.
All open-source projects keep anonymous stats to better understand software usage:
- Which version of the software is running? (very useful to see the fragmentation of versions)
- Which countries/regions use the software the most? (this helps to better understand the different languages using the software, and also to know where the community is)
I think not having this information is a shame because we are advancing blindly.
Moreover, I don’t see how keeping the versions of the installed software + countries/regions is a privacy violation as long as we only keep the final stats and no personal information is collected.
What I see
Every 24 hours, Gladys makes a request to check if a new version is available. This is not new; it was the case in v3.
The « best practice » in general for keeping stats is to keep a log of API calls to this route and to keep:
- An anonymous ID
- The version of the calling instance
- Thanks to GeoIP, get the country/region (or city, but I wonder if that’s not too much?) of the calling IP.
- Keep a completely « approximate » latitude/longitude, which would allow, for example, to make a map of active Gladys installations. When I say « approximate, » first of all, it should be known that GeoIP is not a very precise technique, and in addition, we can remove a few digits of precision so that in essence we only keep info within 50-100 km.
This would help better measure the usage of Gladys 4. No personal information is collected.
Let me know what you think 
I hope I’m not shocking you with this, believe me, in the industry most open-source projects don’t take as much care as I do on this subject. I want to do this by the book 