If C gets Illegal ill invent something different than C, maybe with better tools for articulating Objects and Problems very fast.. I dont have a Name yet but because its based on C im thinking of something with a plus.
@brandonphilander6619 ай бұрын
Just learn Odin.
@jongeduard9 ай бұрын
We still have ASM superpowers. And if ASM gets disallowed too, we'll just hide ourselves inside a Rust unsafe block and do very naughty things, like using the ASM macro. :P
@sashimisub85369 ай бұрын
Lmao
@jesseparrish19939 ай бұрын
Trump is going to come out for C. "Lots of hard working C miners here today. C is a great language. I've written a lot of C. Nobody writes more memory safe code than I do."
@chri-k9 ай бұрын
that'd be fun
@y00t00b3r9 ай бұрын
a lot of us 400-pound hackers are pretty good C programmers!
@Kane01239 ай бұрын
Lol
@jesseparrish19939 ай бұрын
@@Kane0123 "C jobs built America. C powers everything. We love C here in West Virginia, folks. Not Biden. Rusty Joe they call him. They do call him that don't they? Sleepy and rusty."
@pluto84049 ай бұрын
"I here to use rust you have to identify as lgbtq+zxtruq and give up your guns, they say. Thats not going to happen in C, I wont allow it. I liked it before it was cool, and now they dressed it all up in drag and call it c++, you here about this folks, its a shame, so sad"
@steamer2k3199 ай бұрын
So the NSA has finally collected enough zero-days that they're now allowing recommendations in favor of Rust?
@sixbutton99 ай бұрын
no they got a back door.
@monad_tcp9 ай бұрын
@@sixbutton9 Rust still uses the LLVM, so there's still a lot of undefined behavior and unsafe things for years to come.
@diadetediotedio69189 ай бұрын
@@monad_tcp There is no UB in normal safe Rust code (and if there is it would be fixed eventually).
@steamer2k3199 ай бұрын
@@lawrencemanning 😆
@Turalcar9 ай бұрын
@@diadetediotedio6918 define "normal"
@SpaceEndeavour9 ай бұрын
Garbage collectors are generally not used in aerospace because most garbage collectors temporarialy stop code execution for a short period of time and stopping code execution, even for a small amount of time, on a rocket that is accellerating very very fast is not a good idea
@godspeed21459 ай бұрын
Elaborate
@anon_y_mousse9 ай бұрын
@@tiranito2834 I'm starting to think that all the people not understanding why GC would be bad for spacecrafts just don't understand how GC works.
@asdion9 ай бұрын
@@anon_y_mousse That's the sad reality of the way GC works. Out of sight out of mind.
@Leonhart_939 ай бұрын
@tiranito2834 The GC make the computer stop? Pffft, that's ridiculous. Ignoring the obvious fact that we have multi-threaded processors for a reason, even a very average CPU is capable of running millions of instructions per second of something high level like JS without any downtime at all. The only reason why GC is bad is because the memory might not get released fast enough for some applications. Definitely not the problem of rockets, they wouldn't have limited memory.
@LaserFur9 ай бұрын
And having fixed memory allocation is also helpful when a bit here or there can be flipped. Good luck with rust not throwing an exception when a pointer gets corrupted from a bit flip. I've had people ask why I am picky as to how a "if" or a "for loop" is written and it's written that way so that it can't loop a lot longer if a number is out of range. I am also not going to say that everything should be in C or C++. These languages are safe when unit tested and analyzed. but most code does not get that kind of scrutiny.
@tempo53669 ай бұрын
Apparently, Joe forgot to free his memory.
@jklax9 ай бұрын
Lmao
@echoptic7759 ай бұрын
Rust made a memory leak inside his brain
@lionelt.91249 ай бұрын
If he doesn't will the rest follow?
@HanWae3639 ай бұрын
Wym, all he does is free memory. Bro tries to free Stack allocated memory sometimes. He's trying to update his hardware to rust
@Nofiamich9 ай бұрын
Hahaha 😆
@kickeddroid9 ай бұрын
"Skill issues" but programmers still won't follow basic input validation lmao
@samuele59319 ай бұрын
What are e we talking about? Critical software that has become infrastructure or critical software that is a product of a company?
@rahzaelfoe32889 ай бұрын
Basic input validation is so much easier to do in Rust, though. If I want to parse JSON (or any other of dozens of serialization formats) into a Rust struct I just import Serde and derive deserialize on my struct and it writes the parser for me. It then forces me to check to see if the parse succeeded or failed, and if it succeeded I now have a reference to a fully instantiated and syntactically correct instance of my struct without a null pointer in sight. If I want to add semantic analysis, I could then write a simple parser that parses MySerdeStruct into Result. Alternatively, if I wanted to do it all in one go I could instead just implement the Deserialize trait for my struct and bake in the semantic analysis. Boom, if I have an instance of MySemanticallyCorrectStruct anywhere in my program it's now guaranteed to have been instantiated, validated, and point to a valid location in memory.
@Kane01239 ай бұрын
Users will read the guide, so validation isn’t important.
@MrSofazocker9 ай бұрын
@@Kane0123 I agree. You should educate your users. After all. User Input should always be correct so you can trust it at all times in your code.
@OlegLecinsky8 ай бұрын
@@rahzaelfoe3288 You do realize that Serde is a library, not a language, don't you? And there are libraries to do the JSON parsing and validation in C++, you don't have to write all the code yourself.
@philip91868 ай бұрын
I'm a aerospace engineering student and write code for a satellite project. I can tell you that the institute of space systems at my uni is currently in the process of transitioning from C++ to Rust. So yes, there will soon be satellites with Rust code onboard.
@asdfghjkl-jk6mu5 күн бұрын
Which university do you go to if you don't mind me asking? I'm genuinely curious and would love to learn more
@catsupchutney9 ай бұрын
I'm not a C coder, just an old sysadmin. I think automated garbage collection is prone to periodic pauses when resources are freed up, so an RTOS would be subject to mysterious timing issues.
@stzi76919 ай бұрын
Well, there are Java VMs developed that are suitable for real time systems. Not very popular, expensive, and mostly used in military/ some automotive. There is one called "Jamaica VM" and one developed by "ptc". But Java is still extremely memory hungry. I would like to have my IoT device being able to run on battery a few years.... and without crashes.
@Templarfreak8 ай бұрын
GCs also require a good amount of speed and memory themselves to manage that space-grade hardware may not have. space-grade processors need to be much simpler and thus probably much slower in order to be less prone to errors when exposed to space. dynamically allocating and deallocating memory in space can also be a big problem when communication timing is an absolute critical essential in space for a variety of reasons and dynamically managing memory can lead to unpredictable timing.
@Galahad548 ай бұрын
There's ways to enter during garbage collection. I can think of three without looking at the code in question.
@yrtepgold9 ай бұрын
The White House is the trusted authority that I always look for guidance from when I am trying to decide what language to use in my next project.
@kippie809 ай бұрын
😂🎉
@daniel292638 ай бұрын
You don't have to listen to them, there are many others that have said this before them.
@reiniermoreno16537 ай бұрын
You don't have to hear them but they're just repeating what people who has nothing to do (as far as we know) with NSA have been saying from the very beginning: never trust in the programmer
@ferdynandkiepski50269 ай бұрын
The sentiment about not having GC for space use could be due to avoiding GC pauses.
@eldrago198 ай бұрын
I think also they might not run leading to running out of memory.
@TheOriginalBlueKirby8 ай бұрын
@@eldrago19Try that again
@virtuosisimo9 ай бұрын
The last time the USA goverment tried to influence on software development they created a programming language called ADA, then it became popular and took over the world (psic). That happened at the same time that C++ was brooding, before most of us where born
@anon_y_mousse9 ай бұрын
Thanks for reminding me that I'm old.
@vvert15069 ай бұрын
history repeats itself rust++
@Heater-v1.0.09 ай бұрын
That is not how I remember it. The US government did not create Ada. They held a kind of completion to find a language that would be suitable to use n all MoD and other government procurement. The idea was to get out of the situation where every vendor used a different language and they therefore had hundreds of languages in all kind of projects. Ada won that competition and subsequently it was mandated on all new government contracts. Far from being popular pretty much all programmers I worked with who had to use it did not like it. They complained it was too complex, too verbose, too slow. As a result the mandate was lifted only a few years later. With the result that everyone flocks dot the new shiny C++ as a supposed improvement over their beloved C. Ada still hangs on in safety critical systems though, like avionics. Ada never took over the world, it was rarely used outside military and safety critical applications. I get the idea that the government learned something and would not be so daft as to mandate a particular language, for example Rust. However this document certainly serves to push the software world to more reliable and robust languages that are memory safe.
@anon_y_mousse9 ай бұрын
@@Heater-v1.0.0 I think you missed the obvious sarcasm in that line of "took over the world", because we all know it did not.
@Heater-v1.0.09 ай бұрын
@@anon_y_mousse Yeah, likely I did. It's sometimes hard to spot sarcasm on the net, being the swamp of inaccuracy and misinformation that it is. Last I heard Ada had learned a few tricks about memory safety from Rust, It's all good stuff.
@marklonergan38989 ай бұрын
"up until recently, security was an afterthought" (That implies that it no longer is) * IoT has entered the conversation *
@15743_Hertz8 ай бұрын
Focusing on security makes it harder to get things working.
@supermortar28629 ай бұрын
Understood, will keep using C
@malusmundus-96059 ай бұрын
Yeah the government will not tell me what language to use
@oserodal27029 ай бұрын
Typical C programmer (no shade).
@climatechangedoesntbargain91409 ай бұрын
@@malusmundus-9605are you being sarcastic? Couldn't tell these days 🤷♂
@Twysthor9 ай бұрын
calling the cops
@undeadpresident9 ай бұрын
"C gives the programmer too much freedom. We need more security! I hereby declare C to be a terrorist organization!"
@RonnieRedd9 ай бұрын
The Whitehouse should write a similar statement regarding open source being safer than proprietary and closed source
@spht9ng9 ай бұрын
too based for the gov i'm afraid
@markojojic62239 ай бұрын
Why would they do that? Closed source is superior from certain points of view.
@RonnieRedd9 ай бұрын
@@markojojic6223 Facts are not points of view. Security through obscurity is a farce
@tirushone64469 ай бұрын
true, the only reason the us gov can confirm rust is memory safe is because the compiler is open sourse
@markojojic62239 ай бұрын
@one6446 Well I guess they could have started makeing an in-house alternative in 10 years or less.
@hungrymusicwolf9 ай бұрын
The problem they note is real and serious, but until they start punishing intelligence agencies for asking for backdoors I will not take them seriously. Put your money where your mouth is. Don't complain but refuse to pay the price (of not getting to infringe on people's privacy).
@undeadpresident9 ай бұрын
Indeed, I'm more concerned about being secure from government intrusion than the other way around.
@y00t00b3r9 ай бұрын
@@undeadpresident I really don't mind the NSA having all sorts of dirty tricks. Just so long as they don't share them with the FBI! Unfortunately, it's hard to tell if they do or not, besides the fact that the FBI is constantly whining about encryption.
@user-yw8sr3uj1w9 ай бұрын
I agree
@NullParadigm9 ай бұрын
@@undeadpresident Governments are the number 1 producer of malware, governments everywhere are just criminal organizations
@y00t00b3r9 ай бұрын
@@TapetBart ok, mastermind, how is your posting on the internet going to prevent the NSA from stockpiling zero days? They aren't really sensitive to public sentiment. Not that the FBI is, either. Are you saying it's not worse for civil liberties for the agency in charge of law enforcement in the USA to have these sorts of capabilities? Because, of course, it is far worse for the FBI to have access, rather than just the foreign intelligence agencies. (except for the CIA, they can't keep anything a secret) BTW, I believe the phrase you are looking for is "room temperature IQ", not "room level IQ"
@DegradationDomain_stuff7 ай бұрын
I can't wait to look at cyber security issues in an OS written exclusively in Rust
@ian562ADF52E7 ай бұрын
SOC analysts just got even worse at our jobs
@DynamicalisBlue8 ай бұрын
Modern C++ can definitely be memory safe. Maybe not to the extent of Rust but still very safe. The problem is that the C++ compiler still allows you write legacy unsafe code. It would be nice to see an option across all C++ compilers that prevents clearly unsafe C++ code from compiling.
@deletevil7 ай бұрын
I think that's what Byarne Stroutstroup said too. He was implying something like; in C++ we should be allowed to use memory unsafe features only by manually adding those unsface compiler flags. All the safest features should be enforced by default in the first place. If that does become a reality for future compiler versions, most of the vulnerabilities can be eliminated.
@kuhluhOG9 ай бұрын
I like Rust, but for existing projects I have a few problems with it: - integrating another build system (cargo) into an existing build system kinda sucks by itself, but it also creates another problem: porting your system module by module (instead of file by file) is really error prone and sucks even more - using Rust without cargo sucks even more than integrating cargo into an existing buildsystem (to a point where I am not sure that's even supported); but at least it makes porting an existing code base easier
@Zwiebelgian9 ай бұрын
I really like cargo and can‘t quite follow your problems since I‘ve never migrated a project to rust, but here‘s a trick: if you need to know what cargo is doing behind the scenes, you can use cargo build -v or even cargo build -vv. It will show you the commands run. Hope this helps
@airman1224699 ай бұрын
@@ZwiebelgianYeah… get back to us when you’ve tried to integrate it into a CMake or Ninja or Makefile project. I’ve done it. It sucks. It can be done, but it sucks.
@jagagemo81419 ай бұрын
Ewww make files.
@Zwiebelgian9 ай бұрын
@@airman122469 yeah those commads are extremely verbose, good luck nonetheless. If you really want it to change, try posting a bit more formally in one of rusts official channels
@marvin_hansen9 ай бұрын
Build with Bazel when the project is either large , polyglot, or both.
@TomSoraoka9 ай бұрын
I've been a programmer for 40 years, 10 of which was in C/C++, and that Whitehouse paper didn't make sense to me. It jumped from saying "We need to make more secure software" to "Therefore, memory safe programming languages is the solution". I can write a program that puts passwords into a plain text file. That's a security issue but has nothing to do with memory. I can write a program that infinitely allocates memory and crashes the program. That has to do with memory, but has nothing to do with security. Then the article mentions events like the Morris Worm. The Morris Worm used "finger" to find people logged onto the computer. Not sure how that has to do with memory. I agree that Rust is better at memory management, but I'm pretty sure I can write an insecure program in it, regardless of it being better at memory management.
@maxxroach80339 ай бұрын
This! And just because rust is "Memory Safe" Doesn't mean there aren't issues with it. Kinda like how Alpine Linux is "more secure" than other distros because there are fewer eyes on it.
@C4CH3S9 ай бұрын
You are missing the point, cherry picking these examples and cases. A lot of hardware and software gets picked apart due to memory issues and overflow. The fusee gelee exploit that made every Nintendo switch vulnerable was caused due to a memory overflow bug, for example
@PleasePlayGoodGames9 ай бұрын
@user-lp8eo5cd1h You are entirely missing the point and are bike-shedding. Expecting programmers to have a borrow checker in their head is inherently flawed.
@OGNord9 ай бұрын
@@C4CH3Sisn’t that just down to poorly managed code? With some finessing with rust you could most likely fuck with it in a similar way. It’s just not been exploited yet thanks to low use.
@purewaterruler9 ай бұрын
@@OGNordusing rust makes it nearly impossible to write a huge class of bugs. You can argue "poorly managed code," but if there's an option that makes such bugs impossible without specifically choosing to use an escape hatch, then you're simply going to have less bugs. I'd rather have a complier enforce bugs to not exist rather than rely on the human to do that check, humans who miss stuff, who make mistakes. Yes you can write insecure code in rust. But it's much harder or impossible to write a very important class of bugs in rust. And even if it is possible, you have to go well out of your way to do so.
@The1Jebrim8 ай бұрын
Hard real-time safety/mission-critical systems not only do not use a GC, but they don’t use dynamic memory allocation either. Doing this eliminates a wide number of memory safety bugs, whilst also more easily achieving deterministic timing. Static memory allocation is a paradigm that really ought to be used more often tbh.
@seasong76559 ай бұрын
Gotta love politician driven development 😥😥
@volkwell-wk3eq9 ай бұрын
VOP - virtue_signaling oriented programming. It is the future. RUSTRANNY ZISTAS. GO GO GO!
@undeadpresident9 ай бұрын
Watch them try to make a list of all C programmers and leverage their ISP's to cut their internet service and deny them plane flights.
@Twysthor9 ай бұрын
New paradigm Yay
@homeape.9 ай бұрын
the eu supports a ton of FOSS, like... idk, gnome. so yeah. often enough that's actually something i love
@роскомнадзор-д8я9 ай бұрын
always knew there's something not right with rust
@michaelgreenberg63449 ай бұрын
No jokes about Biden and memory integrity!
@godspeed21459 ай бұрын
Assuming he has memory to begin with
@MH_VOID9 ай бұрын
@@godspeed2145 it's just leaked over the past 80 years
@gosnooky9 ай бұрын
His memory is FINE, it's just his output stream buffering.
@jackieAZ7 ай бұрын
His memory is great, his brain just runs on Python
@user-fr3hy9uh6y9 ай бұрын
I'm guessing that you are not old enough to remember ADA. Fourty years ago, the DoD required all new software to be written in ADA for all of the same reasons. Will it be different this time?
@midnightfuture9 ай бұрын
Yes. Ada came from Defense, including its design; Rust came from the developer community and is simply being _recommended_/adopted by government, among others.
@chadm23439 ай бұрын
@@midnightfutureI don't really see the difference.
@rusi62199 ай бұрын
@@midnightfuture implying rust isn't heavily political and compromised from the start lol
@sleepib9 ай бұрын
I think the issue with garbage collection is that it can unpredictably change how long it takes code to execute, which is a problem for a real time system.
@tears_falling9 ай бұрын
the government recommending Rust is way too suspicious maybe i should use C instead
@robotron12367 ай бұрын
This comment is highly underrated.
@YandiBanyu9 ай бұрын
You know rust made me re-think the GPL license on static link. Since rust libraries are always compiled (statically linked), I wonder if we will ever see the issue in court and set precedence.
@YandiBanyu9 ай бұрын
@@ameknite I am not talking about rust the language, but any program written in rust that MAY be GPL licensed.
@heavymetalmixer919 ай бұрын
That's a huge license issue for certain pieces of software, not everyone wants to statically link everything.
@Psychx_9 ай бұрын
@@heavymetalmixer91 If you want dynamic linking with Rust, you're out of luck. That isn't a supported feature yet.
@sylv5129 ай бұрын
@@Psychx_ that's because rust has no ABI like most mature languages do.
@YandiBanyu9 ай бұрын
@@heavymetalmixer91 yes, but also the stance of FSF on static linking is that you also make a derivative work from the GPL code. Now this hasn't gone to court yet so there is no precedence. But rust is making me re-think all of that again.
@doce36099 ай бұрын
C is illegal now
@guyblack97299 ай бұрын
the c in c stands for crime
@mattjax169 ай бұрын
@@guyblack9729what about c++
@bruhzzer9 ай бұрын
@@guyblack9729 what do the rest of the other letters stand for?
@NinjaRunningWild9 ай бұрын
@@bruhzzerPropaganda.
@mechano65059 ай бұрын
If only it wasn't one of the most compatible languages out there with extensive tooling and libraries. I don't think it's going anywhere anytime soon.
@cornheadahh9 ай бұрын
The government supporting it makes me a bit suspicious
@virtuosisimo9 ай бұрын
They also created the ADA programming language, that why it became so popular and took over the world
@shallex57449 ай бұрын
@@virtuosisimo never heard of it
@soniablanche56729 ай бұрын
CIA probably added a backdoor to the rust compiler
@virtuosisimo9 ай бұрын
@@shallex5744 that's my point xD
@theproprod21187 ай бұрын
U r a tinhat
@dxfate9 ай бұрын
white house using Rust before GTA 6 is crazy 💀
@dualfluidreactor9 ай бұрын
heyeyey slow down your horses - nobody said anything about using! The white house is talking - and that's the only they ever do
@pluto84049 ай бұрын
once the nsa endorses rust, is the day ill stop using it.
@mizu_74229 ай бұрын
@@pluto8404 why
@virtuosisimo9 ай бұрын
I haven't done video games, but do lots of GUI and OOP is a must, type hierarchy just looks natural
@memes_gbc6748 ай бұрын
@@mizu_7422 they planted 5g bugs into my esp32
@Iceman2599 ай бұрын
The “skill issue” argument is made by people living in a bubble. I can appreciate the sentiment, but the reality is that the balance of supply and demand for programmers and margins necessary for businesses to operate simply will not always allow for every programmer to be a very good™ one.
@NinjaRunningWild9 ай бұрын
This is a LCD defense argument. Which sounds remarkably like projection.
@Wanderlust0739 ай бұрын
The government operates with timelines and budgets that enterprises do not. They could absolutely establish a licensing criteria for federal dev work and create associated acceptance testing paradigms that far exceed those sustainable in private industry in the interest of national security. They literally plan to spend $20 billion to replace chinese made CRANES in our ports due to security concerns…
@semitangent9 ай бұрын
@@NinjaRunningWildLCD defense? As in the screen type? Could you elaborate, I find OP's argument quite compelling.
@NinjaRunningWild9 ай бұрын
@@semitangentDo you understand mathematics?
@Wanderlust0739 ай бұрын
@@semitangent lowest common denominator. In this case making an argument to defend the effort of the least skilled who posses a basic level of aptitude which is the lowest common denominator among all developers. Rather than expecting better from everyone.
@emptydata-xf7ps9 ай бұрын
It doesn’t matter how safe your language is when 80% or more of data breaches are from social engineering and phishing. On the other hand, any language is safe as long as you make no assumptions about any input or write data and you have assertions in your code to check that data before any work is done with it.
@mma930679 ай бұрын
It still gives us a peace of mind that we haven’t created an exploit unintentionally. Reducing the attack surface helps us target the next class of exploits. Besides it also helps us avoid unintentional memory bugs in regular use.
@emptydata-xf7ps9 ай бұрын
@@mma93067 rust still has CVEs. It’s not full proof and relying on the claim of full proof is the same as having assumptions about your code.
@emptydata-xf7ps9 ай бұрын
@@mma93067 Rust still has CVEs. It’s not a cure all, and believing it to be has the same effects as making assumptions about your inputs.
@michawhite76139 ай бұрын
Sure, social engineering is the biggest problem these days, but to say that memory safety doesn't matter is incredibly hyperbolic. Even if it doesn't cover all or most vulnerabilities, reducing the attack surface by 5% is nothing to scoff at.
@sockpastarock70829 ай бұрын
Actually, it does still matter how safe the language is because attacks still exist which target those insecurities of the language. Also, the idea that every language is safe as long as you do everything absolutely perfectly with absolutely zero assumptions is an overly naive solution. We already know that nobody is going to write perfectly secure code all the time. Crossing your arms and saying "well they people should code perfectly" isn't a solution.
@psmittyispy9 ай бұрын
You say it isn't a skill issue, and you also jumped on the 2019 metric of 70% of bugs are "memory bugs", but neither get at the root of exploitation. 1. What is the most common vulnerability type exploited by hackers? Is it memory bugs? Or is it misconfigurations and user error (skill issues). 2. Do you agree the barrier to entry in software development has been reduced in the last 50 years allow people with maybe less skill to develop and release software (skill issues)?
@christopheriman49219 ай бұрын
For me it isn't about whether or not it is or isn't a skill issue because if you do anything wrong ever it could be considered a skill issue. I think that having a language that nearly completely prevents certain kinds of skill issues releasing in working production code is a good thing.
@ewilliams03059 ай бұрын
My dad worked for NASA from 70s-late 90s working on Space storage systems. He had to create his own language to do the things (and presumably to adhere to those guidelines).
@lepidoptera93379 ай бұрын
Your Dad was smart and knew that the only way to be "safe" in certain ways was to give up on Turing completeness. One can afford that for science and aerospace systems, but it's a rather hard way to make a living as an app programmer.
@y00t00b3r9 ай бұрын
Oh, shit, is this what finally derails the Rust hype-train? "We're from the government, we're here to help!"
@undeadpresident9 ай бұрын
"I will defeat Donald Reagan this election!"
@airman1224699 ай бұрын
Yep.
@pluto84049 ай бұрын
rust foundation wants to take your 🔫🔫 per the TOS. Now we know who they really are.
@manuellopez12349 ай бұрын
I think the Garbage Collection point is that, gb is non-deterministic
@pixelshocker77758 ай бұрын
I've watched several of your videos now. The topic of Rust was my gateway into your channel, but so far I've found everything I've watched to be absolutely fascinating. I have subscribed and I am actively looking forward to your future content.
@thomasatkins9 ай бұрын
If i recall correctly heathcare devices typically also have constraints on using garbage collected language. I think in both cases it is the issue of lossing control over when/the interval between code execution as with garbage collected languages you dont know when it will be run or how much garbage needs to be processed
@kenneth_romero9 ай бұрын
be pretty cool if you did a retrospective of malware/exploits in the history of computer science. be able to compare the knowledge back then to now, and even the limitations of why such exploits were made/discovered
@Joel-zi6pt9 ай бұрын
Wdym It can't be a skill issue if it's been going on for 50 years? It's not like the same 10 people have been building all the software for 50 years.
@Fanaro8 ай бұрын
I wonder what you would say to J Blow's arguments that 99% of safety problems in C are super trivial to solve. (He argues that the C compiler comes with many memory safety options you can enable out of the box for example.)
@wesleychaffin40299 ай бұрын
The most aggravating part of the “skill issue” argument is that even if _you_ can write good safe c code it just takes 1 human miscommunication across an api boundary written by different people to create a CVE
@GEfromNJ9 ай бұрын
Another problem with the "skill issue" argument is that Apple, Microsoft, Linux, Google, etc have essentially unlimited resources and decades of experience and yet they are still experiencing these issues.
@MikeC16 ай бұрын
So... Skill issues...
@Vidjnjsdnjk-en6tz2 ай бұрын
There's a skill issue in communication skills.
@parad0xheart2 ай бұрын
I view it the same as safety equipment for heavy machinery. No matter how skilled and experienced you are, you can still get tired on a Friday night and be rushing to meet a deadline. Impairment and time pressure issues can overcome skill and produce bad outcomes in all humans across all professions. It simply makes sense to fail safe instead of deadly.
@nnaaaaaa9 ай бұрын
C and C++ are memory safe, but your code may not be. rust's stdlib worries me more than strcpy does because very few stop to consider maybe the code isn't safe since even though they can't see any "unsafe blocks".
@delibellus8 ай бұрын
In one sense, C is neither memory safe nor unsafe, because that's in the hands of the programmer. On the other hand, if the security problem is located in the possibility of making unsafe programs, then C itself can be considered unsafe.
@Michael_L_9 ай бұрын
They forget about Ada, which is memory-safe when used in certain profiles. The Boeing 777 still flies on Ada.
@teamkilled12272 ай бұрын
you know i suddenly don’t trust the ada programming language anymore
@Uerdue9 ай бұрын
It may very well be a skill issue, but that doesn't make the problem go away!
@steveoc649 ай бұрын
Every switch, every router, every bit of Cisco equipment must now be disconnected
@virtuosisimo9 ай бұрын
They preffer Cisco spying them than Huawei
@Vaalin9 ай бұрын
Adopting Rust as a mainstream language won’t change the main factor behind code vulnerabilities: that companies do not care about security. Who cares if a class of memory related vulnerabilities is out of the equation if there’s IoT devices programmed with hard coded insecure root credentials and so on?
@GEfromNJ9 ай бұрын
Yeah but @LowLevelLearning discusses this in the video: 70% of major security issues are related to memory management. Even though that leaves 30%, eliminating 70% itself (after 35-50 years) would itself be a monumental achievement.
@Vaalin9 ай бұрын
@@GEfromNJ I don’t have data on the matter, but I’d easily bet on that figure not including social engineering as a vulnerability. So, even if we take at face value Rust’s claim to memory safety, it still wouldn’t lead to a particularly more secure digital environment. It could indeed solve a major class of vulnerabilities, but it’s also the class of vulnerabilities that only highly sophisticated attackers use, so it probably is the less frequent in volumes of attacks. A vast network of Internet crawlers brute forcing common default credentials for unsecured IoT devices is, to me, a more worrisome class of attacks, because of its scale and low floor to access it. And it’s a kind of vulnerability that can only be removed by making cybersecurity due diligence standards mandatory.
@ultimatedude56868 ай бұрын
@@Vaalin In response to the claim that Rust prevents a lot of vulnerabilities, saying something like "yeah, but it doesn't prevent all vulnerabilities" is not really a counter argument. Memory safety issues undeniably make up a huge chunk of software vulnerabilities and using Rust helps to prevent those from occurring.
@jackieAZ7 ай бұрын
It’s almost like profit seeking behavior is inherent to capitalism
@Pdrum29 ай бұрын
I never listen to anything the government says
@theproprod21187 ай бұрын
U have a hat made out of tin
@ragectl9 ай бұрын
Memory safe hardware tends to be devices that enforce ECC checks. Linus Torvalds called out Intel for being a major reason ECC memory isn't common
@deletevil7 ай бұрын
That only saves us from data corruption from high energy cosmic radiations.
@siamesestormtrooper9 ай бұрын
12:02 is the first time Rust is mentioned in case anybody wanted to know
@patrickoberholzer42785 ай бұрын
Regarding GC, I think the issue is that GC is inherently unpredictable and almost always requires completely pausing execution, making its use in space operations that are sensitive to fractions of a second like reentry, where a degree can be the difference, infeasible.
@MattDog_2229 ай бұрын
I remember reading somewhere from Oracle I think that Java should not be used in space
@anon_y_mousse9 ай бұрын
In space you need realtime operations. You can't have that with a GC.
@esra_erimez9 ай бұрын
This is very interesting to me since the firm I work for takes a security first approach to everything we do. From the air gapped networks to the application code.
@Walter_9 ай бұрын
Is it smart to post this information to the internet?
@esra_erimez9 ай бұрын
@@Walter_ If we do our jobs right
@romangeneral239 ай бұрын
Rust still sucks. And the U.S. government calling it out to use it just proves that it does indeed suck. It's not C and C++ fault that the developers of such cyber security systems didn't know how to use the language and just slapped together whatever it took to get the paycheck...
@rusi62199 ай бұрын
Exactly -- lousy coders do not become good by being given safer toys. If anything, this will result in even more bad code due to the perceived "safety".
@romangeneral239 ай бұрын
@@rusi6219 Thank you. Perfectly Said!!!
@egonkirchof9 ай бұрын
Code should be checked and tested so that it has no unintended behavior.
@tirushone64469 ай бұрын
The problem is saying "it's a skill issue." is even if you are a super skilled programer, you will eventually make a mistake, the borrow checker on the other hand, will not.
@igoralmeida91369 ай бұрын
"borrow checker on the other hand, will not" sounds like a religious dogma
@chinoto19 ай бұрын
@@igoralmeida9136I guess there's a slim possibility that the borrow checker would allow code that it shouldn't, but so far I've only ever heard of it being overly restrictive, which I'll gladly take over manual verification.
@AlbatrossCommando9 ай бұрын
@@chinoto1lookup cve-rs.
@chinoto19 ай бұрын
@@TapetBart My other comment disappeared. Shortly after my first comment, I looked into cve-rs, which escapes the borrow checker. Funny how I found it so quickly after my erroneous comment.
@tirushone64469 ай бұрын
@@igoralmeida9136 I mean it's an algorythem, and it has rules that prevent data races and use after free's, so therefor, it does make make mistakes, because it isn't a human, idk what universe your in where this is religous dogma.
@mohameddaoud48858 ай бұрын
The "garbage collector" at any time, unexpectedly, stops the program in order to perform it's task, which slows the program down. That's why its "not predictable" for space systems.
@Terrados13379 ай бұрын
"Use memory safe languages" is code for "have somebody else write your compiler so you can blame them when your calculator app leaks nuclear codes".
@ultimatedude56868 ай бұрын
Is the alternative to build your own compiler from scratch? I don't really understand this argument.
@Terrados13378 ай бұрын
@@ultimatedude5686 you fell into internet falacy 17: assuming something is an argument. And falacy 18: assuming it was a personal attack against you. And falacy 19: being offended by it. I was merely poking fun at the idea that delegating responsibility automatically yields better results.
@ultimatedude56868 ай бұрын
@@Terrados1337 I was using the word argument very loosely. I didn't find what you said offensive, I just disagreed with the point you're making. Delegating responsibility to much larger and more well-maintained codebases (like the compiler and the standard library) is generally a good idea.
7 ай бұрын
You can write safe c using a lot of static analysis and testing. However, there are not many developers with the ability and know-how. I know only a few developers who write safe code with c, and companies are unable to find additional capable people with good coding practices. When you draw the line additional effort usually does not make financial sense, which is why rust is on my to-do list, to write optimised safe code in one step without Misra checks analysis and weeks of testing.
@no_name47969 ай бұрын
Well Rust compilation times, are on par with the US burocracy, no wonder they love it ;-)
@georgerogers11669 ай бұрын
C++ is even worse in that regard.
@no_name47969 ай бұрын
@@georgerogers1166 in c++ you don't need to compile every single dependecy though although, linker errors are one of the easiest way to go crazy lol
@0x90h9 ай бұрын
@@georgerogers1166 Compilation speed is not about language, it is about compiler.
@georgerogers11669 ай бұрын
@@0x90h c++ is inherently slow compiling when using templates. Multiple whole program compilation.
@charlieking76009 ай бұрын
@@0x90hit's still about the language, the C/C++ header system slows down process noticeably. That's why C++20 has modules support - to speed up compilation.
@franciscoayrolo56129 ай бұрын
You skipped over a very important part! Formal methods. You mentioned that even though memory issues make up 70% or something of the known vulnerabilities, there are other classes of vulnerabilities, like logic-based errors. Formal methods are there to mitigate that type of error, by ensuring that the code you're writing actually does what you thought it does in the first place
@sumpwa9 ай бұрын
All dozen Rust developers are having a blast right now.
@daniel292638 ай бұрын
Damn, those 12 programmers downloaded crates 60 billion times, while creating 141 000 crates. Very impressive.
@landonviator43007 ай бұрын
13, I started learning it.
@jongeduard9 ай бұрын
The point about a tracing garbage collector is that it comes with overhead, which actually sits in the way of real time performance, as described in the sentence before. A GC has to dynamically track all used pointers to objects in memory continuously. In order to achieve this it must perform certain checks frequently, which cause very short but still real interruptions in code execution. For software related to very precise scientific technology and measurements, this might be an actual issue. So I totally understand this point. So Go and C# cannot be used for example.
@haploguy9 ай бұрын
A clear message that EVERYBODY should steer clear of it.
@tullochgorum63233 ай бұрын
The title is clickbait - from what we saw the paper only mentioned Rust as safer than C or C++, not as THE safest language. That title surely goes to Ada, especially in it's Spark version which adds formal verification. That's why it's been used for decades in space, avionics, medical systems, weapons systems and other safety-critical fields. It may not have the street cred of Rust, but it's a very interesting and mature language that deserves to be more widely known. Now there's a good open source compiler and language server it's much more accessible than before, and the new 2022 spec adds many modern features.
@MoradorDeCalcada9 ай бұрын
Ahh, just like that time when the NSA recommended Dual EC DRBG... Oh wai-
@TomGDrAccessibility5 ай бұрын
Cannot believe the politicized comments. This is a research paper; it was not written by a politician. It was commissioned by the government and written by industry experts. There is a difference! Let’s look at the merits of the paper. Has anyone claiming the government is advocating Rust over C, actually done any programming in Rust, or are the reactions just politically motivated?
@defnlife16839 ай бұрын
I'm glad. Just wish the syntax was simpler, like Go or Pascal. Just wish they adopted the C philosophy of adding features every 30 years instead of every 3 months lmao. C got presdefined bool types the other day... in C 23. We'll be using that in like 2084. (granted it had bools before, but not as part of the spec)
@sillymesilly5 ай бұрын
Useless addidtion. bool can be 0 and 1
@Wod-qi8ql22 күн бұрын
@@defnlife1683 c had bools since c99
@Wod-qi8ql22 күн бұрын
@@sillymesilly, bool is useful in _Generic, it also allows you to simply cast the value to zero or one and has different float casting logic
@dylansmith70958 ай бұрын
Finally an article that doesn’t refer to C/C++ and actually acknowledges them as separate languages!😂
@eliotcamel77999 ай бұрын
Rust should be adopted for security measures AND it's a "skill issue". We need more useful hiring standards. Who gets the mission-critical programmer job? Is it Techy Trevor, the autodidact who contributes to open source in his spare time, who knows how to analyze and maintain complex codebases? No, it's Cody Brody, the buzzword-spewing asshole who knows all the leetcode problems, with connections and a CS degree rife with Python and gen-eds. It's not even Brody's fault, he's just following society's incentives. I'm in my last year of CS undergrad and it's turning me into Brody. I've aced job interviews by acting like Brody. Hire competent people like Techy Trevor, damnit!
@eliotcamel77999 ай бұрын
@@TapetBartHey, one day you might be in charge of hiring. Do the right thing and spread the truth.
@sgourn4 ай бұрын
One problem with the skill issue argument, is that even if you train your programmers, there will always be outlier programmers or regular programmers who happen to make mistakes, because we are humans. It's not reliable to rely on programmers, but code itself is pretty reliable(well mostly, that stray bit of cosmic radiation is pretty unlikely)
@malusmundus-96059 ай бұрын
Changing to Rust will not stop cyber-crime. I want people to know that. It can help increase security generally, but it cannot change the dynamic we currently have. Black-hats will always have the initiative. We should, at the very least, recognize that programming is an art, and preserve the use of "unsafe" languages for use in environments where safety isn't a concern (such as offline, single-player video games). If the government wants to use Rust, let them have it. If they demand it for browsers and internet-related code, then so be it. They should not interfere with the freedom to use and create languages.
@YandiBanyu9 ай бұрын
I am more concerned that rust is also being used to create malware/exploit
@malusmundus-96059 ай бұрын
@@YandiBanyu oh it is, and will continue to be (there are already "hacking" courses that use Rust on youtube). You can't touch hardware without security concerns. Unless the government wants to rebuild everything from the ground up, it will continue to be that way.
@jongeduard9 ай бұрын
@@YandiBanyu Which is even more reason to use Rust for the possibly targeted good software as well, as a counter measure.
@YandiBanyu9 ай бұрын
@@jongeduard I am not saying do not write software using rust. Both can exist at the same time. I am merely pointing out that malware too can be created using rust.
@jongeduard9 ай бұрын
@@YandiBanyu Oh no problem, I did not think or intent that either. I just emphasized the importance. I actually liked your comment instead.
@Datalata3 ай бұрын
I used this argument (and I think you talked about memory safe language before the White House published the report) to a class of young summer vacation students-hoping to get it into their heads “on the ground floor”- and it apparently went down well. It seems to make sense to young people without having to justify it much further…fingers crossed!
@Wanderlust0739 ай бұрын
what relevance does a 50 year timeline have to the validity of a “skill issue “argument? The US education system has been turning out below average students for decades. Recognizing that a problem exists but failing to educate in a manner that addresses it, or develop and enforce standards that hold people accountable for avoiding it, guarantees that any skill issue will persist for decades to come. Problems don’t just magically fix themselves, and giving a carpenter a different hammer doesn’t make him a better carpenter.
@Wanderlust0739 ай бұрын
@@matta5749 what relevance does average level of student have to the quality of the work product which they have been educated to produce? Seriously?
@ElusiveEel10 күн бұрын
Yeah I was about to comment the same myself. If anything programmers have gotten worse in 50 years, not better as is assumed for some reason.
@MoonSt0n3_9 ай бұрын
I agree about safety not being a skill issue. I'm all in for using Rust instead of C++. But to what level do you think that we have to constrain programmers? If programmers don't follow secure code guidelines and standards, there can always be security issues. Memory safety is not the only issue. Of course it's a big one. But what about the other issues?
@arthurgeier25455 ай бұрын
This is what we call "preaching to the choir."
@BurninVinyl9 ай бұрын
So the list includes: Java, Go, Python, C#, Swift. - KlausGean
@HululusLabs9 ай бұрын
Recommending to goim thru legacy code and rewrite it in anything is a good way to catch old bugs. Might as well RIIR while you're up in there
@adrianmizen50706 ай бұрын
and an even better way to introduce new bugs
@ancusEIRL9 ай бұрын
I totally agree even though something tells me rust is not the way to go highly likely a grea step onto it but not it.
@XuryFromCanada9 ай бұрын
Rust will be a revolution. Like Ada was!
@Phantom-lr6cs7 ай бұрын
fortran is still here and wil lbe . c++ compiler enginers will fix that allows you to do bugs so your rust will not be revolution . cuz it forces you to do in the way it wants so idk if anyone in his mind will use rust . there's many memory safe langauges and far easier than rust
@jklax9 ай бұрын
The only rust Joe knows is in his joints and brain cells.
@undeadpresident9 ай бұрын
and maybe his bicycle too
@MrSofazocker9 ай бұрын
I expected better of the C compiler honestly. if i is an unknown value and I have an array with unknown length. that does not compute or should not. It should raise a type error. The same as if I is in en expected range but the length of the array is unknown. -> type error. only if i < the length of the array it should ever compute.
@lepidoptera93379 ай бұрын
The much better way is to make arrays of the length of powers of two and to mask the index with a binary operation. If you want a significantly higher level of security still, then you use the MMU. None of this does anything for you if the attacker has hardware and root access. These are all just obfuscation techniques. If you need truly secure systems, then they need to be isolated physically. A strong steel door is the best way to go. ;-)
@ekmekdelikanli14089 ай бұрын
If NSA and White House says you should use something, it is better not to use it.
@danm5249 ай бұрын
If the NSA and WH said to breathe air are you gonna hold your breath
@ekmekdelikanli14089 ай бұрын
@@danm524 yes.
@danm5249 ай бұрын
Shook. Need the NSA and WH to approve junk food, praise social media, and hate on voting then.
@yandere88888 ай бұрын
@@ekmekdelikanli1408 r u still holding ur breath
@undeadpresident9 ай бұрын
Maybe the government shouldn't be aided in their security given the kinds of things it's already known that they are up to...
@manhattansnob14839 ай бұрын
I'd love to see a deep dive on memory protection features built into compilers and/or operating systems - where they fall short, the edge cases, and maybe reasons they aren't consistently used. These aren't really mentioned when talking about the latest safer language
@effsixteenblock508 ай бұрын
The biggest issue with any processor in space is that Two's Complement completely sh1ts the bed when passing through the Van Allen radiation belts.
@SydneyApplebaum9 ай бұрын
What a nightmare
@mybachhertzbaud30742 ай бұрын
I found your misspeak of the word "significantly" to "sufficiently" quite interesting.🤔 9:37
@blu12gaming449 ай бұрын
There is no chance that 'skill' will prevent security vulnerabilities when software becomes incredibly advanced to the point that no one person can even track what the hell is going on underneath. The people who say it is a skill issue are the ones who end up writing the errors because they refuse to believe they could possibly do any wrong after working in the same language for many years. The (unsurprising) truth is: we always make mistakes and will continue to do so. The best we can do is to prevent ourselves from committing them in the first place by having systems in place that automatically detect and prevent them from going into production. Rust isn't perfect but it's definitely on the right track.
@MoonSt0n3_9 ай бұрын
These are probably the same guys who never use tuples on Python where applicable because they don't understand the problem with side effects.
@anon_y_mousse9 ай бұрын
Static analyzers exist for both C and C++, have for decades, and free and open source programs for doing this work exist. Not using one for a critical application is a skill issue, especially since a person in that position knows that it's critical. These programs are far better at finding bugs in your code than Rust's compiler is.
@edgeeffect9 ай бұрын
Erm.... if The White House says anything is good... my first thought is that it must be awful.
@jesselawrence3369 ай бұрын
Zig has placed itself nicely to replace legacy C and C++ code. It'll be interesting to C how it competes with Rust in this space
@samuele59319 ай бұрын
Never heard of it in real life: so competition currently non-existant.
@jesselawrence3369 ай бұрын
@@samuele5931 tuple is one example. Zig ships with a compiler that can compile C and C++, its memory safe and simple so I think its a pretty strong competitor because of the way it sets it self up for rewriting legacy C and C++ codebases. It would be simpler to rewrite in Zig than Rust
@dranon0o9 ай бұрын
@@samuele5931 Bad take Uber use it My company use it and we're responsible for a very popular software to manage datacenters and servers
@cytosolic53039 ай бұрын
I agree. If Zig continues to perform and stabilize, I think it will start replacing C, and maybe some low-level C++ areas like games/graphics. Rust will need to compete with Golang to pick the corpse of C++
@cusematt239 ай бұрын
Didnt think Biden knew this much about computers damn
@Megararo659 ай бұрын
The white house: Rust is safe! Cve-rs: ...Do you even know what you are talking about?
@AmirHosseinHonardust9 ай бұрын
There is one crate that demonstrates that it is possible, though not common to have memory vulnerability in safe rust, if you try really hard. On the other hand, best C programmers, even when trying really hard, release software with these vulnerabilities on daily basis. So I think, Rust is safe for now.
@tylerfusco74959 ай бұрын
i mean, your average rust programmer is not exactly using HRTBs in their code lmfao
@undeadpresident9 ай бұрын
"the white house said it, it must be true! Everything else is disinformation! Censor it!"
@diadetediotedio69189 ай бұрын
Rust is generally safe, what CVE-rs did is very, very, very specific AND what they did it is catched by MIRI (which you should be using if you are trying to make your software the safest as possible with the language). It is also a problem that can be fixed, so it eventually will. Of course I'm not saying it is not bad, it is pretty bad, but still, edge cases does not removes the benefits on security of the language.
@godspeed21459 ай бұрын
@@diadetediotedio6918 "eventually", sure
@wavewalnut98698 ай бұрын
We need to know secure way to do something, not only with language to write code but also algorithm how to resolve each problem.
@roberthoople9 ай бұрын
Considering what the USA deems "good" these days, this isn't the glowing endorsement people think it is.
@stzi76919 ай бұрын
Can you be 100% sure? You know the German saying: "Even a blind chicken does occasionally find a corn."
@roberthoople9 ай бұрын
@@stzi7691 Hahaha... True. However, I don't think this is the case with Rust. Largely because I don't think Rust is anywhere near as "safe" as people think it is. I mean, there are videos floating around now, which show people breaking the borrow checker and causing memory leaks, which most people seem to think cannot happen.
@yandere88888 ай бұрын
@@roberthoople wow rust has bugs? well back to writing assembly, be sure to push ur registers to the stack before overwriting them! how is this a good point in ur mind? rust provides a lot of checks that avoid most vulnerabilities in C programs, it not being 100% effective isnt an own to it being safer
@roberthoople8 ай бұрын
@@yandere8888 LOL. My actual problem with Rust are it's childish fanbois, and the diaper stink they bring to every programming conversation on the internet, not so much the language's on-by-default safety features themselves.
@yandere88888 ай бұрын
@@roberthoople ah yes the adult thing of not using a language cuz u dont like the other ppl who use it what?
@Lea_Black9 ай бұрын
So we'll just throw away all the major kernels, web servers, crypto libraries, text editors and so on written in C to rebuild them from scratch in languages like Rust just to abuse the "unsafe" keyword(s) all the time when working on low level stuff
@diadetediotedio69189 ай бұрын
I don't think this is what will happen, because: (a) it is too much costly and (b) it would take decades or more to reach their maturity again So, I don't think your reasoning follows at all
@Lea_Black9 ай бұрын
@@diadetediotedio6918Helps to be able to spot sarcasm, lol
@jonathanmoore56199 ай бұрын
Probably the worst recommendation you could possibly get.
@ryanpmcguire9 ай бұрын
for testing rust in space, all you would have to do is send a compiled binary to a system thats already up there. im sure there are lots of satellites that are legacy and parked in orbit.
@Kani81229 ай бұрын
"The US government promotes Rust." Wtf I hate Rust now.
@OneMilian9 ай бұрын
TLDR: I like both very much but C is more established for System Architecture and Assembly, but I'll still observe Rust. Honestly after Years of Coding in C almost every free Minute of my Days(I like Rust too, but for my Projekts I need alot of Low Level Access, Rust has a nix crate but it is not a developed as I would like) There are ways, Routines and checks to lower Security Risks. Its not like we all build backdoors and risks on purpose and also there will always be ways to bypass security. I like Rust very much, yea its baseline is definetly safer and the strings which are definetly the magnum opus of C buffer overflows have clever ways and types to implement different ones for different purposes in rust. Ill definetly observe Rusts Journey and I hope it gets even better, but right now, writing C with some Assembly subroutines like calculating and comparing different states and then linking them all easily with a ld script have so much power and possibilities to offer.
@chickenonaraft5088 ай бұрын
Rust is build using LLVM, which is written in C++. While I agree with the sentiment of this video, C should never be seen as a bad language.
@weorkay8 ай бұрын
I wonder how does a government advise not to use certain programming languages and to use some. Am I wrong if I attribute any motive? Ok, tell me which systems have crumbled that were written in C or C++?