• piefedderatedd@piefed.social
    link
    fedilink
    arrow-up
    111
    ·
    7 months ago

    In some open source projects there is a lot of leeching and little contributions.

    In 2020 the sole developer of Invidious stepped away from development because of burn out. https://omar.yt/posts/stepping-away-from-open-source

    Also in 2020 developer Raymond Hill archived the uMatrix browser add-on https://news.ycombinator.com/item?id=24532973

    I will never hand over development to whoever, I had my lesson in the past – I wouldn’t like that someone would turn the project into something I never intended it to become (monetization, feature bloat, etc.). At most I would archive the project and whoever is free to fork under a new name. For now I resisted doing this, so people will have to be patient for new stable release.

    What would actually help is that people help to completely investigate existing issues instead of keep asking me to add yet more features. Turns out people willing to step in the code to investigate and pinpoint exactly where is an issue (or that there is no issue) is incredibly rare.

    • a1studmuffin@aussie.zone
      link
      fedilink
      English
      arrow-up
      29
      ·
      7 months ago

      That last sentence rings true of most software engineers. Everyone wants to work on a glamorous new feature that’s going to wow users or let them think about problems they want to think about. No-one wants to hunt down the difficult-to-repro bug in an old but critical section of someone else’s code.

    • Daniel Quinn@lemmy.ca
      link
      fedilink
      English
      arrow-up
      14
      ·
      7 months ago

      When I stepped away from my own (mildly successful) Free software project, I had the same concerns: it’s about the reputation.

      The project had earned a decent amount of trust when I was running it, and presumably people were installing new updates without going over the changes. If I handed off the project to someone new, I wasn’t just handing over the work, but that trust as well.

      So rather than handing over the project to someone new, I archived it and someone else (thankfully someone not-evil) forked it. Anyone installing the fork immediately understood that the relationship was new. They’d have to decide whether to trust this new maintainer or not.

      For my money, this is the way. If you’re burning out, remember that your reputation is tied to your project name, and that it has considerable value. If you don’t want to continue, the disruption of a fork is better/safer than the smooth-but-risky hand-off.

  • rizoid@lemmy.dbzer0.com
    link
    fedilink
    arrow-up
    94
    arrow-down
    2
    ·
    7 months ago

    More people need to operate like Linus Torvalds. Call people on their shit. Respectfully of course.

    • corsicanguppy@lemmy.ca
      link
      fedilink
      arrow-up
      33
      arrow-down
      3
      ·
      7 months ago

      Thing is, much of what Linus says is respectful; even though it reads harsh. Phrases like “you keep doing this” and “your code is shit” and “I will bar you from committing code until you can get better” and similar stuff, is respectful to the person, as he is still just focusing on the code : the product. Mostly.

      Sure it comes off as aggressive ultimatums, but when I worked on New Jersey I saw numerous arguments between passionate coders who really cared about their work and spoke on these loud voices with aggressive gesticulations and gestures, and it was frightening. But, when you took apart the arguments, it was all about “the code” this, and “the standard” that, and very little “you suck” and “you’re dumb”. And, when the argument was settled, these passionate people were still friends.

      Of all the people I’ve been yelled at by in my career, the harsh-sounding ones who kept it on the work and not the worker ended up with the most loyalty and trust in the end.

      Give me a dozen Linus who care about their work. Sure he’s slipped up a few times, but on balance he’s been very good. Even before the “let’s all hug” sensitivity training.

      • lightnsfw@reddthat.com
        link
        fedilink
        arrow-up
        4
        ·
        7 months ago

        Sure it comes off as aggressive ultimatums, but when I worked on New Jersey I saw numerous arguments between passionate coders who really cared about their work and spoke on these loud voices with aggressive gesticulations and gestures, and it was frightening. But, when you took apart the arguments, it was all about “the code” this, and “the standard” that, and very little “you suck” and “you’re dumb”. And, when the argument was settled, these passionate people were still friends.

        I used to work for a guy like that. He was aware of how a lot of people perceived him and was working on it but it never really bothered me when he slipped because like you said it wasn’t a personal attack, he was just trying to make us get the work done to his standards. There were multiple times he would come to me and apologize after we finished something and I was just like “well you were right so I’m not really worried about it”.

      • zagaberoo@beehaw.org
        link
        fedilink
        arrow-up
        5
        arrow-down
        2
        ·
        7 months ago

        “You’re dumb” is disrespectful, but “your code is shit” isn’t? How does the latter not reasonably imply the former?

        Being respectful is taking the time to moderate “your code is shit” to something like “your code is not acceptable”. You might even go a modicum further into kindness with “there are aspects of your code I need you to improve”.

        All express the same idea, some will leave the listener more open to internalizing the criticism.

        • Alien Nathan Edward@lemm.ee
          link
          fedilink
          English
          arrow-up
          6
          ·
          7 months ago

          How does the latter not reasonably imply the former?

          I’m not dumb and I write shit code all the time. Bad code only implies that the author is dumb if you assume only dumb people can make mistakes.

          • zagaberoo@beehaw.org
            link
            fedilink
            arrow-up
            1
            ·
            7 months ago

            Bad code, yes, calling it ‘shit’, no.

            Stuff like this is a big part of why software circles are seen as so hostile and unwelcoming to outsiders.

            You can be completely clear and frank without resorting to insult, mild though it may be. Just because you and people most like you understand that calling their work ‘shit’ doesn’t reflect on them personally, doesn’t mean it’s not significantly exclusionary.

            Now, obviously you can get to know your reports well enough to understand whom would take ‘shit’ well, but that doesn’t mean it’s not generally important to temper criticism with kindness. Kindness never has to mean holding back criticism, just avoiding stooping to insult.

    • Billegh@lemmy.world
      link
      fedilink
      arrow-up
      4
      ·
      7 months ago

      Respectfully

      I’m more of a fan of responding in kind. Manners may cost nothing, but so does clear communication.

    • MigratingtoLemmy@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      7 months ago

      In my book, respectfully is something more insulting than “you’re so stupid, how did you survive to suck on your mother’s tit, one would imagine you were too stupid to know what to do with it”.

      Obligatory /s

  • BearOfaTime@lemm.ee
    link
    fedilink
    arrow-up
    82
    arrow-down
    4
    ·
    7 months ago

    Lol, you don’t already operate this way in life?

    Someone trying to guilt or pressure you has an agenda and isn’t concerned with what’s best for you.

  • Potatos_are_not_friends@lemmy.world
    link
    fedilink
    arrow-up
    49
    arrow-down
    2
    ·
    7 months ago

    Open source is such a wild west at times.

    You have your gatekeepers like Linus Torvalds who will call you a fucking moron if you submit something that looks remotely off.

    You have your committees that you can submit a MR, but it has to go through the council of experts before it gets merged.

    But the vast majority, it’s a one or two person project and this was a side project because you had an issue you wanted solved. No financial reward, no acknowledgement. And so when someone gives it a iota of attention, you fall head over heels and hope they are like-minded and want to support this dream too.

    • ipkpjersi@lemmy.ml
      link
      fedilink
      arrow-up
      6
      ·
      edit-2
      7 months ago

      I think it can depend on how and why you’re being pushy too. I’ve definitely had to have my fair share of passionate conversations and strongly advocating (yes, you could say pushing) for what I believe is best for the direction of a project with my fellow maintainers, especially when it comes to important things (like how to handle specific security issues etc since there’s not always one way of handling it). Generally speaking though you’re right.

  • phx@lemmy.ca
    link
    fedilink
    arrow-up
    26
    ·
    7 months ago

    Anyone pushing you to do something you don’t understand, or understand poorly. I could see an actual security researcher pushing for a code update to fix a vulnerability.

    Heck, even as an occasional contributor I take some pride in seeing my fixes etc make it into the mainline codestream.

    But yeah, you definitely need to be wary of somebody you only know from online pushing a change that doesn’t make sense or you don’t understand.

    • davel [he/him]@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      8
      ·
      7 months ago

      Anyone pushing you to do something you don’t understand, or understand poorly.

      This was taught to me in my bank teller training back in 19-dickety-two. Don’t let someone try to rush you or to obfuscate/over-complicate things.

    • erwan@lemmy.ml
      link
      fedilink
      arrow-up
      14
      ·
      7 months ago

      The problem is when people then open huge PRs and expect you to take time to review them, then eventually merge them.

      Especially when it’s something you don’t want in your codebase because it introduce a big unnecessary “refactoring” or a feature that you don’t want to have to maintain forever.

      • TheDoctor [they/them]@hexbear.net
        link
        fedilink
        English
        arrow-up
        3
        ·
        7 months ago

        I can’t imagine just opening a giant PR without having extensive contact and coordination with the maintainer. Almost any amount of incremental safe steps would be preferable to a giant PR, even with extensive communication. I once introduced fully strict typescript into a vanilla js codebase and it took dozens of small PRs to do so. It was made more complicated by the fact that it was a library, but still. The communication made the entire process smooth and let everyone be confident the changes were correct along the way. If I’d done it all at once without any coordination, it would have been faster for me, but at the cost of the maintainer’s sanity and time.

        • erwan@lemmy.ml
          link
          fedilink
          arrow-up
          2
          ·
          7 months ago

          The point is that saying “pull requests welcome” is still work for the maintainer, because now you have to have these discussions with potential contributors, sometimes explain them why you don’t want to maintain the feature, or explain them why this PR is not the way you want…

          So either way it’s work, it’s important to keep in mind before saying “just send a PR”.

    • Kazumara@feddit.de
      link
      fedilink
      arrow-up
      4
      ·
      7 months ago

      That doesn’t apply as a solution here. After all Jia Tan did make pull requests, the pressure came later.

  • lordnikon@lemmy.world
    link
    fedilink
    English
    arrow-up
    16
    arrow-down
    2
    ·
    7 months ago

    Honestly that should go for all transactions. someone calls you to fix an issue or pressure you into buying something. Just hang up and call the company back. one thing I have learned from many years of support is the person calling always has power over the person being called. So flip the dynamic. same goes for car sales just walk away. hell go look at cars when you don’t want one and practice just walking away and see how much power you get.

    • MotoAsh@lemmy.world
      link
      fedilink
      arrow-up
      3
      arrow-down
      1
      ·
      7 months ago

      Regardless of flipping the dynamic, that’s a good way to avoid scammers. It’s easy to spoof an incoming number, but near impossible to intercept an outgoing call. If your “bank” calls and starts asking funny questions, just hang up and call the real bank to check.

  • KillingTimeItself@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    15
    arrow-down
    2
    ·
    7 months ago

    as a non developer myself, to my understanding, the vulnerabilities were implemented in test binaries?

    If so, i question why those were shipped to the client. Unless they were built into the package itself on the mirror, in which case, still curious as to why that would be. I would think tests are entirely benign and do nothing. Seems like it would be incredibly bad practice to do otherwise?

    Seems like an obvious vector to shutdown any potential fuckery. But what do i fucking know.

  • DingoBilly@lemmy.world
    link
    fedilink
    arrow-up
    3
    arrow-down
    4
    ·
    edit-2
    7 months ago

    It’s a hard call at end of day. If you want it to all be privacy respecting and open source and decentralised then you’re almost guaranteeing you won’t make money from it.

    The alternative is ad based software that’s free which is also garbage.

    Hard to find the balance between the two, can’t think of many examples if any that actually work besides just making a paid product that’s very good and hope it’s better enough than the rest to be successful. But even then you likely will have to cross lines because you’re just relying on viral luck at that stage.

  • twinnie@feddit.uk
    link
    fedilink
    arrow-up
    6
    arrow-down
    26
    ·
    7 months ago

    The guy was from Hong Kong, they probably threatened to throw his family in jail.

    • underisk@lemmy.ml
      link
      fedilink
      arrow-up
      48
      ·
      7 months ago

      he was using a singapore VPN and had access to multiple sockpuppets. we know literally nothing else about them and anything you’ve heard to the contrary is baseless rumor.

      leading theory is that it was a state-sponsored actor, but frankly even that much is speculation and which state is still way up in the air.

          • tal@lemmy.today
            link
            fedilink
            English
            arrow-up
            2
            ·
            edit-2
            7 months ago

            we know about the singapore VPN because they connected to IRC on libera chat with it.

            Hmm.

            I don’t know if the VPN provider is willing to provide any information, but I wonder if it’s possible to pierce the veil of VPN in at least approximate terms?

            If you have a tcpdump of packets coming out of a VPN – probably not something that anyone has from the Jia Tan group – you have timings on packets.

            The most immediate thing you can do there – with a nod to Cliff Stoll’s own estimate to locate the other end of a connection – is put at least an upper bound and likely a rough distance that the packets are traveling, by looking at the minimum latency.

            But…I bet that you can do more. If you’re logging congestion on major Internet arteries, I’d imagine that it shouldn’t take too many instances of latency spikes before you have a signature giving the very rough location of someone.

            Some other people pointed out that if they used a browser, it may have exposed some information that might have been logged, like encodings.

            • underisk@lemmy.ml
              link
              fedilink
              arrow-up
              4
              ·
              7 months ago

              I don’t foresee anyone with the kind of data needed to do more investigation releasing it to the public, so I doubt we’re going to be getting any satisfying answers to this. Microsoft may have an internal team combing through github logs, but if they find anything they’re unlikely to be sharing it with anyone but law enforcement agencies.

    • Potatos_are_not_friends@lemmy.world
      link
      fedilink
      arrow-up
      12
      ·
      7 months ago

      Via https://boehs.org/node/everything-i-know-about-the-xz-backdoor

      They found this particularly interesting as Cheong is new information. I’ve now learned from another source that Cheong isn’t Mandarin, it’s Cantonese. This source theorizes that Cheong is a variant of the 張 surname, as “eong” matches Jyutping (a Cantonese romanisation standard) and “Cheung” is pretty common in Hong Kong as an official surname romanisation. A third source has alerted me that “Jia” is Mandarin (as Cantonese rarely uses J and especially not Ji). The Tan last name is possible in Mandarin, but is most common for the Hokkien Chinese dialect pronunciation of the character 陳 (Cantonese: Chan, Mandarin: Chen). It’s most likely our actor simply mashed plausible sounding Chinese names together.

      • xantoxis@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        7 months ago

        Wild, so it would suggest that the actor wasn’t Chinese at all. An authentic Chinese person probably wouldn’t choose a name that sounded like that, any more than I would name myself Sean MacBerkowitz, it would just sound wrong.

        A random name generator might produce something like this, of course, if it wasn’t programmed to be too picky.

        • baseless_discourse@mander.xyz
          link
          fedilink
          arrow-up
          6
          ·
          edit-2
          7 months ago

          Or they are Chinese, and pick non-authentic Chinese names so people wouldn’t suspect them? I don’t think looking at the name can be a great way to identify the source.

          This attack is clearly sophisticate: the attacker(s) are probably well-trained in obscuring their identity to not reveal much info from their name picks. Say, just use a random name generator.