Skip to content

Latest commit

 

History

History
68 lines (42 loc) · 2.96 KB

README.md

File metadata and controls

68 lines (42 loc) · 2.96 KB

rust-and-polkadot-workshop

A workshop to teach new students the basics of Blockchains, Rust, and the Polkadot SDK.

Structure

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.

Day 1

The first day will consist of lectures about cryptography, blockchain, and Rust, and will end with a Rust workshop.

Lectures

  1. The course starts with a very basic introduction to cryptography. This will cover:

    1. Hash Functions
    2. Hash Based Structures
    3. Digital Signatures
  2. Then we jump to a basic introduction of blockchains, covering:

    1. Bitcoin
    2. Ethereum
    3. Blockchain Architecture
  3. Finally, we will briefly touch on key concepts in Rust

Workshop

  1. Then users will really get their hands dirty building an entire blockchain-like state machine in Rust.

Day 2

In the second day, we will move our focus over to the Polkadot ecosystem, and build fully working blockchains using the Polkadot SDK.

Lectures

  1. The day starts with an introduction to Polkadot.
  2. Then a look into the concept of shared security.
  3. Next we learn about Substrate, the blockchain development framework provided by the Polkadot SDK.
  4. 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.

Workshops

  1. We will then use Substrate and FRAME to build our very first Proof of Existence Blockchain.
  2. Then we will follow up with building an NFT application allowing you to buy and sell digital kitties.

Resources

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:

Contributing

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.