Comments by "Edward Cullen" (@edwardcullen1739) on "Brodie Robertson"
channel.
-
27
-
I have worked in heterogeneous environments. It doesn't matter what/where it is, it always becomes a cluster; the 'cancer' comment is absolutely spot-on.
The fundamental issue is that those pushing Rust are not doing it for technical reasons - they are doing it for political (to push Rust) reasons. They want to be able to say "Use Rust, because it's in the Linux Kernel." This is obviously the reason, because the reasons for Rust simply don't make sense unless it spans the entire codebase.
The fundamental objective of the Rust people is to rewrite the kernel in Rust. This, again, is obvious, again, for the reason above. Given that this is their objective, they should simply sit down and do the obvious thing and implement their own kernel, rather than trying to hijack Linux.
There are many reasons they should do this, chief amongst them is that Rust should, in theory, enable them to re-implement existing functions 'better' than the Linux equivalent. There is no reason this new kernel could not mimic/track the Linux API 100% (even if this were done, explicitly, as some sort of compatibility layer).
The one, obvious, reason they won't, is because they know how much effort it will be and how difficult it will be to get people to switch from Linux, because they understand what technical inertia is. The only answer to this is simple: they believe in the superiority of Rust or they don't.
As long as Linux remains successful, there will always be someone with my kind of attitude involved (Linux will begin to fail when there are no people with this attitude; I personally do not work on Linux right now, but I believe I'm reflecting the attitude of the current maintainers who are objecting to Rust). The reason Linux will begin to fail when there are no gatekeepers left is simple and obvious - every Tom, Dick and Harry will try to hijack the Linux kernel/Kernel Project for their own ends. How can I be certain of this? Human nature, that's how.
It's all silly drama, which is driven by fundamentally dishonest people and everyone is either focussing on the drama or is simply being too polite to call them on their BS.
Edit: fix some sleep-dep-induced typos and bad grammar 😅
19
-
7
-
7
-
7
-
Except having multiple languages in a project creates additional problems that are not always apparent. Being an expert in 2 languages is not easy to maintain.
It's interesting that a lot of the comments are "Rust doesn't let you do certain things, and that's good." So why are you trying to do them in the first place?
My concern is always with devs understanding what their code is doing. "Magic" makes me nervous as, in my experience, it tends to people being able to write code that works, without demanding they understand how and why.
Call me a fuddy-duddy, but I don't feel comfortable with people like that working on something as important as Linux.
This not about the here-and-now, it's about the future - the early adopters will be (very) above average developers AND THIS IS THE PROBLEM. The likes of Lina are clearly upper-tier who already have "all the understanding". But being an expert blinds you and what is optimal for you can be an insurmountable barrier to a novice. This is a well-known problem - there's a case study of the UK air traffic control system, where the design was developed using experienced operators and they loved it, but new operators simply couldn't use the system at all.
Rule #1 in safe software development is: the person coming behind you isn't as good as you, write accordingly.
I know I'm talking in vague generalities, but this is entirely come from over a decade of seeing large and complex software projects going wrong and understanding the reasons why.
5
-
5
-
4
-
4
-
3
-
3
-
@bleack8701 Did you watch the same video I did? Rust in Linux will die, either because Linus will get sick of the drama or the Rust evangelists will bail due to the slow progress and constantly having to play catch-up with the C codebase.
If it's going to "take decades", it would be far simpler, quicker, easier to just start reimplementing in Rust, using Linux as a a template.
Translation from one language to another is relatively simple compared to the "working out what I need to do" part of programming.
This effort would be far, far better for the Rust community, because they wouldn't need to compromise to satisfy the legacy code and it would likely help drive language standardisation (something that is yet to happen, BTW).
Starting again is very, very, very rarely the right thing, but sometimes, it is. This is clearly a "sometimes".
3
-
2
-
1
-
1
-
1
-
1
-
1
-
1