Are we hating on Linus here or agreeing with him? I'm so out of the loop.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
Excuse me sir why would You ever disagree with our king linus
Agreeing
A lot of people commenting on this seem to have gaps in their knowledge of what happened. I highly recommend reading the linked email, as it is both short and has valuable context.
A lot of people commenting on this seem to have gaps in their knowledge of what happened
We're in a Linus-email-🍿-thread, so that kind of goes without saying doesn't it? 😂
Is there an easy way of seeing the preceding emails in a threaded format?
I read some posted yesterday that were related but it's damn confusing whether the conversation has been active in between?
On the bottom of the page you have a tree representation of replies, with clickable links to each message. The layout might not work well on mobile with limited screen width though, but you can just click through them.
Linus ain't wrong tho
I really appreciated him saying 'I don't want yes men, I need people to call me on my bullshit, but I'm calling you out on yours'.
I read through the next few replies, and it seems like the anti-rust maintainer just has an axe to grind and can't stand people working in a language they don't understand.
He understands Rust and claims to like it. He simply disagrees with the decision to have a mixed language kernel and is trying to unilaterally stop it from happening.
He is totally correct and it is great to see him finally step in to settle this drama. Hopefully it will reduce the level of noise going forward.
People really afraid of Rust out here.
I can relate. I can emphasize with someone who's learned every nuance of a language, and after 30-40 years suddenly these kids come in with their strange hieroglyphics slowly replacing everything you've worked on.
Except that's literally the reality with computers. Everything evolves and things go obsolete. I'm sure the COBOL and Fortran programmers were pissed when the kids started using C too.
It literally wasn't about Rust specifically though. Christoph literally said it was about anything that was not C, including assembly, C++, brainfuck, or whatever, entering the kernel. Christoph likes Rust. Christoph (rightfully) does not like mixed language codebases for projects as large and important as Linux
(rightfully) does not like mixed language codebases for projects as large and important as Linux
You make it sound like it's a matter of taste rather than a technical one (and I suspect it actually might be just about taste in the end)
Its a little of column A, little of column B type situation.
Yes, some of it is his taste, but that taste is coming from a technical place. Primarily long term maintainability of the project.
I realize what Linus came out and said outlines that no code is entering Christoph's part of the project, but Christoph is playing goalie and needs to make sure that never happens in order to keep everything working correctly for a very long time.
Maybe the DMA module gets rewritten completely in Rust one day, but until then, rust modules interfacing with a C-only component seems to be the best for long-term maintenance.
Not his call, as we can see now
But isn’t this in specific just about bindings?
Yea but if someone uses those bindings then you can't just not support it.
By the time this code gets into a large scale production system it will be 2029. That is when the bugs will come in if someone leveraged the Rust bindings.
You can ask the big company users at that time to contribute their fixes upstream, but if they get resistance because they have relatively junior Rust devs trying to push up changes that only a handful of maintainers understand, the company will just stop upstreaming their changes.
The primary concern that a major open source project like this will have is that the major contributors will decide that interacting with it is more trouble than it is worth. That is how open source projects move to being passion projects and then die when the passion dies.
Instead of thinking about the bindings as part of the sub-system, think of them as part of the driver. That is what Linus is saying here.
The Rust code will be maintained, by those writing Rust code. By those writing the drivers. These are not junior people.
Except the bindings are written so that they can be used not just by this driver but others as well.
If companies write crappy code that calls into these bindings, that is nothing new. They do that today with C. Like C, the code will not be accepted if crappy and / or there is nobody credible to maintain it.
None of this is a good argument for not letting these bindings in.
Rust is straight up better than C. It's safer and less prone to errors.
It's not feasible to convert the entire Linux codebase at once. So your options are to either have a mixed codebase, or stick with effectively Cobol into 2020.