This article is more than 1 year old

Google's Go may add telemetry that's on by default

Some devs object because they don't trust Mountain View

Russ Cox, a Google software engineer steering the development of the open source Go programming language, has presented a possible plan to implement telemetry in the Go toolchain.

However many in the Go community object because the plan calls for telemetry by default.

These alarmed developers would prefer an opt-in rather than an opt-out regime, a position the Go team rejects because it would ensure low adoption and would reduce the amount of telemetry data received to the point it would be of little value.

Cox's proposal summarized lengthier documentation in three blog posts.

Telemetry, as Cox describes it, involves software sending data from Go software to a server to provide information about which functions are being used and how the software is performing. He argues it is beneficial for open source projects to have that information to guide development.

"I believe that open-source software projects need to explore new telemetry designs that help developers get the information they need to work efficiently and effectively, without collecting invasive traces of detailed user activity," he wrote.

And the absence of telemetry data, he contends, makes it more difficult for project maintainers to understand what's important, what's working, and to prioritize changes, thereby making maintainer burnout more likely.

But such is Google's reputation these days that many considering the proposal have doubts, despite the fact that the data collection contemplated involves measuring the usage of language features and language performance. The proposal isn't about the sort of sensitive personal data vacuumed up by Google's ad-focused groups.

Hang on – you're Google's mate, aren't you?

Even so, IT consultant Jacob Weisz makes it clear that Go cannot escape its association with Google, any more than Java can be separated from Oracle or Swift from Apple. He wrote in a reply to the proposal on GitHub that he had resisted Go for years because of its association with Google and only recently started to work with it because friends have convinced him that it isn't that closely associated with the company.

"Now you guys want to introduce telemetry into your programming language?" Weisz said. "This is how you drive off any person who even considered giving your project a chance despite the warning signs. Please don't do this, and please issue a public apology for even proposing it. Please leave a blast radius around this idea wide enough that nobody even suggests trying to do this again."

He added: "Trust in Google's behavior is at an all time low, and moves like this are a choice to shove what's left of it off the edge of a cliff."

Toronto-based software developer Connie Lukawski put it more succinctly: "No telemetry in my toolchains, hard pass."

That reaction is by no means universal – telemetry has passionate defenders.

But it's useful...

Former Google cryptographer and current open source maintainer Filippo Valsorda, in a post to Mastodon, expressed support for the Go proposal and disappointment in the tenor of the criticism.

"This is a large unconventional design, there are a lot of tradeoffs worth discussing and details to explore," he wrote. "When Russ showed it to me I made at least a dozen suggestions and many got implemented."

"Instead: all opt-out telemetry is unethical; Google is evil; this is not needed. No one even argued why publishing any of this data could be a problem."

Rejection of the suggested opt-out default is common among those choosing to comment on the proposal. Weisz's comment had received 59 upvotes and 24 downvotes at the time this story was filed, which perhaps can be taken as a snapshot of the divide – if online votes count for anything.

Reached via email, Weisz told The Register that reactions to the telemetry proposal appear mostly to be negative.

"Many community members believe that telemetry should either be opt-in, a.k.a. voluntary, or not included at all," Weisz explained. "The Go team has not expressed any criteria by which they will decide whether or not to move forward with the proposal, leading several to wonder if the decision has already been made."

Weisz compared the Go proposal to Microsoft's decision to add telemetry to the .NET developer tools, which similarly transmitted data by default unless the developer opted out.

"The Go team has been described to me before as being backed or funded by Google, but not heavily directed by Google's corporate interests," said Weisz. "I think that's a common interpretation of where the Go team sits within Google. Many people view the Go team considering collecting data as a sign that the Go team is not necessarily more trustworthy than its parent company."

Google as a company has seen its reputation slip in recent years. In 2016, Google ranked third in a Harris Poll report on the top 10 companies for corporate reputation, behind Amazon and Apple. In 2022, Google ranked 31.

But it may be simpler than brand association. Some people believe they have a right to privacy, to be left alone, and to demand that their rights are respected through opt-in consent.

As developer Louis Thibault put it, "The Go dev team seems not to have internalized the principle of affirmative consent in matters of data collection."

Others, particularly in the ad industry, but in other endeavors as well, see opt-in as an existential threat. They believe that they have a right to gather data and that it's better to seek forgiveness via opt-out than to ask for permission unlikely to be given via opt-in.

Reconciling these positions has never really worked, as can be seen in the way discussion moderators have allegedly hidden posts critical of Google as being off-topic. Privacy extremists are just, well, extreme and should be ignored to the extent possible.

Supporters of the proposal want to discuss how telemetry should be done and detractors say the issue is whether telemetry should even be considered. Those are different discussions.

A developer account identified as tv42 makes it clear that mustering arguments about the kind of data collected miss the mark: "I fundamentally don't care how 'good' Go telemetrics would be, because I don't want the FOSS ecosystem as a whole to take any more steps down that slippery slope. There will not be a way back from this."

Software is so much easier when you can move fast and break things. ®

More about


Send us news

Other stories you might like