TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Transparent telemetry for open-source projects

248 点作者 trulyrandom超过 2 年前

56 条评论

slimsag超过 2 年前
I&#x27;ve been a pretty strong advocate of the idea that analytics should always be minimal, 100% anonymous, aggregated, and open to the public - otherwise it’s spying. This is how we do analytics on our websites today[0][1], and how we plan to do it in games we release in the future. Maybe one day I will start a dedicated FOSS service that people can use for exactly this with some trusted reputation&#x2F;transparency&#x2F;auditability to it.<p>I think what Russ has described here is decent and well-reasoned. I also think that Go being a product (it is, whether you like that word or not) makes it more fair to desire analytics of this form. I think it being opt-out is reasonable (after all, if it is not, they will make decisions using data that does not come from the vast majority of users, may as well not have analytics at all then.)<p>But I am afraid of this becoming pervasive not just in products (like CLI tools), but also in libraries, imagine every Go&#x2F;npm package you use wants to ping the network because the authors want to know &#x27;is this popular? can we deprecate XYZ method?&#x27; etc. If transparent telemetry in the form Russ and I have been viewing it becomes a more common thing, it won&#x27;t be a surprise if more library authors begin to try to adopt something like this and it becomes a pervasive problem IMHO.<p>[0] <a href="https:&#x2F;&#x2F;hexops.com&#x2F;privacy" rel="nofollow">https:&#x2F;&#x2F;hexops.com&#x2F;privacy</a><p>[1] <a href="https:&#x2F;&#x2F;machengine.org" rel="nofollow">https:&#x2F;&#x2F;machengine.org</a>
评论 #34711730 未加载
评论 #34721018 未加载
评论 #34716970 未加载
评论 #34713156 未加载
评论 #34715215 未加载
评论 #34724896 未加载
评论 #34718861 未加载
schmichael超过 2 年前
&gt; the vast majority of projects, even large ones that would benefit, stay away from telemetry.<p>Nomad is one of these projects. We support a dizzying array of platforms (32bit Intel Linux?!). We have no idea how popular our Consul service mesh integration is. Are bug reports a sign of use or just failed experiments? Is anyone running on macOS in production or just ephemeral dev agents?<p>Surveys about this are just asking humans to do something computers can do better.<p>Obviously privacy and consent are paramount concerns, but not only are they solvable, in open source they’re fully auditable (and a fork could fairly easily maintain a patch that removes it outright).<p>I think open source largely rejecting telemetry puts it at a huge disadvantage to proprietary and SaaS software where it is the norm. I’m very excited to see someone as thoughtful and well reasoned as Russ Cox to be trying to move the status quo forward.
评论 #34711751 未加载
评论 #34711682 未加载
评论 #34715772 未加载
cube2222超过 2 年前
Probably related to[0].<p>To anybody complaining that this should be opt-in: opt-in telemetry doesn&#x27;t work. The reason for this is that most people don&#x27;t care, but they don&#x27;t care either way. They don&#x27;t disable it when prompted, nor would they enable it manually.<p>The idea of telemetry is being able to prioritize the work that will be most widely useful. For this you need a good and balanced sample of your users. You don&#x27;t really get any kind of sensible sample if you only do it opt-in. Additionally, this ship has long sailed, everybody does opt-out.<p>What I do think however, is that it should very clearly notify the user of this, and give them an easy way to disable it. Like in OctoSQL[1] (disclaimer: which I&#x27;m the author of) which prompts you on first run and shows explicitly how to disable it.<p>All things considered, this is an open source project, so you&#x27;re free to maintain a fork without telemetry. The Go toolchain also uses the Google-hosted module proxy by default, which really is a bit like telemetry already.<p>[0]: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34707583" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34707583</a><p>[1]: <a href="https:&#x2F;&#x2F;asciinema.org&#x2F;a&#x2F;eWQsyXQKi1fmithyTekAD5fWS" rel="nofollow">https:&#x2F;&#x2F;asciinema.org&#x2F;a&#x2F;eWQsyXQKi1fmithyTekAD5fWS</a>
评论 #34714230 未加载
评论 #34714166 未加载
评论 #34714402 未加载
评论 #34714827 未加载
评论 #34720865 未加载
评论 #34715028 未加载
评论 #34715917 未加载
评论 #34720169 未加载
评论 #34714758 未加载
评论 #34714854 未加载
评论 #34715122 未加载
评论 #34715285 未加载
评论 #34715131 未加载
评论 #34714941 未加载
评论 #34732281 未加载
评论 #34717583 未加载
评论 #34715166 未加载
评论 #34724610 未加载
评论 #34717267 未加载
评论 #34726106 未加载
userbinator超过 2 年前
Nope, nope, and more nope. You&#x27;re not moving the Overton Window any more on me.<p>In fact it seems there&#x27;s a clear correlation between the quality of software and how much spyware there is embedded in it. It&#x27;s often merely another way to justify unpopular changes with &quot;but the data says so&quot;.<p>IMHO if you want to collect any information, it should never be anything but opt-in, a conscious decision.
评论 #34709880 未加载
评论 #34709529 未加载
评论 #34716706 未加载
JohnFen超过 2 年前
&gt; When you hear the word telemetry, if you’re like me, you may have a visceral negative reaction to a mental image of intrusive, detailed traces of your every keystroke and mouse click headed back to the developers of the software you’re using.<p>But that&#x27;s not my only objection to telemetry. Equally important to me is that so many bad decisions are justified based on telemetry. It&#x27;s very easy to misunderstand the data, because telemetry leaves out so much, but developers often treat it as if it&#x27;s giving a complete picture.<p>As an example, I have seen developers drop really important functionality on the basis that it is rarely used. While that was true, it was also true that when those rare times happen, that functionality was absolutely critical to have.
评论 #34714589 未加载
silisili超过 2 年前
Very much against this. Sure, it sounds naive enough, and can give reasons why. But I have 3,436 items in &#x2F;usr&#x2F;bin. What if -every- one of these started doing their own telemetry, their own envvars, etc?<p>If we have to deal with telemetry, then I&#x27;d instead hope that there can exist a single telemetry systemwide interface. Not sure how that would be designed or implemented, but would be better than everyone doing their own bespoke thing. Plus easier for me to disable them all in one go.
评论 #34715289 未加载
评论 #34715679 未加载
mordae超过 2 年前
I dunno. It sure makes sense to me to collect telemetry from free software installations, but I feel that having every platform or even piece of software to do it on its own with opt-out will inevitably lead to people being overwhelmed and angry.<p>I would, personally, prefer a single non-profit service that would list publicly what is being collected and publish the results as open data for anyone to use. Applications (at least on Linux) would not submit their reports directly, but would use a local relay service that could be turned off completely or that could filter what reports to send to the server and what to &#x2F;dev&#x2F;null.<p>Distributions and other software stores would then make it mandatory for software to use this relay and either patch out any other telemetry from their packages or straight out forbid those that would not comply.
评论 #34710434 未加载
teraflop超过 2 年前
I am all for transparency and limited intrusiveness of telemetry.<p>But in practical terms, the problem with this approach -- if I&#x27;m understanding it correctly -- is that it has no way to detect and reject outliers, and therefore the data can&#x27;t be validated in any way. It only makes sense if all your clients are 100% trustworthy.<p>Let&#x27;s say you want to know whether to keep supporting ARMv5, and your data says 10% of users are using it. There&#x27;s no way to tell whether that&#x27;s accurate, or if you have 0.01% of die-hard users who modified their telemetry code to report 1000x as frequently as they&#x27;re supposed to. Even if you suspect this is happening (and you might not), there&#x27;s no way to identify the culprit and filter out their data without tracking personal identifiers such as IP addresses.<p>So even if <i>most of the time</i> the telemetry data is valid, over time it will trend toward uselessness, because it can be endlessly second-guessed unless it confirms a decision you wanted to make anyway.
ergonaught超过 2 年前
On-by-default makes me question whether rsc&#x27;s judgement has been compromised, which leads me to question continuing to use the language. A strange miss for him.
评论 #34714125 未加载
autoexec超过 2 年前
&gt; Although the report would not include any identifiers, the TCP connection uploading the report would expose the system’s public IP address to the server if a proxy is not being used. This IP address would not be associated with the uploaded reports in any way.<p>Any fully transparent data collection is going to have to include IP addresses and timestamps. Even if the IP isn&#x27;t being used for debugging, the software still phones home and the IP is still being collected and logged when it otherwise wouldn&#x27;t be. Either when uploading the report or when downloading the “collection configuration”.<p>Honestly, assuming full transparency, I&#x27;m not opposed to the concept. I question how much telemetry is actually necessary, but I&#x27;m certain there will be times when it&#x27;s nice to have. It&#x27;d also be interesting to see how it would go when for once people can see exactly what is collected, when, and from where.<p>I&#x27;m not sure that Google is the best place to showcase such a concept though. I&#x27;m sure there are a lot of people who have no problem with handing more data over to Google, but Google has abused the public&#x27;s good will for the sake of data collection many times, and it&#x27;s sure to put off some of the people who aren&#x27;t already completely disgusted by the idea of their favorite open source projects collecting telemetry.
评论 #34709257 未加载
评论 #34709705 未加载
ddevault超过 2 年前
This is not okay. The only ethical way to do telemetry is <i>opt-in</i>. If not enough people are opting in, you need to incentivize them to -- most simply by just paying them for their data. After all, telemetry is &quot;valuable&quot;, isn&#x27;t it? But if you can&#x27;t figure out how to convince people to opt-in, then tough luck, sucks to be you.<p>Opt-in or GTFO, Google. I&#x27;ll be patching this out of the Alpine package for Go the day it ships.
评论 #34716583 未加载
deathanatos超过 2 年前
This week one of my tasks is to figure out how to neutralize some telemetry in one of our apps. We had no idea it was there, we do not want to be sending data. Last week, the parent company decided they didn&#x27;t want to maintain the telemetry server any longer, and got rid of it.<p>Now the tool has generated thousands of log messages that it can&#x27;t phone home.<p>And so it must be silenced, since it is cluttering up the logs, generating false alerts, etc.<p>Please, no more.
评论 #34715447 未加载
_ph_超过 2 年前
If there is any virtue to collecting telemetry, make it opt-in. Any developer convinced of this being useful will gladly enable it. But making it opt-out is just nefarious, because most users will not be aware of it.
评论 #34714487 未加载
lispegistus超过 2 年前
Setting aside the question if on by default telemetry is unethical in general, I personally think it is, my point in this comment is that in the context of open source it is impossible for it to be because:<p>The whole point of open source is the security of the rights and freedoms of the users, and in case of a conflict with the convenience of the developers, the user rights take priority EVERY TIME. If you&#x27;re not ok with this, you should not write open source software. If nobody opts in to your telemetry scheme if it were the default to choose, too bad, you&#x27;re just gonna have to live with it and respect user choice no matter how inconvenient or how much better the alternative would be for everyone. If you fail to grasp this very basic thing you will be better served working on proprietary products instead. <i>OSS is not a product you own, it&#x27;s a shared resource you are in charge of stewarding</i> and the ethical burden is much higher because of that. I checked, Go uses a permissive license, Google is more than welcome to run a proprietary fork with telemetry built in. Keep that out of open source.
wrldos超过 2 年前
Imagine if GNU started adding telemetry to their compiler toolchain...<p>If that sounds fucking stupid, which it does, then so does this.
photochemsyn超过 2 年前
This is perhaps unintentionally amusing:<p>&gt; To be clear, I am only suggesting that the instrumentation be added to the Go command-line tools written and distributed by the Go team, such as the go command, the Go compiler, gopls, and govulncheck. I am not suggesting that instrumentation be added by the Go compiler to all Go programs in the world: that’s clearly inappropriate.&quot;<p>Well that dispels any lingering thoughts I might have had about ever using golang for anything (not many to be sure). Someone feels the need to assure everyone that they won&#x27;t be stuffing telemetry code into every binary their compiler produces? Google just wants all the data about everyone everywhere all the time...<p><a href="https:&#x2F;&#x2F;www.komando.com&#x2F;security-privacy&#x2F;ways-google-invades-your-privacy&#x2F;804545&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.komando.com&#x2F;security-privacy&#x2F;ways-google-invades...</a>
creepycrawler超过 2 年前
If they add &quot;telemetry&quot; my response would not be to set an environment variable, but to uninstall golang. I used it a few years ago, both personally and in a work setting, but I&#x27;ll do so no more in the future. Just my opinion.
kardianos超过 2 年前
This is well done. It only exposes counters, and rather then pushing data up, the telemetry server must know the names of what it can ask for. No wildcards.
评论 #34711201 未加载
mftb超过 2 年前
I hope this proposal is defeated and they don&#x27;t implement this. I don&#x27;t buy the premise that the benefit is worth the price. I think CLI tools like the ones in the Go Toolchain and their usage patterns are fairly well understood by this point. I&#x27;m sick and tired of every piece of software I interact with phoning home.<p>That said, as long as they give me reasonable means to configure the software the way I want, it&#x27;s probably not a deal-breaker for me. In other words, I will just set the $ENV_VAR_WHATEVER to turn this off, and that&#x27;s that.
bioemerl超过 2 年前
Honestly, this may be unpopular with hacker news, but just add your own telemetry. If people don&#x27;t like it they can turn it off, and telemetry is essential for a good product.<p>Do let people turn it off though please.
评论 #34711178 未加载
评论 #34711210 未加载
评论 #34714894 未加载
评论 #34712406 未加载
评论 #34717552 未加载
4ad超过 2 年前
This is just part 1, but all articles in the series have been published: <a href="https:&#x2F;&#x2F;research.swtch.com&#x2F;telemetry" rel="nofollow">https:&#x2F;&#x2F;research.swtch.com&#x2F;telemetry</a>
deafpolygon超过 2 年前
This kind of push is only going to make people want to disable telemetry even more. Privacy is sacrosanct and should be accepted as the norm, not something we need to opt-in.<p>Go already has some form of telemetry built-in (by way of a google proxy, I suppose) and adding an official one that is opt-out is just going to make me refuse to ever work with it.<p>Telemetry should always be opt-in, and only opt-in. We have so much issues with telemetry, privacy, and such because the big players and corporations insists opt-out is better (maybe you get more data, but you violate end-users trust as well). Is that really worth it?<p>There is blow-back and distrust in the industry as a result and it&#x27;s only going to get worse the more you try to push for opt-out telemetry (or just assuming telemetry should be the default).
评论 #34722809 未加载
hommelix超过 2 年前
Telemetry in open source exists for a long time. Debian has the popcon package that can be installed and reports weekly usage of the software packages. The telemetry data are published in the open. The Debian popcon FAQ could be used as guideline for other telemetry needs. <a href="https:&#x2F;&#x2F;popcon.debian.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;popcon.debian.org&#x2F;</a>
评论 #34713687 未加载
评论 #34714476 未加载
评论 #34714888 未加载
bee_rider超过 2 年前
I don’t really see why a classic community-driven open source project would care about what non-contributing users are doing with the software. In that case, helpful users come with built-in telemetry (pull requests).<p>But I guess this could be helpful corporatized read-only repo projects, or other groups that aren’t sure if they are building a community or a customer base.
评论 #34718274 未加载
godmode2019超过 2 年前
My new TV wouldn&#x27;t work unless I agreed to it recoding and uploading those recordings to it&#x27;s servers which may be temporary stored while they are transcribing the audio to text for more permanent storage.<p>My TV is forcing me into a employment agreement where I generated data to train their models or otherwise &#x27;improve service&#x27;.<p>Data is so valuable companies are risking a huge PR backlash. Data collection is the business model and I assume the same ethos will make its away into open source.
taveras超过 2 年前
I wish there was a standard way of disabling telemetry across software dependencies.<p>While I leave it turned on for personal projects, several projects at work require disabling it.<p>I have spent hours auditing through transitive dependencies to turn it off. It should not be this painful.
评论 #34711513 未加载
评论 #34714763 未加载
xavdid超过 2 年前
There&#x27;s a lot of strong reactions here, which I don&#x27;t think are generally unfounded. Telemetry has certainly been misused and will continue to be, but it can also be an invaluable tool for product development.<p>For example, we had a CLI with many commands and flags, some of which were costly to maintain. By adding analytics, we were able to see that literally no one was using certain commands, and we could safely remove them without messing up workflows.<p>On each CLI invocation, we collected:<p><pre><code> - hash of user ID - which command is run - which flags were included - operating system (not version information, just mac&#x2F;pc&#x2F;linux) </code></pre> This data wasn&#x27;t used for marketing, had no identifiable information, and was diasablable (but opt-out). You could also log exactly what was sent to the server, so you could see.<p>We could have collected some of this via occasional surveys, but the data would have been less useful and less accurate.<p>I didn&#x27;t look into the details of what Go is proposing to collect, but treating all telemetry of any kind as a boogeyman isn&#x27;t productive; just have to do it the right way.
评论 #34717022 未加载
bombela超过 2 年前
The information and rate of upload as described seem reasonable.<p>Is the fear from most people that it will be a foot in the door? And a way for Google to collect extra overtime?<p>Note: I think Go is a regressive technology. That would have been great in 1970s. Not today. But that&#x27;s a different topic. My point is that I tend to be biased very negatively against Go. But here I don&#x27;t see something wrong.
评论 #34715483 未加载
whoopsie超过 2 年前
Opaque telemetry can also be a barrier to adoption: my users’ IP addresses may legally be PII that I cannot disclose.
Aaronontheweb超过 2 年前
How transparent is Scarf&#x27;s product adoption metrics for OSS projects? <a href="https:&#x2F;&#x2F;about.scarf.sh&#x2F;" rel="nofollow">https:&#x2F;&#x2F;about.scarf.sh&#x2F;</a><p>I follow them on Twitter but haven&#x27;t looked much into it other than reading their documentation, which makes me think that most of their telemetry is done at the point of the package distribution system: <a href="https:&#x2F;&#x2F;about.scarf.sh&#x2F;package-sdks" rel="nofollow">https:&#x2F;&#x2F;about.scarf.sh&#x2F;package-sdks</a>
candiddevmike超过 2 年前
Is this even up for debate, or is this post more of a FYI?
评论 #34716703 未加载
stefanos82超过 2 年前
From a legal point of view, how companies will react to this, be it default-on or default-off?<p>Some companies are using it for internal use which I&#x27;m sure all of us know cases with a number NDA-ed projects from third-parties or outsourced companies that collaborate on the matter.<p>So, who is going to sue whom here when the one party will disable OR has already disabled the telemetry and the other will have it on by default, for whatever reason?
devdiary超过 2 年前
While this articles point out all the right explanation on why telemetry is needed and how it can be made little more transparent by Go toolchain acting as intermediary and publishing the telemetry data publicly, it fails to point out the disadvantages&#x2F;risks of such system. At the core, the issue is about trust and the user not having any incentive.
Arnavion超过 2 年前
I haven&#x27;t worked with golang in some time. How do golang devs generally obtain the compiler?<p>If you&#x27;re getting it from distro repos, it should be straightforward to convince the distro package maintainer to disable the telemetry &#x2F; patch it out.<p>Or is it a nvm&#x2F;pyenv&#x2F;rustup situation where you prefer to use bespoke toolchain managers to download upstream&#x27;s compilers?
评论 #34713572 未加载
评论 #34713384 未加载
infogulch超过 2 年前
This is a good plan, very simple and clear, and I like the list of system properties at the end. The solution is pretty tailored for the Go toolchain, which is a good strategy that has worked for them in the past.<p>A more general purpose metrics tool I&#x27;m watching closely is Divvi Up <a href="https:&#x2F;&#x2F;divviup.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;divviup.org&#x2F;</a>, a research project by ISRG, the same org that runs LetsEncrypt. The basic idea is to divide up each metric into two parts and publish each part to separate collection servers (one run by you and the other by divviup). Then the servers separately aggregate their half and combine the results, the idea being that each half is useless on it&#x27;s own but when combined it&#x27;s still useful.<p>I wouldn&#x27;t suggest it for this application, but for the majority of typical apps it would be a vast improvement to privacy compared to the status quo.
chaps超过 2 年前
<p><pre><code> The Go team at Google would run a collection server. Each week, with 10% probability (averaging ~5 times per year) the user’s Go installation would download a “collection configuration” to find out which counter values are of interest to the server and at what sample rate. </code></pre> If there&#x27;s interest to use config files to determine how telemetry is done, why can&#x27;t similar be done about turning telemetry off? I don&#x27;t want to deal with environment variables (for a gazillion reasons) and would prefer to just use a config file. <i>Especially</i> when it comes to sending arbitrary information from my system to another arbitrary host.<p>It&#x27;s so strange to me that the configuration of telemetry has been escalated to uses-configs status while opting out hasn&#x27;t. Really feels like opting out is an after thought.
评论 #34719428 未加载
champtar超过 2 年前
This will collect 0 telemetry from CI builds, so some data will need to be taken with a big grain of salt. I don&#x27;t have data to prove it, but I would bet most cross-compile happen in CI and not on the dev laptop.
bluehazed超过 2 年前
This is really slimy, Google swung and missed and let Go of the bat here.
caniszczyk超过 2 年前
We need solutions in this space for open source projects, I&#x27;ve been monitoring <a href="https:&#x2F;&#x2F;divviup.org" rel="nofollow">https:&#x2F;&#x2F;divviup.org</a> as an option too!
account42超过 2 年前
Sometimes the post sorting algorithm produces interesting results<p><pre><code> 53. Transparent telemetry for open-source projects (swtch.com) 224 points by trulyrandom 1 day ago | flag | hide | 265 comments 54. Windows 11: a spyware machine out of users&#x27; control (techspot.com) 419 points by jlpcsl 19 hours ago | flag | hide | 292 comments</code></pre>
xyzzy_plugh超过 2 年前
I&#x27;m usually against telemetry but not only is the approach here somewhat reasonable, I think I actually trust Google more than, say, homebrew to not do something egregious with the data.<p>Google is at least as broadly compliant as one can be with various standards (of questionable value, natch) but is also on the hook socially and perhaps legally if they fuck this up.
评论 #34715025 未加载
kabdib超过 2 年前
Oh, hell no.
ysopex超过 2 年前
The only way I&#x27;d consider this, is if the telemetry my app generated is available to me or can be rerouted to another target. If so, please add this ASAP. Otherwise, I&#x27;ll stick with my own observability stack.
blibble超过 2 年前
how long until ads?
2h超过 2 年前
&gt; That&#x27;s why opting out is just an environment variable (GOTELEMETRY=off) or a single command (go env -w GOTELEMETRY=off)
r2vcap超过 2 年前
I have set DOTNET_CLI_TELEMETRY_OPTOUT=1 as an environment variable in my .profile file. What should I do for golang?
评论 #34714712 未加载
1vuio0pswjnm7超过 2 年前
&quot;The system is on by default, but opting out is easy, effective, and persistent.&quot;
fomine3超过 2 年前
This is really well considered way to telemetry. I wish all telemetries are like this.
msla超过 2 年前
The only moral response is to send false data to the servers.
philosopher1234超过 2 年前
There&#x27;s a lot of confusion in these comments about opt-out vs opt-in. The debate isn&#x27;t settled, but a lot of the issues raised here have been addressed. Reposting Russ&#x27; comment:<p>&gt;Longer answer about opt-out generally, copied from mail I sent to golang-dev.<p>&gt; I wrote a little about this at <a href="https:&#x2F;&#x2F;research.swtch.com&#x2F;telemetry-design#opt-out" rel="nofollow">https:&#x2F;&#x2F;research.swtch.com&#x2F;telemetry-design#opt-out</a>. Just to quote the beginning:<p>“An explicit goal of this design is to build a system that is reasonable to have enabled by default, for two reasons. First, the vast majority of users do not change any default settings. In systems that have collection off by default, opt-in rates tend to be very low, skewing the results toward power users who understand the system well. Second, the existence of an opt-in checkbox is in my opinion too often used as justification for collecting far more data than is necessary. Aiming for an opt-out system with as few reasons as possible to opt out led to this minimal design instead. Also, because the design collects a fixed number of samples, more systems being opted in means collecting less from any given system, reducing the privacy impact to each individual system.”<p>&gt; To elaborate, one of the core things I believe about designing a system like Go is that it needs to ship with the right defaults, rather than require users to reconfigure the defaults to get best practices for using that system. For example, Go ships with use of the Go module mirror (proxy.golang.org) enabled by default, so that users get more reliable builds out of the box. Similarly, Go ships with the use of the checksum database also enabled by default, so that users get verified module downloads out of the box. We know that most users don&#x27;t want to and probably won&#x27;t spend time reconfiguring the system: they trust us to set it up right instead. Of course, that implies a responsibility to actually look out for users&#x27; best interests, and we take that very seriously. There are important privacy concerns about the module mirror and about the checksum database, despite their clear benefits, so we designed those systems to address as many of those concerns as possible. Among the decisions we made to improve privacy there: (1) GOPROXY can proxy both the module mirror and the checksum database, (2) we published a very clear privacy policy (proxy.golang.org&#x2F;privacy), (3) we introduced the concept of a tiled transparency log to keep log fetches from exposing a potential tracking signal.<p>&gt; Moving back to telemetry, enabling telemetry does not confer the same kind of direct benefits to users as the module mirror and the checksum database do. Instead the direct benefits it confers fall on other users: (1) allowing your Go installation to participate in the system means other installations participate just a little bit less, thanks to sampling, and (2) allowing your system to send usage information strengthens the signal from others with similar usage. There is still an important indirect benefit: one system opted out won&#x27;t have much of an impact, but 99% of systems opted out has a huge impact, and that leads to mistakes like the ones I mentioned in the first blog post, which do make Go worse for you.<p>&gt; Like with the module mirror and checksum database, there are good privacy concerns to telemetry despite the clear benefits, so the design of transparent telemetry aims to address as many of those as possible. The bullet list in the GitHub discussion (also at the end of the blog post) enumerates the most important ones.<p>&gt; Most people leave defaults alone or make intuitive guesses about what they want. That&#x27;s totally reasonable: no one wants to spend half an hour learning the details of each specific setting. But my goal for the system is that if I did spend half an hour explaining how the system worked, then the vast majority of users would agree with the default and see no reason to opt out. Of course, some people will always opt out on general principle, and perhaps there are others who would opt in to some systems but not this one. For those people, my goal is simply to make the opt-out as easy and effective as possible. That&#x27;s why opting out is just an environment variable (GOTELEMETRY=off) or a single command (go env -w GOTELEMETRY=off), and there&#x27;s a quiet period of at least a week after installation to give plenty of opportunity to opt out before there&#x27;s any chance of data being sent.<p>&gt; I expect that this will not change your mind, and that you and a few others will still believe the telemetry should be opt-out. I accept that: I don&#x27;t expect to convince everyone about this point. But I hope this helps explain how I am thinking about the decision.
评论 #34718494 未加载
gavinhoward超过 2 年前
@rsc, if you ever see this, your proposal here means that I will never use any software written in Go ever again, if at all possible.<p>What others have said in this thread about telemetry becoming an &quot;accelerant&quot; will happen. Abuse will happen. Data will be put up for sale. IP&#x27;s will be logged because users can&#x27;t verify that they&#x27;re not.<p>The only thing users can verify is what is sent and to whom. And only if they run packet inspection. Most users don&#x27;t.<p>(Edit: I just realized that users may not even be able to tell who data is sent to because of proxies or the original collector selling the data.)<p>I have no reason to believe your personal motives are anything but pure; however, this capability will not just be in your hands. It will be in the hands of anyone with less-than-pure motives.<p>I applaud your efforts to make telemetry more transparent, but they are destined to fail.<p>When it comes to figuring out how users use software, the only thing to do legwork. Ask your users. Watch them if they&#x27;ll let you do user studies. Pay non-users to use the software for a user study and put them through all situations, including rare ones.<p>This is the same thing we programmers tell the police to do when the police whine about end-to-end encryption: do old-fashioned legwork. Why should we, as programmers, demand that of police when we give ourselves tools to violate the privacy of users in the exact same way that police want?<p>Yes, that&#x27;s right, the <i>exact</i> same way. Telemetry is a backdoor on a private conversation between a user and a machine.<p>Just do the work. I&#x27;m pretty sure Google has the money to do so.<p>You may respond that this is for Open Source developers to get data on their users. Well, if those developers are hobbyists, they don&#x27;t have time to crunch data, and they&#x27;re probably scratching an itch. If they are not hobbyists, they are paid and should do the legwork.<p>There is <i>no</i> excuse for telemetry. Just do the work.
评论 #34722785 未加载
评论 #34715717 未加载
评论 #34715662 未加载
alyandon超过 2 年前
Oh Google - never stop being you.<p>Not only is it going to be opt-out (because of course it would be coming from Google), I really like the whole &quot;wait a week before sending telemetry&quot; part that just coincidentally has the benefit of sneaking right past people that actively look for suspicious network activity when they&#x27;ve freshly installed something.<p>Am I being uncharitable?
评论 #34717607 未加载
评论 #34714426 未加载
评论 #34714650 未加载
评论 #34713622 未加载
colesantiago超过 2 年前
And there it is. The real intentions of Google and the the Go Programming Language.<p>Google really can’t help themselves, to stick telemetry in anything.
tgv超过 2 年前
They could allow public access to that data. That can help more people than just the Go team, and it would add transparency.
评论 #34714450 未加载
zzzeek超过 2 年前
Was hoping for a big highly designed webpage with &quot;enter your github URL here&quot;. but alas<p>(it did say &quot;transparent&quot;, like a service people opt into that could relate installations to github URLs)
omginternets超过 2 年前
I see a very frustrating pattern emerging in which $COMPANY asks its users if it can do something, the users say &quot;no&quot;, and $COMPANY storms off under the guise that &quot;the discussion is unproductive&quot;.<p>I am left with the impression that the decision has already been made, and that we are witnessing a PR strategy to make Google appear reasonable. I think that Mr. Cox, with all the respect I hold for him, is playing the part of the &quot;useful idiot&quot; here.