A workshop to teach new students the basics of Blockchains, Rust, and the Polkadot SDK.
This workshop is designed to take place over 2 days. The content in this workshop should be detailed enough that users could complete it on their own, but of course the experience is enhanced if there is an expert to help guide students and answer questions as they come.
The first day will consist of lectures about cryptography, blockchain, and Rust, and will end with a Rust workshop.
-
The course starts with a very basic introduction to cryptography. This will cover:
-
Then we jump to a basic introduction of blockchains, covering:
-
Finally, we will briefly touch on key concepts in Rust
- Then users will really get their hands dirty building an entire blockchain-like state machine in Rust.
In the second day, we will move our focus over to the Polkadot ecosystem, and build fully working blockchains using the Polkadot SDK.
- The day starts with an introduction to Polkadot.
- Then a look into the concept of shared security.
- Next we learn about Substrate, the blockchain development framework provided by the Polkadot SDK.
- Finally, we will briefly go over FRAME, which is a framework for building state machines for Substrate, very similar to what we designed in the workshop on day 1.
- We will then use Substrate and FRAME to build our very first Proof of Existence Blockchain.
- Then we will follow up with building an NFT application allowing you to buy and sell digital kitties.
There are many great resources available for learning about Blockchains, Rust, and Polkadot.
Many of those resources was used directly and indirectly in the creation of this site.
Check out these additional resources if you want to extend or reinforce what you have learned here:
- https://polkadot-blockchain-academy.github.io/pba-book/index.html
- https://substrate.io/
- https://andersbrownworth.com/blockchain/
- https://bitcoin.org/bitcoin.pdf
- https://cryptozombies.io/
This repository is open source and open to contributions.
As of writing this, the content in this tutorial is very fresh, and likely can be greatly improved.
Hopefully in the future we can feel confident about the quality and correctness of everything here.