Its so easy to trash another language when all you essentially looking for is doing the same thing only faster. Thats not the case with Rust. Rust is not about making your life easier. Its about performance, productivity, security. And yes, it takes time to learn it.
Advanced Rust is hard, especially if you are not trying to learn the advanced parts of the language but instead trying to make use of libraries or frameworks that do use the more advanced features. That said, if you took the same attitude with C++ you would probably end up with some very very bad code, but with Rust, if it compiles it usually works and most classes of bugs are simply caught by the compiler. Certainly, Rust was one of the harder languages I have tried (used for about three years, but still cant say I have 'learnt' it). The biggest problem we experienced though was that it is a constantly changing language and that combined with the frameworks we were using being in active development meant that we spent over 50% of our development effort just updating to newer versions of dependencies.
When I finally sat down and really got to understand how ownership and lifetimes work, I found it far mor easy to write Rust. Also go check out these resources: "The Rust Book" - Safe Rust guide "The Rustomnicon" - Unsafe Rust guide "Learning Rust, With Entirely Too Many Linked Lists" - This will help you understand how pointers work, and why LL is a shitty data structure, especially in Rust
That's subjective and you have a right to dislike the look of the syntax, just as others have a right to like the look of the syntax. However objectively the type signatures are like that because they encode and pack a lot of information. Often time it boils down to familiarity, and it's no different to dynamic language users complaining that they don't like static types that have to be declared as it's too "noisy" or verbose.
@@watthedoodlei would like to contribute on this! I was playing with tracing_subscriber formatting, and I tried to return a "subscriber" from a struct method, then aftrr scrapping it, I tried to return the layers instead so I could create the layers I needed via function calls but I got a Giga huge hit on the nedhers because I was holy confused by the lots of types I needed to define at the return type. I struggled to even figure how to return a Dyn Object!! (worth to say, I couldn't do it for the Layer trait) And then I figured whatever I wanted to do to make it easier for me to compose layers wasn't worth it so I gave up and returned a Dyn Subscriber instead. I also managed to avoid having to use `dyn MakeWriter
Over time that's going to be exceptionally harder and harder. Cloudflare handles 10% of the world's internet traffic, Amazon Cloud (AWS) services and infrastructure that runs most of the web itself runs atop of a lot of Rust. Google's Android stack contains some Rust as well as many other products/service. Microsoft Windows latest kernel is slowly moving to Rust. Linux is experimenting with Rust (the ONLY language that Linus has allowed other than C, even C++ never achieved this). Then there is Dropbox, Discord, Facebook (Meta) and the list keeps going on and on. In literally every domain, from embedded, to server to Web Rust is making in roads. So you can keep hating on Rust, you're welcomed to, but the reality is, not only are you probably already using Rust without even knowing it, but as time marches on more and more things will be powered by Rust. In the words of Thanos it's "Inevitable"
Wait, that guy used Strings for error handling? Yeah, probably should have spent some of those 18 month actually learning Rust.
Its so easy to trash another language when all you essentially looking for is doing the same thing only faster. Thats not the case with Rust.
Rust is not about making your life easier. Its about performance, productivity, security. And yes, it takes time to learn it.
I do not think he should be learning rust on the go!!
i disagree. you should but not for production code, just for personal learning projects
@@ballinlikebill8334doing it for production code is what "learning on the go" means. Else it's just "learning"
Advanced Rust is hard, especially if you are not trying to learn the advanced parts of the language but instead trying to make use of libraries or frameworks that do use the more advanced features. That said, if you took the same attitude with C++ you would probably end up with some very very bad code, but with Rust, if it compiles it usually works and most classes of bugs are simply caught by the compiler. Certainly, Rust was one of the harder languages I have tried (used for about three years, but still cant say I have 'learnt' it). The biggest problem we experienced though was that it is a constantly changing language and that combined with the frameworks we were using being in active development meant that we spent over 50% of our development effort just updating to newer versions of dependencies.
Your point at 12:09 reminds me of this Trailer Park Boys scene: ruclips.net/video/-SkfTU-B1CY/видео.html
a curve is towards it
I wanna learn Rust. Any tips?
I have an entire blog article dedicated to it: "So you wanna learn Rust?" link is here 👉 watthedoodle.com/tech/so-you-wanna-learn-rust/
@@watthedoodle Thanks!!
When I finally sat down and really got to understand how ownership and lifetimes work, I found it far mor easy to write Rust. Also go check out these resources:
"The Rust Book" - Safe Rust guide
"The Rustomnicon" - Unsafe Rust guide
"Learning Rust, With Entirely Too Many Linked Lists" - This will help you understand how pointers work, and why LL is a shitty data structure, especially in Rust
Start with sync code. And switch to async later if at all.
I'll never like the way Rust code looks. I like everything about Rust, but it is ugly as sin.
That's subjective and you have a right to dislike the look of the syntax, just as others have a right to like the look of the syntax. However objectively the type signatures are like that because they encode and pack a lot of information. Often time it boils down to familiarity, and it's no different to dynamic language users complaining that they don't like static types that have to be declared as it's too "noisy" or verbose.
@@watthedoodlei would like to contribute on this!
I was playing with tracing_subscriber formatting, and I tried to return a "subscriber" from a struct method, then aftrr scrapping it, I tried to return the layers instead so I could create the layers I needed via function calls but I got a Giga huge hit on the nedhers because I was holy confused by the lots of types I needed to define at the return type.
I struggled to even figure how to return a Dyn Object!! (worth to say, I couldn't do it for the Layer trait)
And then I figured whatever I wanted to do to make it easier for me to compose layers wasn't worth it so I gave up and returned a Dyn Subscriber instead.
I also managed to avoid having to use `dyn MakeWriter
do you know the idiomatic way? i think that is a meme 🤣🤣
I didn't recall that meme! if it is a meme that wouldn't have been pretty cool to drop an overlay on the video to pay homage to it 😁
Keep rust out of everything i use please.
Over time that's going to be exceptionally harder and harder. Cloudflare handles 10% of the world's internet traffic, Amazon Cloud (AWS) services and infrastructure that runs most of the web itself runs atop of a lot of Rust. Google's Android stack contains some Rust as well as many other products/service. Microsoft Windows latest kernel is slowly moving to Rust. Linux is experimenting with Rust (the ONLY language that Linus has allowed other than C, even C++ never achieved this). Then there is Dropbox, Discord, Facebook (Meta) and the list keeps going on and on. In literally every domain, from embedded, to server to Web Rust is making in roads.
So you can keep hating on Rust, you're welcomed to, but the reality is, not only are you probably already using Rust without even knowing it, but as time marches on more and more things will be powered by Rust. In the words of Thanos it's "Inevitable"