If I create a OSS app with analytics to detect & log crashes with feature use, is it a bad practice? I think analytics is really helpful in finding:-

  • which features are worth developing &
  • which bugs needs to be solved first.

Edit…

Things Collected

  • IP Address for use ping (for country)
  • All crashes with IP
  • Feature use with IP Crashes are store for upto 6 months to solve bug but rest are collected and delete after 3 months

It is opt-out but user are informed about it during first / install time. To disable analytics Settings --> Privacy

I want to know right way to introduce analytics in OSS

  • jonne@infosec.pub
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    9 months ago

    Generally people make a huge issue out of something like that (some will even call it spyware, etc).

    I think the best approach is to ask the actual community of users what they’re ok with before you start. You probably want to make sure it’s opt-in as opposed to opt-out, and be very clear about what information you do and don’t collect, and make sure it’s stored securely.

    • Max-P@lemmy.max-p.me
      link
      fedilink
      arrow-up
      0
      ·
      9 months ago

      It’s not even always necessarily about trust, but risk management as well. I’ve definitely coded a crash handler that exposed my database credentials in it. There’s also the network aspect of it: your ISP/job/coffee shop can see the DNS request and TLS server name from the telemetry ping. That can be used to track you, or maybe you trigger some firewall alarm at work because of the ping.

      We’ve kind of just started accepting that most apps will phone home and that there’s constantly some chatter on the network from all those apps. But if you actually start looking at what all your devices and apps are doing in the background with say, a PiHole, it’s pretty shocking.

      I’m not that paranoid and would certainly accept some level of telemetry if asked nicely. “Hey I’m a small dev, I appreciate receiving detailed crash reports to make the app better”. And as a developer, users might be willing to offer way more than what would be reasonable to do in the background. I might even agree to submit a screenshot on crash, but if and only if I’ve been asked before and told what it’s used for, and I get the option to disagree if I’m going to be handling private information and don’t want to risk my data be part of a stack trace.

  • SheeEttin@programming.dev
    link
    fedilink
    English
    arrow-up
    0
    ·
    9 months ago

    This doesn’t really have anything to do with open source software. It’s more of a privacy topic. You can harvest as much data as you want and still be GPL.

  • bbuez@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    9 months ago

    Prompt after a crash, include verbatim data sent, send only this time or opt in for automatic reporting, IMHO best practice as a user who respects the need for valueable analytics

  • Jimbabwe@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    9 months ago

    All depends on what you collect, how it’s stored, how transparent you are about it, and how easy it is to opt out of. It can definitely be done well.

  • akrot@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    9 months ago

    As an OSS user, and developper, OPT-OUT is a shitty practice. It should be opt-in to users who face crashes issues if they want to share that data (they care enough to provide their info to the dev to fix it). I know this makes users sound entitled, but otherwise the “opt-out” permission will be exploited by someone which will make users even more paranoid about OSS apps.

  • ResoluteCatnap@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    ·
    9 months ago

    Do not collect more data than you need. If you need IP for some reason then that needs to be relevant. Is your app geographically based, for instance? And does the location or IP impact how the app works?

    Beyond that, if you’re collecting personal or sensitive data it should be opt-in from a privacy focused perspective.

    • catalog3115@lemmy.worldOP
      link
      fedilink
      arrow-up
      0
      ·
      9 months ago

      Only reason we collect IP address is to evaluate which country is most active & focus localisation(language etc)