Ask HN: Rust or Go?
I want to learn another programming language. I have to decide between Rust or Go.
I'm proficient in Java/PHP/JS/Python/C. Between Rust or Go whats the easier language to learn?
I'm proficient in Java/PHP/JS/Python/C. Between Rust or Go whats the easier language to learn?
13 comments
[ 14.9 ms ] story [ 47.0 ms ] threadStarting with go was far easier for me
https://doc.rust-lang.org/book/ch04-00-understanding-ownersh...
This link explains it pretty clearly with example code (which is easy enough to understand even if you've never seen rust code before).
Remember: static beats dynamic, every time. Time spent checking assertions at compile time pays for itself many times over in time spent debugging these same issues at run time. Just as static typing is a huge win over dynamic typing, static lifetime analysis (Rust memory semantics) is a huge win over dynamic lifetime analysis (GC).
Rust and Go are different tools that are good at solving different categories of problems. Additionally they are both languages that will provide different lessons about modern programming ergonomics.
If you expect your programming career to be solving more high level "enterprise-y" problems like writing APIs, web services, and middleware, learning Go is probably going to be more useful to you.
If you think your programming career is going to be more low-level like programming operating systems, libraries, or drivers, learning Rust is probably going to be more valuable to you.
You're unlikely to see Go kernel modules any time soon, so if kernel hacking is where you want to to, Rust is definitely the right way to get there.
Rust is more like c++. It contains not-so-easy concepts dealing with memory that require different approaches. It will take 6 months or more to get there.