Duration: 1 month | Pricing: $1,300
Rust has been voted as the most loved language for seven years in a row on Stackoverflow's developer survey. You'll learn why in this Rust programming bootcamp!
This Rust coding bootcamp is a prerequisite for Solana, but the NEAR, MultiverseX (formerly Elrond), Comos' SDK, Polkadot's Substrate, and Zcash's Halo2 all rely on Rust also.
Rust is also a vast language which can be overwhelming. This course focuses on the aspects that are used most in blockchain programs and smart contracts.
This Rust bootcamp is a prerequisite for the Solana bootcamp.
This course is an ideal blend of practice and theory. We will read texts that explain how Rust is architected, but see that in action with lots of hands-on exercises.
Start learning now
Our tutorials are so good, you'll be solving Leetcode problems after less than 8 minutes of videos.
Watch our Rust in 60 seconds playlist below. Then fill out your email to get the practice problems.
The code to follow along is in this repository (optional): https://github.com/RareSkills/rust-bootcamp
It's always good to build momentum by starting with tasks you can succeed easily at. You'll work on a bunch of exercises that aren't much harder than fizz buzz and palindrome tests so that you can focus on the syntax instead of problem solving.
Rust can get confusing when it comes to vectors, slices, iterators, pointers, owned types, and a things like that. We will do a bunch of exercises that enforce understanding these concepts.
We will continue to enforce learnings from last week, but with more advanced data structures like B-trees (a prerequisite for Solana!), and heaps.
We will learn data serialization and unit testing in this week, as well as structuring a Rust project.
What happens next?
The intent of this course is to be a prerequisite for the Solana bootcamp.
How We Design the Rust Bootcamp Curriculum
We are very intentional about how we design our curriculum. We don’t just survey topics or give you random problems.
Gentle Ramp Up: Familiar Foundations
We spend the first week doing things that you will already feel comfortable with like for loops, if statements, very basic data structures, and types are are already familiar with.
Unlike other curriculums, we expect you to be familiar with these concepts and don't waste time explaining them to you -- you dive right in to coding Rust where we know you can succeed!
You will encounter a few strange but manageable concepts like mutability and read only references, but they are easy to understand and practice.
We are careful to avoid problems that require you to fight Rust’s infamous borrow checker at this stage.
The important thing is for you to start off with a feeling of "I can do this!"
As scary as the borrow checker is to some, it’s quite straightforward. Function arguments behave like black holes.
Once you pass something in, it’s gone.
Nothing enforced understanding this better than reimplementing some of the popular sorting algorithms, where you are forced to pass data around.
Topics that make Rust unique
Strings can be surprisingly confusing to use in Rust at first, so we explore that next. That way you will be build an intuition about how Rust seemingly alters data types and ownership depending on how you use it.
At this stage, you’ve developed a good intuition for the language, so we can introduce concepts like structs and Implementations, and this will enable us to build the familiar classic data structures. We chose to focus on building data structures instead of applications because
there is a lot of material online to explain them
you can easily find reference implementations in other languages
it’s good interview preparation.
Finally, since this course is a preparation for programming Solana, we will directly study the parts that ecosystem uses a lot, such as serialization and testing.
One unfamiliar topic at a time
We try very hard to make sure you are only dealing with one unfamiliar concept at a time. The progression of topics and exercises matters!
As you can see, we invest hundreds of hours into making our curriculum an amazing experience. But we also test it on engineers and refine it as we get feedback from participants.
The primary course author is a two time bestseller on Udemy with an average rating of 4.7 stars. Teaching is an art and a science we are excellent at.
Signature Human Touch
But the best part of our Rust bootcamp is our signature small class sizes and weekly one-on-one meeting with you instructor.
Not only will you save time in searching for answers to clarify concepts, you’ll be motivated to work harder when you are surrounded by energetic peers who are pushing themselves to learn fast.
RareSkills is more than a curriculum or a class.
It’s an engineering fellowship for efficient success.
Our Rust Bootcamp
We expect you to do well on our coding entrance exam.
Blockchain experience is desirable, but not required.
Rust Resources For Rust Programming From RareSkills
Should you learn Rust or Solidity? rareskills.io/post/solidity-vs-rust
How Solana uses Rust rareskills.io/post/solana-smart-contract-language
What is the format of this course?
The format of this course is the same as any other RareSkills' blockchain bootcamp.
The class meets once a week over video call for an hour to have a technical discussion and answer questions.
You will study the materials we give you asynchronously, and spend most of your time working on the problems we assign. The problems are carefully designed to ramp up in difficulty over time and reinforce concepts learned previously.
When you are finished, you will meet one-on-one with your instructor to review your work.
Can I become a general Rust programmer after taking this course?
The intent of this course is to prepare you for blockchain programming, particularly Solana.
We intentionally leave off topics like concurrency and building web applications with Rust because it won't be relevant to creating Solana programs. If you want to be a general Rust programmer beyond blockchain applications, you will need more than 4 weeks of study and practice. However, this is a good place to start!
Do I really need to study Rust? Can't I just copy and paste from stackoverflow?
Of course you can, but we don't believe this is the most efficient way to go about it. Some parts of the syntax need explicit studying, otherwise you won't know what you are looking at. Rust also has a much more expansive vocabulary than other programming languages, so depending on your background, you won't necessarily know what to search for to begin with.
Can't I learn Rust for free on YouTube?
Of course you can. Check out our Youtube playlist at the bottom of the page!
Getting good at Rust doesn't come from reading great books or watching great videos however. It comes from forcing yourself to sit down and actually spend most of your time practicing. This Rust bootcamp is your ticket to avoid tutorial hell.
It's much easier to stay disciplined on a study plan when it is well designed and you are doing it with other students and with an instructor.
Of course do all the practice problems on your own. We believe you can complete the practice faster if you do it with us. It will also be more fun! Engineers really enjoy studying here.
Will learning Rust make me a better programmer?
Absolutely. Learning any new programming language will teach you valuable concepts, but this is especially true with Rust. Rust has kept its status as most love language for a long time for a reason!
Many developers discover bad habits they have in other languages because Rust exposes them and forces you to fix them before the code compiles. There are several anecdotes of engineers finding bugs in codebases when they translated the codebase to Rust, and the compiler showing situations where things can go south.
How much work will this take?
I'm an employer or web3 company. I want my engineers to learn Rust, is this a good program?
Yes! And if you sign up multiple engineers, you will get a discount.
The primary benefits you will get are being able to judge better which blockchain is appropriate for the application you are building, and being able to build the same application on multiple blockchains. Please keep in mind this course is intended to prepare students to take our Solana bootcamp. The purpose of this course is to learn Rust for the sake of building blockchain applications. Contact us if this interests you!
Besides coding smart contract, what else is Rust programming used for in blockchain?
Rust is a popular language for blockchain clients. Here are some examples:
Additionally, web assembly is gaining popularity as a blockchain, even Ethereum is considering the WASM assembly environment in the future. Rust programming is an extremely popular high level language to target web assembly..