This is a quick course to show you that Rust is just a beautiful language and after youβre done [with this course], you may want to use it for anything. A lot of introductory materials on learning Rust are mostly command-line applications. If you learned to program applications with HTML/CSS/Javascript, itβs natural that you crave tutorials that are visual.
Youβve come to the right place. This course does not require you to have used Rust before. However, you should have programmed in another language β any language.
The language
Rust is a statically typed language. A lot of us have grown to like types so this shouldnβt be a problem. If you come from a dynamically typed language like Javascript, Python, Ruby, etc. and donβt know what static typing means, this is a quick explanation: https://stackoverflow.com/a/1517670/4803261
Rust is known for writing memory safe applications. Because of this, it introduces some concepts like borrowing and ownership. Understanding how these work takes some time and practice and can be very intimidating to new users. But donβt let that discourage you.
Iβve got you!
What we will be doing
We will be building a simple quiz app. The requirements and design will be discussed in the next lesson. By the end of this course, you would have learned about:
- Some data types like boolean, numbers, vectors (arrays), structs (classes).
- Loops
- Testing (easy)
- Workspaces
- GUI in Rust
How you should learn
This is purely a suggestion. However, you should feel free to use whatever method works for you.
-
By doing.
-
You should first read the whole chapter and watch the related videos. Call that the first pass. Then read and watch again, this time doing the exercise. That is, writing the code and testing.
Doing this allows your brain to use knowledge instead of instructions.
-
If you donβt understand anything, donβt be hard on yourself. Do some light reading. Perhaps, use ChatGPT to get a summary. Deep understanding will come with repetition/time.
βοΈ Each lesson comes with a related commit which you can use to compare with your progress.
No spoonfeeding
The course is designed to be fairly challenging so it feels worth the effort. So in some cases, youβll have to figure things on your own. If youβre stuck, you can ask for help in this Discord server or reference the related commit which will be linked at the end of each lesson.