Recently @gerry pointed out that it appears the third most popular package in the Package Control default channel is apparently sending data to the startup Kite:
- https://twitter.com/gerardroche/status/891802572373319680
- https://packagecontrol.io/browse/popular
- https://packagecontrol.io/packages/SideBarEnhancements
- https://github.com/SideBarEnhancements-org/SideBarEnhancements/blob/1858330b71b682ec1f3265bd280dde65465bdf18/Stats.py#L157
- https://github.com/kiteco/kite-installer/blob/02b55e5e18c01145cd66c4a1d68afbeed5134436/ext/telemetry/telemetry.js#L9
- https://theoutline.com/post/1953/how-a-vc-funded-company-is-undermining-the-open-source-community
This seems to explain why a generic package providing extra menu items would be collecting info about how many minutes of time were spent editing Python code.
This has prompted some discussion about what, if anything, Package Control should (try to) do about privacy and dark patterns in packages that are part of the default channel. I’d like to get feedback from the community as to what users think should happen.
One proposed solution is to:
- Disallow opt-out telemetry from packages in the default channel. Any packages found collecting user info without having the user opt-in will be immediately removed from the channel and only permitted to be re-added if they have changed to opt-in.
- Keep Package Control itself as opt-out for install/upgrade/removal counts, so as not to break all of the anonymous statistics on https://packagecontrol.io. Add an explicit privacy policy in place of the current informal one (which is that I am the only person who has access to the server/data, and stats are only ever shared as anonymous counts of users installing, upgrading or removing packages, along with the Sublime Text version, operating system and date).
This would not prevent authors from creating their own PC channel (which has been supported from the beginning) and publishing opt-out packages, it would just prevent them from being included in the default channel. A simple channel with one or two packages could be hand-maintained without much effort. If someone wanted to set up an automated channel (that crawls package info), that can be adapted from the code base at https://github.com/wbond/packagecontrol.io.
If you can share your thoughts, I’d like to gather feedback and then decide what, if any, action should be taken to address the privacy of Package Control users. Please also share this topic with any Package Control users you can so we can get as much feedback as possible.