Learning RUST in 2019

Rust is system programming language that was first released on May 15, 2015 and new major upgrade “Rust 2018” was released on Dec 06, 2018. Rust was the “most loved programming language” in the Stack Overflow Developer Survey for 2016, 2017, and 2018. Rust provides comparable performance to other system programming languages like C, C++. Rust claims to provide memory safety without run-time or garbage collector. Rust is conceptually unlike any other language you may have known yet Rust has made sure that most of the syntax of language is unoriginal. Wonder how Rust accomplish these goals?

If you have made up your mind to learn this modern programming language in 2019, this is a small attempt for new learners to have an unofficial learning path for getting to know and mastering Rust. I am still learning Rust and I will update post as and when required. This is iteration 1.

Learning Circle

Learning any new language is an iterative process and programming language is no exception. For learning new programming language, I find below process to be efficient. It takes repetition and practice to fully understand and master language!

Note to Beginners: Don’t be demotivated if-

  • You find that you are getting too many compiler errors and warnings. Rust’s compiler is pretty smart!
  • You find that concepts you already knew do not work the same way in Rust. This difference is intentional and is part of Rust’s language design.
  • You find that you are not able to use data structures with circular dependency as easily as in other languages.
  • You are stopped repeatedly by borrower check rules! Part of learning Rust is to learn how to think mentally like borrow check rules.
  • You are not able to understand fully ownership, borrowing, moves, references, traits, lifetimes, closures etc. in first run. This is OK. These concepts take time and practice!
  • You find that learning Rust takes time because it does! Even if you know other programming languages.

Learning path — Iteration 1

Read/Watch — you can start with any/all of the options below

Code — Example Codes

Measure — Code challenges and source codes

  • Complete first 10 code challenges on Exercism — (Free)
  • Try to understand source codes for rust projects of your interest, you can find Rust related projects/resources on curated list.

Build — Project of your interest

Contribute!

Do share your projects, learning, ideas, suggestions with community and help others who might be starting! Rust has one of the most awesome community. Connect with community on Reddit

Until next iteration!