Linux people doing Linux things, it seems.

  • Avid Amoeba@lemmy.ca
    link
    fedilink
    arrow-up
    85
    arrow-down
    3
    ·
    edit-2
    6 days ago

    “It’s herding cats: introducing Rust effectively is one part coding work and ninety-nine parts political work…”

    All software development in a team is. More like 20/80 or 40/60 if you’re lucky.

    • Telorand@reddthat.com
      link
      fedilink
      arrow-up
      105
      arrow-down
      13
      ·
      6 days ago

      Except in this case, it was a bunch of old C devs who aren’t just resistant but openly hostile to change, and they’d rather bully people into silence than try to progress.

      • Avid Amoeba@lemmy.ca
        link
        fedilink
        arrow-up
        17
        arrow-down
        11
        ·
        6 days ago

        If I go to any of the teams I interact with who program their components in C++ and proposed Rust or anything else, I’d get a similar reaction. They’re very good at C++ and they very rarely have memory and threading issues. 😂

        • orangeboats@lemmy.world
          link
          fedilink
          arrow-up
          40
          arrow-down
          2
          ·
          edit-2
          6 days ago

          They very rarely have memory and threading issues

          It’s always the “rarely” that gets you. A program that doesn’t crash is awesome, a program that crashes consistently is easy to debug (and most likely would be caught during development anyway), but a program that crashes only once a week? Wooo boy.

          People vastly underestimate the value Rust brings by ensuring the same class of bugs will never happen.

        • Petter1@lemm.ee
          link
          fedilink
          arrow-up
          14
          arrow-down
          1
          ·
          edit-2
          5 days ago

          They don’t get, that without memory issue resistant language, not a lot of new blood will be as good as them dealing with that stuff since they already have that solved in the language itself.

          It is about making kernel development future proof, so that new devs keep on coming and don’t create massive security holes on the way.

          Well this is how I understand it.

          • leisesprecher@feddit.org
            link
            fedilink
            arrow-up
            27
            arrow-down
            1
            ·
            6 days ago

            And it’s a bad argument anyway. You’re only good at memory management until the first bug takes down production.

            Rust isn’t a panacea and certainly has problems, but eliminating an entire class of potentially very dangerous bugs is a very good argument.

          • Giooschi@lemmy.world
            link
            fedilink
            English
            arrow-up
            15
            ·
            5 days ago

            Note that Rust does not “solve” memory management for you, it just checks whether yours is memory safe. Initially you might rely on the borrow checker for those checks, but as you become more and more used to Rust you’ll start to anticipate it and write code that already safisfies it. So ultimately you’ll still learn how to safely deal with memory management, just in a different way.

            • verdigris@lemmy.ml
              link
              fedilink
              arrow-up
              7
              ·
              edit-2
              5 days ago

              Yeah all of the times I see Rust being described as “harder to learn” than C I just shake my head. It’s like saying that it’s easier to just fall off the cliff at the Grand Canyon instead of taking the path down. Any additional difficulty is because the language forces you to understand memory and pointers properly, instead of just letting you fuck around and find out.

      • saddlebag@lemmy.world
        link
        fedilink
        arrow-up
        18
        arrow-down
        12
        ·
        6 days ago

        Several downvotes with zero comments to refute or discuss your point. Some devs don’t like you calling them out

        • Telorand@reddthat.com
          link
          fedilink
          arrow-up
          14
          arrow-down
          5
          ·
          6 days ago

          In a twist of delicious fate, my instance doesn’t have downvotes. They get dropped before they even hit the database. So I’ll never know or “feel ashamed” if they don’t bother to take time to refute it. 🤣

        • Giooschi@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          6 days ago

          Rust for Linux used to be developed in parallel to the mainline Linux before Linus Torvalds merged support in the main tree.

          • Telorand@reddthat.com
            link
            fedilink
            arrow-up
            1
            ·
            5 days ago

            Maybe this is the fork in the road for something new. These circumstances were kind of how GNU/Linux was born, after all.

      • kautau@lemmy.world
        link
        fedilink
        arrow-up
        1
        arrow-down
        6
        ·
        6 days ago

        Ironically the majority of the rust memory management ruleset is called ownership, and they are unwilling to release any of it, and claiming all of it, so there’s an out of memory error.

        • Nibodhika@lemmy.world
          link
          fedilink
          arrow-up
          4
          ·
          5 days ago

          I didn’t understood your criticism, what are they unwilling to release? What are they claiming all of? Why would ownership rules cause an OOM?

          Sharing stack memory is a bad practice in C as well btw.

          • kautau@lemmy.world
            link
            fedilink
            arrow-up
            2
            ·
            edit-2
            5 days ago

            Lol the out of memory error was a joke. A reference to that two people both trying to do the same thing will fill the heap since there’s unnecessary work.

            I tried to make a code joke but it failed.

            As far as what are they unwilling to release? Control. Ownership of any bit of the kernel they control

            kernel maintainer Ted Ts’o, emphatically interjects: “Here’s the thing: you’re not going to force all of us to learn Rust.”

            Lina tried to push small fixes that would make the C code “more robust and the lifetime requirements sensible,” but was blocked by the maintainer.

            DeVault writes. “Every subsystem is a private fiefdom, subject to the whims of each one of Linux’s 1,700+ maintainers, almost all of whom have a dog in this race. It’s herding cats: introducing Rust effectively is one part coding work and ninety-nine parts political work – and it’s a lot of coding work.”

      • TunaCowboy@lemmy.world
        link
        fedilink
        arrow-up
        2
        arrow-down
        8
        ·
        5 days ago

        If you want to talk about bullying you ought to include all the rust zealots who show up to shit on C every chance they get.

        • Telorand@reddthat.com
          link
          fedilink
          arrow-up
          7
          arrow-down
          1
          ·
          5 days ago

          Okay, but this was but an example of that, so it’s not really a relevant grievance, is it?

      • corsicanguppy@lemmy.ca
        link
        fedilink
        English
        arrow-up
        11
        arrow-down
        20
        ·
        6 days ago

        bunch of old C devs

        I knew this ageist bullshit would pop up. I know we lost our mentors and are kinda feeling in the dark, but the moment people pop out the ageist slurs I know they’ve got nothing to say.

        • orangeboats@lemmy.world
          link
          fedilink
          arrow-up
          19
          arrow-down
          3
          ·
          6 days ago

          The C developers are the ones with the ageist mindset.

          The Rust developers certainly are not the ones raising the point “C has always worked, so why should we use another language?” which ignores the objective advantages of Rust and is solely leaning on C being the older language.

        • Telorand@reddthat.com
          link
          fedilink
          arrow-up
          13
          arrow-down
          1
          ·
          5 days ago

          “Old” doesn’t have to mean biologically old. In this case, it means people who have been doing it for a long time—long enough that they’re set in their ways.

          So while I can understand the confusion, it doesn’t apply here.

  • Snot Flickerman@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    197
    arrow-down
    24
    ·
    edit-2
    6 days ago

    Here’s the thing: you’re not going to force all of us to learn Rust.

    That’s precious coming from Linux developers.

    I am a heavy Linux user. I run multiple microservices on multiple headless devices all Linux.

    This sounds like every fucking Windows user you’ll ever encounter.

    “Here’s the thing: you’re not going to force all of us to learn to use Linux.”

    So, yeah…

    • kbal@fedia.io
      link
      fedilink
      arrow-up
      59
      arrow-down
      48
      ·
      6 days ago

      Switching everything from C to Rust because it has better memory safety is more akin to changing languages from English to Esperanto because it has gender neutral pronouns and other cool features. Maybe it’s a good idea, but it’s understandable that some people are reluctant.

      • Snot Flickerman@lemmy.blahaj.zone
        link
        fedilink
        English
        arrow-up
        82
        arrow-down
        8
        ·
        edit-2
        6 days ago

        Maybe it’s a good idea, but it’s understandable that some people are reluctant.

        I understand that position. I also understand how the words and phrases that the C community has used to communicate with the Rust community seems to be completely dismissive, not just reluctant.

        I quoted what I did explicitly because of how a statement like that comes off to the person it’s aimed at. It doesn’t make them feel like they’re on an even footing working on the same project with the overall goal of it becoming better.

        memory safety is more akin to changing languages from English to Esperanto because it has gender neutral pronouns.

        I mean… not at all? Memory safety is huge for cybersecurity, buffer overflows and the like are common attack surfaces. C requires you to have deep knowledge of safe memory management practices and even then you can end up with memory issues. Rust was developed to avoid such issues entirely. I understand the reluctance but it feels to me like arguing “we should just stick with COBOL because it works.”

        • kbal@fedia.io
          link
          fedilink
          arrow-up
          28
          arrow-down
          14
          ·
          6 days ago

          Gender neutral pronouns are pretty huge too. Sure you can do them in English without too many problems usually, just as it’s also possible to code safely in C. It requires everyone to change their old habits, but it’s much less of a change than is involved in adopting a whole new language.

          Anyway, I do like Rust better personally.

          • explore_broaden@midwest.social
            link
            fedilink
            arrow-up
            24
            arrow-down
            1
            ·
            6 days ago

            I would still say that getting people to the point where they can write safe C code every time is harder than learning Rust, as it’s equivalent to being able to write rust code that compiles without any safety issues (compiler errors) every single time, which is very difficult to do.

          • boonhet@lemm.ee
            link
            fedilink
            arrow-up
            11
            arrow-down
            1
            ·
            edit-2
            6 days ago

            Gender neutral pronouns might be pretty huge too, but nobody’s private data is getting hacked because of gendered pronoun use.

          • Auli@lemmy.ca
            link
            fedilink
            English
            arrow-up
            1
            ·
            4 days ago

            Don’t thinknits possible by on write safe c code. Otherwise we would not have these issues time and time again. But yes its only the idiots begin don’t know how to code. Projects are big and complicated itsneasy to make mistakes.

        • refalo@programming.dev
          link
          fedilink
          arrow-up
          13
          ·
          edit-2
          6 days ago

          People prefer what’s familiar to them. Rust is completely foreign to them, the syntax is very different, the community is different (and often much younger), it still has many issues and is not ubiquitous, and many people are just slow/averse to change in general. So I absolutely understand the hesitation. And some just don’t like it for other reasons like the syntax, learning curve or other reasons. There’s also still a host of memory-related things Rust doesn’t fix like stack overflows, leaks, bitflips, unsafe context code, and just bad coding practices in general.

          • Octorine@midwest.social
            link
            fedilink
            English
            arrow-up
            7
            arrow-down
            5
            ·
            6 days ago

            I blame C++. When these kernel hackers hear about how they should switch to this shiny new language that’s going to make their code so much cleanser and more manageable, I don’t blame them for thinking it’s all bullshit. It was last time.

            • refalo@programming.dev
              link
              fedilink
              arrow-up
              6
              arrow-down
              1
              ·
              edit-2
              6 days ago

              To be fair, there’s nothing wrong with only using the parts of C++ you want. If you avoid things like templates, exceptions, RTTI etc. then e.g. your compile times will not suffer like people always complain about, your error messages will not be cryptic, plus you’ll have stronger typing, easier/safer lifetime management with ctor/dtors and easier to read code from class usage.

              Personally I think Swift has great potential if it can get past the speed and cross-platform issues, as it was designed by (among others) some C++ committee folks, and so it feels a lot more familiar than say, Rust, plus it fixes a lot of long-standing issues.

              There is also an Indian kernel fork that allows C++ drivers.

        • rhabarba@feddit.orgOP
          link
          fedilink
          arrow-up
          6
          arrow-down
          3
          ·
          6 days ago

          I understand the reluctance but it feels to me like arguing “we should just stick with COBOL because it works.”

          For those depending on COBOL code that does the job and has been doing it just well for a few decades, there are approximately zero good reasons to not stick with it.