Comments by "Anony Mousse" (@anon_y_mousse) on "Fixing HORRIBLE Embedded Rust So You Don’t Have To" video.

  1. 3
  2. 2
  3. 2
  4. 2
  5. 2
  6. 1
  7.  @d3line  Nearly all programmers are bad programmers, this is a known fact. So instead of making it easier for them to be programmers and make far worse mistakes than common ones, let's instead shut them out. Linux has bugs because it has thousands of developers who probably shouldn't be allowed to contribute code to it. How many of those bugs are for the common core of Linux as opposed to drivers for hardware that not everyone uses? Do you know? Do you even understand the difference? A Raspberry Pi may not have the limitations of an Arduino or some other niche piece of hardware, but you still shouldn't be cavalier with resources. There are many applications where you need smaller hardware and using Java isn't an option, but what's more is like Rust, many of the features are unimplemented on such hardware and all you get is the syntax. Proving code correctness is impossible for a program to do, at best you can prove partial correctness, which is not good enough. If bounds checking is only done at compile time, then when your improperly written code encounters an out of bounds condition at runtime the check will have proven worthless. So it's slowing down the compile time for little potential benefit to prevent errors which don't happen with good programmers and no benefit for the runtime portion. So it won't slow down the running code, sure, but it won't catch the more pernicious errors. In fact, Rust won't catch the majority of the more pernicious errors which mostly occur because idiots slip through the cracks by learning languages like Java, Python, Go, C# and yes Rust. As for what Microsoft thinks, I don't care, I don't use Windows and won't and they can suck a big D.
    1
  8.  @d3line  Let's see, false equivalency, as flying airplanes is not the same as writing code. As well errors made there are more immediate unless you're using bad code. Oh wait, that's happened and they had to ground a huge swath of planes which had slow building problems because of poorly written code. For kernel vulnerabilities, do you have any idea how to trigger any of those? How long did it take to find them? On the RPi you just made another argument for me because a dingus like most new developers are these days won't understand algorithmic complexity and won't have any clue how to actually implement them. So good luck getting one of them to write good code for embedded systems and if they don't learn it early, good luck getting them in later years to do it as well. You mistakenly assumed I was talking about hardware features when I was talking about software features, as in what the language provides, or in this case fails to. And the point still stands that at that level, Rust and C are on equal footing except for a few points which as I said only apply to bad programmers. Bounds checking can be as simple as "you're using `i` to index the array and checking at the top against a.len()", but if you have a mutating index, as in based on data that may be external to not just the module you're writing but your entire program, it would have to either do runtime bounds checking for each access or none at all. For work on embedded systems you'll encounter that a lot. Airbags actually do cause more harm than good, so that's an invalid point right there. Microsoft still can't write a good OS, but you trust their expertise on writing good code? Talking to beginners is, hopefully, how I influence the world to be better. If I can dissuade ones like you from writing code the world is that much better, and if I can teach better ones than you to write better code by them learning better techniques, better still.
    1
  9. 1
  10. 1
  11. 1
  12. 1
  13. 1
  14. 1
  15.  @d3line  Libraries most definitely are excepted. You can't know what a library is doing unless you've compiled the source yourself, and if it's closed source, you sure as heck can't do that. It could modify your data in an unexpected way that you must account for, and which must be manually handled in any language as even Rust won't handle it for you. Are you agreeing with my point about low level hardware usage or do you just not understand the convolutions that must occur to abstract it away and make your code look superficially clean to attempt safety you could still have with the same method in C? Surely you're not claiming that in unsafe code Rust is somehow safer than C, because that would be idiotic. And you're blaming the pilots and/or the training they received for the software being faulty? Sure the pilots could've handled it mistake free and no one would have died, but if the software had been written correctly then the pilots would not have factored into it. As to finding good programmers, I know of precious few. Sure, there are bugs in the Linux kernel, but they're found and fixed. How many bugs still haven't been found in Windows because it's closed source and can't be inspected by users. How many of those bugs are actively being exploited by malicious actors because they can only be discovered by Microsoft who doesn't even care anymore. These are rhetorical questions as no one can know except for Microsoft and the people using their bugs. Hopefully you're not going to claim they don't exist because you can't see them.
    1
  16. 1
  17.  @d3line  You're not making a whole lot of sense here. You don't support closed source, fine, I don't either, but to act as though no one else will, that's just stupid. If you're using a library you wrote yourself or one that someone wrote who is into open source, then yeah you'll see the potential failure points, but there will be multitudes who will be using closed source binary blobs and literally can not see into it without reverse engineering it. If you were claiming that Rust can't do that, and we both know you're not, then you'd be really idiotic. Instead you're obfuscating by alluding to one thing and saying the opposite, and don't tell me that's not intentional. With regards to low level code, you seem to be under the delusion that Rust will prevent all errors while still stating that it won't, or maybe it's just your unwillingness to acknowledge that you agree with me on this point, but at the low level some of us write code at, Rust offers no advantages that C doesn't also offer over and above assembly. Further, there are far more compilers and target system code generators for C infrastructure than for Rust. From the sounds of things, you seem to be confused about a lot. At least I hope it's confusion because the alternative is gaslighting. If you're writing code at a high level, as in not system level programming, then use Rust if you want, even if it's still not the right choice for any job thus far. It won't make your code better than anyone else's code, and if you're a bad programmer you won't compare favorably to a good programmer no matter what language you're using.
    1
  18. 1
  19. 1