Where to learn Rust for free in 2024

Where to learn Rust for free in 2024

In 2024, Rust remains one of the most popular and promising programming languages. Here are a few reasons why learning Rust can be beneficial:

1. Security: Rust is designed with security in mind, preventing many common programming errors such as accessing memory after it has been freed or data races. This is especially important for the development of mission-critical systems such as operating systems or embedded applications.

2. Performance: Rust provides high performance due to its memory management system and efficient compilation. It allows you to write fast and efficient code, which makes it attractive for developing high-load systems or games.

3. Multithreading: Rust provides convenient tools for developing multithreaded applications. It offers thread-safe abstractions and prevents data races, making it easier to develop parallel programs.

4. Cross-platform: Rust supports various platforms including Windows, Linux, MacOS and others. This allows you to develop applications that can run on different operating systems without having to rewrite the code.

5. Community Growth: Rust has an active and one of the fastest growing developer communities. This means that there is always access to updated libraries, training materials and help from experienced developers.

In my Rust Telegram channel you will find many articles, guides and libraries for developers.

And here I have collected a folder of useful educational channels for developers

Overall, learning Rust in 2024 can be useful for developers who want to build safe, efficient, and multi-threaded applications across platforms.

Learning Rust in 2024.

List of free resources and courses to learn Rust.

  1. We study the Rust documentation: This book unlocks the full potential of the Rust programming language, allowing users to expand their capabilities. The material presented in the book is accessible and understandable, it can help you not only gain basic knowledge about Rust, but also to raise the level of programming in general. I recommend to start learning Rust, first of all, with this excellent book in Russian! The Rust Book – https://doc.rust-lang.ru/book/

  2. We write the code: A useful Rustlings repository, this is a collection of small exercises to help you understand and write code in Rust! – https://github.com/rust-lang/rustlings

  3. Step-by-step lessons on the Rust programming language: This step-by-step guide is intended for learning the basics of the language Rust. A basic knowledge of programming and mathematics, including an understanding of the difference between integers and fractions, the ability to distinguish between variable names and string constants, and a general understanding of the compiler is sufficient to effectively master the course material. After mastering the basic concepts of the Rust language, you will find it easier to understand the documentation and study books written by Rust developers – simple-about-rust

  4. Free course from Google: comprehensive-rust: This is a Rust course used by the Android team at Google. In it you will find material for quick learning of Rust – https://github.com/google/comprehensive-rust

  5. Rust Telegram channel with guides and libraries and articles with example code for all Rust developers – t.me/rust_code, chat for discussion and solving questions @rust_chats, Vk group

  6. Solving tasks on Rust: Rust Track. Sign up for Exercism’s Rust Track program to get access to 96 exercises with automatic verification of your code and personal mentoring, all 100% free. – https://exercism.org/tracks/rust

  7. Make projects: Build some real apps on codingchallenges – https://codingchallenges.fyi/challenges/intro

  8. Youtube channel for Rust developers: Letsgetrusty is one of the largest programming language YouTube channels. Rust! Here you will find everything from basic tutorials, to advanced web projects, overview of useful frameworks and much more! https://youtube.com/@letsgetrusty

  9. Free course with Stepik: Rustlings. This course is designed for those who have already mastered theoretical knowledge and want to practice writing code in Rust. Course Highlights: The course material is based on the original Rust course by Carol Nichols and The Rust Programming Language by Steve Klabnik. The course contains 17 lessons and 78 tasks – https://stepik.org/course/59778/promo

  10. Official blog Rust: The Rust development team uses this blog to announce important world events – https://blog.burntsushi.net/rust-error-handling/

  11. Youtube course: Programming on Rust by Oleksiy Kladov – https://www.youtube.com/playlist?list=PLlb7e2G7aSpTfhiECYNI2EZ1uAluUqE_e

  12. Fourteen-hour YouTube course: Learn Rust Programming – Complete Course 🦀 – https://www.youtube.com/watch?v=BpPEoZW5IiY&t=1s

  13. Rust course for students: Designing a New Rust Class at Stanford: Safety in Systems Programming Course description: https://reberhardt.com/blog/2020/10/05/designing-a-new-class-at-stanford-safety-in-systems-programming.htmlCourse materials: description, YouTube video, assignments: https://reberhardt.com/cs110l/spring-2020/

  14. Free short course from Microsofeet: Take your first steps with Rustfrom installing Rust, to installing the first console program – https://learn.microsoft.com/en-us/training/paths/rust-first-steps/

Where to go if you want to practice more? For additional practice, I recommend paying attention to the list of sites below. You can practice on them and solve problems with code.

Codeforces is a platform for algorithmic competitions. Conducts contests and rounds with 5 tasks for 2 hours. There is a ranking system and two divisions. Tasks can be solved and checked after the competition. There is also access to training sessions with tasks from past competitions.

HackerRank – the site will be more interesting for advanced programmers who already know a lot. This site contains many tasks for various sections of Computer Science: traditional algorithms, AI, machine learning, etc. If you solve a lot of tasks, employers who monitor this platform may be interested in you.

Codewars is a popular collection of tasks on various topics, from algorithms to design patterns.

LeetCode is a well-known website with exercises for preparing for interviews. You can chat and view the solutions of other programmers.

Timus Online Judge is a Russian-language (although English is also supported) platform on which more than a thousand tasks are successfully sorted by topic and difficulty.

TopCoder – a popular American platform. It runs algorithmic contests, as well as industrial programming competitions and marathons, where tasks require research and there is no single correct algorithm. Participants are given weeks to solve such tasks.

informatics.mccme.ru is a platform with theoretical material and tasks conveniently divided into categories. A large database of school Olympiad tasks is also available.

SPOJ is a large English-language site with 20,000+ tasks on various topics: DP, graphs, data structures, etc. Sometimes uninteresting contests are held, if not from the country where they are held.

CodeChef is a smaller analogue of Codeforces and TopCoder, also with a huge archive of tasks and regular contests.

Project Euler is a collection of 500 tasks that test knowledge of mathematical algorithms. Often used in interviews to assess a candidate’s algorithmic training.

CodinGame is a site for programmers and gamers that offers a large collection of video games designed as programming tasks.

Al Zimmermann’s Programming Contests is a platform that regularly hosts research and optimization contests. It is interesting that it is not necessary to write a program – only test data is given. Answers can be calculated manually, or simply guessed on coffee grounds.

Programming Praxis is a site where you can find many interesting tasks.

CheckIO is a site with tasks for programmers of all levels, which you complete in the form of a game.

Empire of Code is a site for programmers, where you need to write code that implements the strategy and tactics of virtual fighters.

Conclusion

In 2024, the programming language is Rust remains an extremely relevant and popular tool for developing high-performance and secure applications. With continuous language improvements and a community actively developing its ecosystem, learning Rust is a great investment in your professional skills. Robust protection against runtime errors, parallel execution, and guaranteed security make Rust an ideal choice for many projects. Despite some difficulties in learning, knowledge of the Rust language can greatly expand the capabilities of a developer and bring new perspectives to the world of programming.

Thanks for reading, I hope this list is useful for newbies!

Write in the comments which resources should be added to this list.

Related posts