I saw an issue today on a fairly popular project (better-auth, see the link to the issue attached). No repro, no context, just a wall of caps and profanity ending in “fuck you”. The maintainers ship this for free. People run production businesses on top of it, for free. And the thanks is someone raging into a text box because a minor bump cost them an afternoon.

I maintain and contribute to a few projects myself, so this hits a nerve a bit. Something people don’t see from the outside: it’s not enough to know how to build the thing. You also have to know how to defuse a thread where someone’s insulting you and not fire back, even though most of us aren’t paid for any of it, let alone the work of staying civil while being told to get fucked.

I’m not pretending breaking changes don’t cause real pain (that’s what the issue is about). But I keep coming back to a boundary question: if you’re not paying for it, do you actually get to demand anything? (Obviously yes, but we still need some boundaries)

  • bitfucker@programming.dev
    link
    fedilink
    arrow-up
    48
    ·
    23 days ago

    Naah, I don’t really demand anything if the author breaks something on update. I just asked if the breaking changes are intentional and if there’s a workaround. Failing that, I revert and look for other libraries or roll my own. To me Open Source is always about making something you love without any obligation. Not even to follow semver.

    • WhatAmLemmy@lemmy.world
      link
      fedilink
      English
      arrow-up
      15
      ·
      edit-2
      23 days ago

      That view of open source only applies for non-profits and hobbyists, releasing code that solves their problems altruistically.

      Corporations, startups, and VC’s abuse open source by using it as a means to gain goodwill and trust until they are funded or profitable, then they perform a bait and switch or other parasitic practices; they deserve the hate, and can eat shit and die.

      Also, if you’re not gonna follow semver don’t use semver. Just use YYYY-MM-DD or whatever. Quite simple really.

      Regarding this project; anyone who chooses to use new (thus untrustworthy) foss libraries in prod without version pinning and thorough integration testing is an idiot.

      • bitfucker@programming.dev
        link
        fedilink
        arrow-up
        9
        ·
        23 days ago

        V1.2.3 is not unique to semver tho. So it could really be anything like linux 7.1.2. To be fair, linux does predate semver by a long time. But the point is that not every software with #.#.# needs to be semver. And I think better-auth, from the issue linked, has stated that they don’t yet follow semver somewhere in their docs.

        • WhatAmLemmy@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          21 days ago

          If the versioning has no meaning, or conflicts with a widely held standard, why not switch to datever? Then we at least know how out of date we are…

          • bitfucker@programming.dev
            link
            fedilink
            arrow-up
            2
            ·
            21 days ago

            I ask the inverse. Why should you demand that every project that uses x.y.z versioning be a semver? A widely held standard only applies if you actually want to follow it in the first place. You know HTTP spec didn’t mention anything about the body in GET requests and so almost every web server just ignores body on GET? Yeah, some software decided to use that. And guess what? That software? It was Elasticsearch. People are free to do whatever they want with their software. If they decided to publish something non standard and you decided to use it, you can ask them nicely to follow standard, or make an adapter for it.

        • fruitcantfly@programming.dev
          link
          fedilink
          arrow-up
          5
          ·
          22 days ago

          But they never established a “semver social contract”. You can’t assume that project follows semver just because it has an x.y.z version number; semver is not the only versioning scheme, it’s just a very popular one

          • WhatAmLemmy@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            arrow-down
            1
            ·
            21 days ago

            Why would you use the syntax of the most widely adopted versioning schema in software engineering, then not follow it?

            This isn’t linux; it’s a 2 year old project ffs. That’s just ignorance or incompetence, but poor design decisions are expected from an AI slop project. Unless you can enlighten us on the logic of the chosen schema, you shouldn’t defend them.

  • Kissaki@programming.dev
    link
    fedilink
    English
    arrow-up
    37
    ·
    edit-2
    23 days ago

    I don’t think there’s a particular need to defuse into a productive discussion. Something like that, with no repro or respect - lock and close, with a comment on why/that onproductive and disrespectful/what it could have been.

    Tone should always be respectful. Something like this should have been a respectful, open suggestion, explaining the issues no clear semver causes.

    If they don’t respond to your needs - you can accept it or leave/fork.

  • carg@feddit.org
    link
    fedilink
    English
    arrow-up
    19
    ·
    edit-2
    22 days ago

    if you’re not paying for it, do you actually get to demand anything? (Obviously yes, but we still need some boundaries)

    Wrong!! Obviously no. You’re not entitled to demand anything. You can ask politely.

    You don’t like the project? Go and use another alternative.

    There is no alternative? Go and write your own.

    You don’t have the skills? Go and pay somebody with the skills. And if you want the most skilled for the job, probably is the person maintaining that project that you don’t like but still keep using for free.

  • thisisbutaname@discuss.tchncs.de
    link
    fedilink
    arrow-up
    19
    ·
    23 days ago

    From the license:

    THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.

    It’s the necessary tradeoff of free/open source software. You get something for free and with permission to do (almost) anything with it, but you get no warranties.

    If this user had simply pointed out the issue it’d have been totally fine, the dev(s) might have missed it and it’d be helpful to let them know. The entitlement shown here is not OK in any way, regardless of the validity of the point made.

  • architect@thelemmy.club
    link
    fedilink
    arrow-up
    12
    ·
    edit-2
    22 days ago

    I mean, I told a paying customer to get fucked yesterday over demands so you can definitely say it to a non-paying person.

    • 0x0@infosec.pub
      link
      fedilink
      arrow-up
      2
      ·
      22 days ago

      If he was a paying customer of mine i would void the purchase and tell him to go fuck himself

  • auzy1@lemmy.world
    link
    fedilink
    arrow-up
    12
    ·
    23 days ago

    Yeah, I started a major project 20 years that got a lot of attention.

    I gave it up after a few months because whilst there was a lot of support, you have to constantly fight against a holes who will tell you how much you suck compared to other options, or how unnecessary you are

  • baltakatei@sopuli.xyz
    link
    fedilink
    arrow-up
    8
    ·
    22 days ago

    Imagine the chaos if all the FOSS maintainers collectively went on strike until their demands were met. They could demand so, so much despite being volunteers.

  • chunes@lemmy.world
    link
    fedilink
    arrow-up
    8
    ·
    22 days ago

    Let me preface this by saying that you should never, ever be rude to open source maintainers.

    But good god, if you are writing software for other programmers, stop making breaking changes. By all means, break your software. Don’t break mine.

  • mycodesucks@lemmy.world
    link
    fedilink
    arrow-up
    6
    ·
    edit-2
    23 days ago

    I thought the proper way to treat maintainers was to shamelessly and immediately volunteer other people’s labor for endless forks every time something we don’t like happens?

  • belated_frog_pants@beehaw.org
    link
    fedilink
    arrow-up
    5
    ·
    22 days ago

    Agree we should treat people better but also: for the love of god learn semver. Breaking changes in minor and patches is so sloppy.

    But still complainers fault for not pinning, because you cannot trust semver at all. Vicious cycle

    • daniel@feddit.nl
      link
      fedilink
      arrow-up
      3
      ·
      21 days ago

      All companies I worked for did not care for semver and made the fucking marketing department decide on the version numbers. Makes you never trust it.

  • tgcoldrockn@lemmy.world
    link
    fedilink
    arrow-up
    4
    ·
    23 days ago

    Coming from /all, not a programmer, user of multiple FOSS, … thank you thank you thank you! I’m grateful I’ve been able to leave subscription ecosystems without a loss of important tool sets.

  • Feathercrown@lemmy.world
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    4
    ·
    23 days ago

    I don’t think it’s valid to simultaneously present open-source as a legitimate alternative for paid software, while also saying you can’t have expectations of the software or trust its guarantees (ie. semver) because it’s just a volunteer project. If you’re presenting your OSS in the serious space of choices for its niche, it will (and should be!) held to a high standard. If it can’t be, then don’t present it as a real alternative. I’ve noticed this (mostly-unintentional) conflation between serious OSS competitors and hobby projects in almost every discussion on this topic I’ve seen.

    • Swedneck@discuss.tchncs.de
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      22 days ago

      The thing that annoys me is that one of the big strengths of open source is that anyone can help make it better, which SHOULD allow it to be a legitimate alternative provided it’s popular enough.
      But for some reason both maintainers and users/contributors tend to find it really fucking difficult to be sensible about things, with users/contributors being needlessly rude (among other problems) and maintainers not giving a shit about the quality of their projects.

      Like… it’s totally understandable and okay for projects to be flawed since the people making it are mere mortal humans, but we should neither be responding to this with “ugh write better code you lazy scrub!” nor “fuck you i write this for free you don’t get to demand anything”.
      We should respond to it with “hey {xyz} could use some improvement” and “hm yeah that’s true, i can’t be arsed to implement it but anyone who wants to open a PR will carry the favour of the heavens”.
      It’s not rocket science.