this post was submitted on 03 Sep 2024
431 points (97.4% liked)

Linux

47951 readers
1385 users here now

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

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Linux people doing Linux things, it seems.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 89 points 1 month ago (7 children)

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.

[–] [email protected] 83 points 1 month ago (1 children)
[–] [email protected] 3 points 1 month ago* (last edited 1 month ago)

God bless Doulas Adams

[–] [email protected] 6 points 1 month ago (2 children)

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. 😂

[–] [email protected] 38 points 1 month ago* (last edited 1 month 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.

[–] [email protected] 13 points 1 month ago* (last edited 1 month ago) (2 children)

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.

[–] [email protected] 26 points 1 month 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.

[–] [email protected] 15 points 1 month ago (2 children)

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.

[–] [email protected] 7 points 1 month ago* (last edited 1 month 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.

[–] [email protected] 2 points 1 month ago

😃I see, nice to know

[–] [email protected] 5 points 1 month ago (1 children)

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

[–] [email protected] 8 points 1 month 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. 🤣

[–] [email protected] -2 points 1 month ago (2 children)

Why isn't a Rust kernel being developed in parallel ?

[–] [email protected] 14 points 1 month ago (1 children)

I mean, it is. RedoxOS is just that. But it's not Linux and that means a lot of things.

[–] [email protected] 1 points 1 month ago

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

[–] [email protected] 2 points 1 month ago

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

[–] [email protected] -5 points 1 month ago (1 children)

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.

[–] [email protected] 4 points 1 month ago (1 children)

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.

[–] [email protected] 2 points 1 month ago* (last edited 1 month 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."

[–] [email protected] -5 points 1 month ago (1 children)

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.

[–] [email protected] 5 points 1 month ago

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