17 votes

Telemetry in Go 1.23 and beyond

7 comments

  1. skybrian
    Link
    From the article: ...

    From the article:

    As Russ Cox pointed out in his original blog posts, a drawback of the off-by-default approach for telemetry is the continuous need to encourage participation. It takes outreach to maintain a sample of users that’s big enough for meaningful quantitative data analysis, and representative of the user population. While blog posts and release notes can boost participation (and we’d appreciate it if you would enable telemetry after reading this!), they lead to a skewed sample. For example, we received almost no data for GOOS=windows from early adopters of telemetry in gopls.

    To help reach more users, we introduced a prompt in the VS Code Go plugin asking users if they want to enable telemetry [...]

    ...

    The most surprising aspect of the bugs coming from telemetry was how many of them were real. Sure, some of them were invisible to users, but a good number of them were actual misbehaviors of gopls–things like missing cross references, or subtly inaccurate completion under certain rare conditions. They were exactly the sort of things that a user might be mildly annoyed by but probably wouldn’t bother to report as an issue. Perhaps the user would assume that the behavior was intended. If they did report an issue, they might not be sure how to reproduce the bug, or we’d need a long back-and-forth on the issue tracker to capture a stack trace. Without telemetry, there is no reasonable way that most of these bugs would have been discovered, much less fixed.

    9 votes
  2. [6]
    carrotflowerr
    Link
    Two green flags: off by default actually calling it "telemetry" I would prefer if it wasn't there at all, but it's fine i guess.

    By enabling telemetry uploading, you can elect to share data about toolchain programs and their usage with the Go team.

    Two green flags:

    • off by default
    • actually calling it "telemetry"

    I would prefer if it wasn't there at all, but it's fine i guess.

    5 votes
    1. [5]
      trim
      Link Parent
      If it off by default? Looking at the blog post that doesn't seem clear at all. Remote uploading might be off by default, but the telemetry collection doesn't seem to be. It isn't clear in the...

      If it off by default? Looking at the blog post that doesn't seem clear at all.

      Remote uploading might be off by default, but the telemetry collection doesn't seem to be.

      By default, Go telemetry data is stored only on your local computer.

      To revert to the default mode of local-only telemetry, run:
      go telemetry local

      It isn't clear in the linked article, but you can find this info in the go docs here

      https://go.dev/doc/telemetry

      I bypassed Golang in favour of Rust, because Google.

      3 votes
      1. [3]
        skybrian
        Link Parent
        You’re against computers logging local activity? Have I got news for you.

        You’re against computers logging local activity? Have I got news for you.

        6 votes
        1. [2]
          trim
          Link Parent
          Didn't say that at all, thanks Did say I didn't want to use a language made by Google, and perhaps corrected an "off by default" potential misunderstanding by providing a link to more detailed...

          Didn't say that at all, thanks

          Did say I didn't want to use a language made by Google, and perhaps corrected an "off by default" potential misunderstanding by providing a link to more detailed information

          1 vote
          1. skybrian
            Link Parent
            Okay, sorry about that. Yeah, I think they’re assuming that uploading the data is what people care about. The doc you linked to says that there are three modes, “on”, “off”, and “local”, and...

            Okay, sorry about that.

            Yeah, I think they’re assuming that uploading the data is what people care about.

            The doc you linked to says that there are three modes, “on”, “off”, and “local”, and “local” is the default.

            1 vote
      2. CunningFatalist
        Link Parent
        As far as I know, yes, it is off by default. I am usually also weary of telemetry, but I think in this case, it's actually fine. And no, I won't turn it on.

        As far as I know, yes, it is off by default. I am usually also weary of telemetry, but I think in this case, it's actually fine. And no, I won't turn it on.