3 ms·
> If you haven't already, I'd also suggest learning C. Learning a new language is not something to take lightly. Should I take 6 months in order to get more so
by pizza234 4y ago
> If you haven't already, I'd also suggest learning C.
Learning a new language is not something to take lightly. Should I take 6 months in order to get more solid foundations before moving to Rust? 1 year? N years?
My biggest hurdle has been ownership ("borrow checking", which is the common problem) in the broad sense (which includes: learning to design a whole program considering ownership). This is something that C/++ programmers are surely familiar with, so it absolutely helps, but I don't think it's efficient to learn C/++ in order to step up to Rust.
- ankrgyl 4y agoThe more languages you learn, especially with reusable concepts, the less of a tax it is to learn a new one. As someone who has written C/C++ for over a decade, learning Rust felt very straightforward -- I just had to learn about the borrow checker, and it was fairly straightforward to reason about how it works based on my knowledge of unique pointers in C++. I certainly don't think C++ is a prerequisite to learning Rust, but I do think your path to deeply understanding Rust will accelerate if you understand C (or specifically, understand pointers and heap allocations). But to each their own!
- sshine 4y agoI come from Haskell and fought fiercely with the borrow checker for two months. We’re friends now. I talked to a C programmer who said thinking in lifetimes (when to free()) was second nature, so didn’t even think heavily about it.
- pizza234 4y agoLearning new languages is certainly useful/important, but time is finite. The idea of learning a certain language as a bridge to another is unrealistic unless one has a _lot_ of time.