It makes the point of a click-bait headline :).
Try running a latest gen Intel i7 against the latest ARM chip on desktop workloads (high-end gaming, databases, compilers, video encoding, AI computation, etc.) and we will see a bit of a different picture.
And while these small devices do an amazing job, one should never forget that they are also extremely optimized for efficiency. Intel Desktop CPUs have different goals and you need to take the whole picture into account at which point you will see that comparing Intel & ARM is like comparing apples and bananas.
So school medicine is evidence based, huh?
Anyway, I even said "if it does not help you"... Obviously that means that instead of accepting your illness you should try other methods. If you think that school medicine has the interest of helping you, or that if they can't help you, you are out of options... Well then you are wrong on both counts.
Maybe read up a bit about Rockefeller medicine. He also founded the American Cancer Association. I am sure he didn't do it for money.
School medicine is a trillion dollar business. You are a fool to believe that their best interest is your health. That of course does not mean that it won't help you, but it also doesn't mean that it's in your best interest (neither health wise nor cash wise) and that it has answers to all illnesses (in fact, only if it brings money, and not curing chronical illnesses brings in a lot of money).
That again does not mean that school medicine is all cash and business. There are people who take it seriously and want to help people (most doctors I naively assume). But here are equally many who don't (pharma lobby) and those are much more powerful. It is a constant battle between good & evil to your disadvantage. The least you can do is have a critical eye on what they have in store for your illness. If you blindly accept any treatment and diagnose they give you, then I am sorry for you.
Yes it also makes sense. Because no matter what you do, it is unlikely that your are able to compartmentalize something so critical and raw as a device driver. If that one is fucked, the reason is likely that your system is already compromised. It was just an example of what WOULD be more viable and effective than rewriting it in Rust.
I still think that QubesOS is taking the right approach. Initially assume hardware & kernel as trusted and make sure that this trust then can not be violated from the outside (TPM, SecureBoot, VMs for each app, etc.). I just wish more people would focus on that promising approach.
It's a fun idea and many people have had it first thing when they heard of Rust... So why did no one do it?
Quite simply: No one is going to rewrite the Linux Kernel in Rust. It is far too big and also you are not solving any real issues either. Rust only protects you from a small fraction of errors and while for an application like a browser, this can be a big gain, I would argue that it is negligible for a kernel in general. Reasons being that all the device IO, component interaction, privilege escalations, logical errors, hardware errors, firmware errors/bugs all can NOT be addressed by rust. Even for a browser, Rust is only a band-aid. The amount of logical errors and security holes in something as complex as a modern web-browser is more than enough of an attack surface. No need for a rouge pointer to weird memory.
What is MUCH more viable though is a project to compartmentalize the Linux Kernel into HVMs. I forgot the name but there are efforts to put nearly everything into its own HVM. Which means if the printer driver goes nuts, it can't really do anything to your system except not print anymore. If your graphics driver goes nuts, well then you won't see anything... And so on.
This means, almost no code rewrites and still MUCH higher protection than RUST. Rust does not compartmentalize. If any of your system components is fucked, your whole system is still fucked. That is why it's pointless to rewrite a kernel because of a language. You need to compartmentalize it...
Look at QubesOS for an early user-space effort. Would be nice to have a Qubes-Kernel too.
Unless you are close to retirement, the new job you should be seeking is "How do I heal myself". Unless of course you want to go through the rest of your life with your condition...
If school medicine won't help you, you should start looking for some alternate approaches, there are enough out there.
Hmm too bad that there are literally at least a billion people on earth with much more sad stories that didn't have a 10 mio. policy coverage for "when they can't do what they love to do" anymore, and also most people can't do what they love to do in the first place.
There is a name for all that, it's called "luxury problems". Like Paris Hilton telling us that her boyfriend threw her diamond thong out of the window and she can't find it anymore. Terrible.
Why would anyone even bother to respond to a statement "Why you can't be a good .NET developer."? A person saying this is obviously deranged. And why is it worth having this on hacker news? Someone seems to be boosting this blog lately. Another useless blogpost on top of hacker news.
The bigger question is why the hell a post like this makes it on top of hacker news? This was by far the most pointless read ever.
On top of that arguing that non-virtual by default is worse than virtual by default is completely superfluous. Just add the damn keyword everywhere and you have virtual everywhere. Same for final.
But Java has everything non-final and virtual by default, which sucks badass because both require great care when implementing the method.
Extending code that was not designed to be extended is very common in Java, because you can. Adding final can easily be forgotten. Removing final, which is required in C#, will only be done IF you intended to make that method extendable, same for virtual.
Yes a great gain. Now I need to argue for each final I add to Java classes and methods, because you know, it seems wasteful to add it, while in fact it is crucial, since maybe just 1% of any code I write was meant to be replaceable by a third-party. Mostly, you want to use other mechanism for extension, like decoration & composition.
If it took ten years to learn that falsehood (non-virtual is worse than virtual by default), then we talk about one hell of a regression huh.
And while these small devices do an amazing job, one should never forget that they are also extremely optimized for efficiency. Intel Desktop CPUs have different goals and you need to take the whole picture into account at which point you will see that comparing Intel & ARM is like comparing apples and bananas.