this post was submitted on 07 Oct 2024
59 points (100.0% liked)
Rust
5979 readers
133 users here now
Welcome to the Rust community! This is a place to discuss about the Rust programming language.
Wormhole
Credits
- The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I think if Rust people want C and C++ devs to switch over, there needs to be a lot more documentation that's easy to follow on how exactly to do that. For example with Swift there's an amazing tutorial called Swift for C++ Practitioners that step-by-step goes over all the equivalent functionality and how to translate existing concepts over from one language to the other. I think Swift at least has the edge there with familiarity because the syntax physically looks closer to C-like languages, so when that's not the case, even more hand-holding is going to be necessary IMO.
There are lots of guides, tutorials and documentation. The responsibility is no longer on someone else, it is up to the individuals to actually read any of them. And to be honest, if you are unable to use them to learn rust, maybe your c++ skills isn't that impressive either.
https://bpbonline.com/products/rust-for-c-programmers?variant=42560853639368 is one if found using a tool called search engine...
Strange. That’s not what I get when I search for “Rust for C++ programmers”. I get flooded with anecdotal accounts/posts from people on Reddit and YouTube talking about their love or hate towards Rust.
Then there’s 3 hour-or-longer videos about Rust which target C++ devs directly. Two are from 2022 and 2019 with one from 2023. Only the 2022 video starts from basics with features that a C++ dev would actually need to understand, like ownership, borrowing, and references. One jumps right into multithreading ideas by discussing mutex. The other jumps into how everything is made “easier” because the compile does borrow-checking instead of having the developer manage it.
These videos probably aren’t bad, but they don’t touch on the larger “gotchas” that C++ maintainers will be scratching their head at, like explicit lifetimes, inevitable headaches with error handling, and reference/target mutability. Some of them are a good start, but they mostly focus on just technical features. It’s difficult to find a resource that helps you learn how to plan out your project early on so you’re not refactoring later due to the topics mentioned earlier.
And this is why 6% of non-Rust users have cited the community as a barrier of entry. Immediate pettiness and hostility rather than trying to get the best resources into the hands of newcomers.
You can criticise rust for a lot of things but bad learning materials I don't think can be one of them. The sheer amount of high quality learning materials is one of the selling points for the language. It was one of the areas targeted strongly to get an easy on-ramp to drive adoption.
I haven't looked for this kind of resource before but I found one that looks very high quality and up to date in less than a minute. https://github.com/nrc/r4cppp
I didn’t say they were bad. I was pointing out that:
That said, the guide you’ve shared was in fact on the first page of my results, and is definitely a good example of the type of content that is available. What I think should take place is a compilation of similar guides and books to be posted either in the Rust forums as a pin or a YouTube playlist in the official channel, perhaps even with a small list of suggested crates to review the source code of as pristine examples.