4 ms·
I learned in this order: C, "C++" (very C-like, just enough to write arduino stuff), rust, and the "real" C++14. Unless you write C++ like C with classes, whic
by kortex 5y ago
I learned in this order: C, "C++" (very C-like, just enough to write arduino stuff), rust, and the "real" C++14.
Unless you write C++ like C with classes, which is not really writing C++ at all, Rust is actually simpler, easier to learn on your own, more consistent, with better compiler error messages, tooling, documentation, etc.
Your situation - boiling frog analogy - is a very common case but also the only one in which case C++ feels less complicated, simply because it's familiar.
Everything about C++ feels overwhelming, with so many decisions and degrees of freedom at every step, from build system, to lifetime management, mutable state, concurrency, and threading, to libraries, to dependencies, to deployment. It often feels easier, especially for beginners, because there are so many ways to silently do the wrong or suboptimal thing.
- tisker 5y agoI've written tons of Rust and C++ over the last 6 years, both in the context of large, complex codebases with hard real-time performance requirements. I've also managed teams where I've had to 'train' new engineers and I can say that it is categorically false that Rust is easier to learn than C++, it's not even close. From my experience, it takes any new engineer, even if they have significant Rust experience, at least 3x the amount of time to get comfortable with a new Rust codebase than it does with a new C++ codebase. BUT, once you get past a certain stage of complexity, and everyone gets accustomed to the Rust codebase, managing the Rust codebase becomes a lot easier than the C++ one.