-
Notifications
You must be signed in to change notification settings - Fork 40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add a Telemetry module to (anonymously) collect useful data #285
Comments
What is the status of this initiative? Has @quicksketch done any work to track configuration statistics for core yet? I'd like to track the "Users may log in" setting that was introduced in issue #277. It seems like 95%+ of site would be fine with users logging in with either their username and password, and have no need to restrict it to one or another. Since it may create some confusion (see #1994), we may want to remove that setting in a future version if no one is using it. |
@mikemccaffrey that use case and the need to help make educated decisions (instead of doing guesswork) is precisely why this issue here was filed for. It was a thing that greatly bothered me in d.org where decisions were made based on what a group of people thought "most people need/use". |
I think that the first thing that we need to determine is what we are going to call this thing that we are building. It seems like when we are describing this functionality, you could use any combination of "statistics", "feedback", "analytics", "logging", or "reporting". Maybe it would help if we thought about how we are going to present the feature to the end users. What should we ask next to the checkbox to turn it on and off? "Would you like to send anonymous data to backdropcms.org to help inform future product development?" What do others think? Is there anything in the project module already that does reporting? Should we look there to see what it is called? |
Well, if we get technical about it, then we are not "logging" anything. Not on the actual system where the data gathering is to be performed anyways. The logging part will be made on the b.org side, and even then it's not logging, but rather data storing. Also, "feedback" to me implies user interaction and not something that is done automatically in the background. The term "heuristics" was suggested over Gitter. (Ancient Greek: εὑρίσκω, "find" or "discover")
...although it makes perfect sense etymologically, I'm not sure if most people are familiar with the word or what it means. "statistics", "analytics" and "reporting" make more sense to me, but these words alone do not provide enough context. Something like "Feature Analytics" perhaps? |
This sounds really good 👍. Perhaps lose the word "data" because people will start wondering what sorts of data. Better to say "statistics" instead I think. "future product development" is very accurate, but people care more about "features" rather than the general product development, so how about adding that word into play in order to make it more "luring" to keep that checkbox ticked. Also, change the order of the purpose and what we are asking, because when people reach half-way through that sentence and all they have read is "send data", they might skip reading the rest of it. Something like this perhaps: "Would you like to help making better-informed decisions when adding new product features to Backdrop by sending anonymous statistics to backdropcms.org?" Note that were are not telling them that we will also be using that information in order to be removing certain features 😈 [evil laugh] |
...would also be a great idea to have a "more about this" link that explains what data is being transmitted, the fact that we do not share this information with 3rd parties and more importantly our privacy policy that ensures that the information collected is anonymous and cannot be traced back to the person/site that provides them. |
I guess, that's really a problem if we suggest it's (only) about "adding new product features". |
I love this language. Product development doesn't limit us to adding features, but could include removing some, too. Can we add a link from this issue to the one where we itemized the things we want to be tracking? (Maybe that one was in Project module?) |
We're two weeks away from code freeze for 1.8, and with no code here yet to review or revise it's not likely this feature will get done in time. Bumping to 1.9. |
This is something I noticed (in the recent CMS installation comparison video) that Joomla does. Not being at all familiar with Joomla, here's some information I've found that may help in deciding if/how we do this in Backdrop:
My personal opinion is that this would be a good idea, as long as it's done anonymously, and with the users consent (maybe disabled by default?). I also support the idea of linking to a page on BDcms.org specifically discussing this, why we do it, why you can trust us, etc. Maybe even link to the code on Github showing what data we collect? There's the potential to collect lots of useful information - not just PHP version, Backdrop version, etc., but things like if content revisions are enabled, the site timezone, how often cron runs, etc. (or is that getting too personal?). Also, I like how Joomla provides an API for developers to use that information, giving it back to the community as it were. |
Here's what Joomla does:
|
This has been a long time coming... Nice work everyone. |
I merged the core PR at backdrop/backdrop#3704 into 1.x for 1.20.0! After a few minor hiccups with Project module, I also released Project module 2.2.2, which includes the new @klonos I went ahead and made the minor changes you suggested above as well. Here's the Telemetry Reports page as it exists now: |
Thanks everyone for their efforts on getting this implemented! 🎉 Here's a list of follow-up tasks that I could think of that we should ideally get done before the final 1.20 release:
|
Should we rename the "MySQL version" metric to "Database version" or "Database information" instead? It seems odd to say "MySQL" when the db is MariaDB (although it derives from MySQL, it is a different product), and we should perhaps consider https://www.silkscreencms.org which adds support for other databases. |
@klonos Adding something new doesn't usually get a change record. I think a blog post might be more suitable :) |
See new Issue Summary here: https://github.com/backdrop-ops/backdropcms.org/wiki/Telemetry-Initiative
Telemetry: (anonymously) collect useful data so that we can make better-informed decisions about what should go into (or be removed from) backdrop core.
I remember the endless debates of whether a certain setting/module/feature should be on or off by default leading to 300+ long issues in d.o. Here are some related d.o issues:
Metrics collected in the initial implementation:
Other related d.o issues:
Recent d.org Telemetry initiative: https://www.drupal.org/project/ideas/issues/2940737
PR by @docwilmot (based on @quicksketch's work): backdrop/backdrop#3704
The text was updated successfully, but these errors were encountered: