My Journey with Rust & Substrate

A few months ago, I decided to learn Rust, mainly because I’m very interested in Substrate (a Blockchain framework). At first, I thought it would be an easy task, and that it will take just a few days and I should be up and running. Well, that wasn’t the case, I really struggled with this language, it reminded me of my University days, studying C++, I felt like I don’t know what I’m doing, which is probably very true.

So, I decided to take a step back and have another take on this process, approach it a bit differently and in a more systematic way. On my first try, I simply went to the docs read everything, and tried some code. That didn’t really help much, it only made me more confused and less motivated.

The second time around, I decided to follow a “consistent motivation” approach - something that I came up with while writing this post.

Basically, whenever I feel lost and unmotivated, I’ll go watch some YouTube videos that would excite me.

Here are some of my favorite:

My Process

  • Read the Rust docs, all of it, without trying any of their coding examples, I just wanted to get a feel of what’s going on in this language - the story behind it. That helped my intuition for whenever I read Rust code.

  • Watched a TON of YouTube videos. I found a bunch of great channels of devs streaming themselves learning and coding Rust. That was inspiring and gave me the desire and motivation to actually try to code things myself.

  • Followed the top Rust accounts on Twitter. The goal was to keep myself up to date with all things Rust. They also share great resources and blog posts.

  • Re-read the Rust docs again, this time I tried all the code they provided, and I spent a lot of time familiarising myself with its syntax.

  • Read as many blog posts as I can find.

  • Read all of Substrate codebase on Github.

  • Build something with Substrate.

Lesson Learned

  • Don’t give up quickly.

  • Realize that learning takes time.

  • You’re not the only person struggling with learning new things.

  • Read other people’s code (!important).



Rust Resources

  • Great Udemy Course

  • Official Rust docs

  • Rust by example

Substrate Resources

  • Substrate Crowdcasts

  • Substrates Tutorials, Knowledge base, and Recipes

  • Substrate Developer Hub

  • Polkadot docs

This is my first blog post ever, I hope it helps someone with their coding journey. Oh, and I’m definitely open to any feedback that could help me improve the quality of what I’m sharing on this blog.