Blockchain Developer Course
Welcome to the Rootstock Blockchain Developer Course. Become a Blockchain Developer. Learn how to code smart contracts in Solidity, then compile, test, deploy, secure, and verify them.
Welcome to the Rootstock Blockchain Developer Course
Course Introduction Student Handout
Code Assessment Submission Instructions
Course Introduction module feedback
Blockchain Nodes Student Handout
Introduction
Blockchain Nodes Slide Deck
Section 1: Peer 2 Peer (P2P) Networks
Lab 1: Speed Run
Lab 1.1: RSKj Github Repo
Lab 1.2: Verify RSKj - Setup
Lab 1.3: Verify RSKj - Checksum and Signature
Quiz 1
Section 2: Blockchain nodes
Lab 2: Speed Run
Lab 2.1: Run RSKj
Lab 2.2: RSKj RPC Request
Lab 2.3: RSKj CLI Options
Quiz 2
Section 3: Smart Contract Platforms
Lab 3.0: RSKj Config File
Quiz 3
Where to go from here......
Blockchain Nodes module feedback
Introduction
Write Smart Contracts Student Handout
Write Smart Contracts Slide Deck
Code Example Module 03 Write Smart Contracts RSK Blockchain Developer Course
Section 1: Solidity Compiler
Lab 1: Speed Run
Lab 1.1: Install Compiler
Lab 1.2: ABI and Bytecode
Lab 1.3: Fixing Warnings and Errors
Quiz 1
Section 2: Solidity Syntax
Lab 2: Speed Run
Lab 2.1: Constructor
lab 2.2: Primitive Variables
Lab 2.3: Enumerations
Lab 2.4: Struct
lab 2.5: Dynamic Variables
Lab 2.6: Function Stub
Lab 2.7: Function Implementation
Lab 2.8: Require
Lab 2.9: Function Modifier
Lab 2.10: Event and Interface
lab 2.11: Reference an Interface
Lab 2.12: Import an Interface
Quiz 2
Section 3: Solidity Frameworks
Lab 3: Speed Run
Lab 3.1: Install Hardhat
Lab 3.2: Initialize Project
Lab 3.3: Configure Solc
Lab 3.4: Configure Seed Phrase
Lab 3.5: Configure Minimum Gas Price
Lab 3.6: Configure Testnet
Lab 3.7: Configure Metamask Compatible
Quiz 3
Code Assessment Module 03 Write Smart Contracts RSK Blockchain Developer Course
Where to go from here......
Write Smart Contracts module feedback
M03 - Code Assessment Upload
M03 - Code Assessment Submission
Introduction
Test Smart Contracts Slide Deck
Test Smart Contracts Student Handout
Code Example Module 04 Test Smart Contracts RSK Blockchain Developer Course
Section 1: Implementation vs Testing
Quiz 1
Section 2: Types of Testing
Quiz 2
Section 3: Correctness of Tests
Lab 3: Speed Run
Lab 3.1: Setup Project
Lab 3.2: Add Implementation
Lab 3.3: Specification
Lab 3.4: True Negative
Lab 3.5: False Negative
Lab 3.6: False Positive
Lab 3.7: Generative Tests (Bonus)
Quiz 3
Section 4: Testing Tools
Lab 4: Speed Run
Lab 4.1: Setup Project
Lab 4.2: Implementation
Lab 4.3: Smoke Test
Lab 4.4: Test Data Storage
Lab 4.5: Test State Machine
Lab 4.6: Refactor Test Util
Lab 4.7: Test Events
Lab 4.8: Fix Test Failure
Quiz 4
Code Assessment Module 04 Test Smart Contracts RSK Blockchain Developer Course
Where to go from here...
Test Smart Contracts module feedback
M04 - Code Assessment Upload
M04 - Code Assessment Submission
Introduction
Secure Smart Contracts Student Handout
Secure Smart Contracts Slide Deck
Code Example Module 05 Secure Smart Contracts RSK Blockchain Developer Course
Section 1: Contrasting Web2 and Web3 Security
Lab 1: Speed Run
Lab 1.1: Install Dependency: Static Prettier
Lab 1.2: Install Dependency - Dynamic Coverage
Lab 1.3: Install Dependency - Python PIP
Lab 1.4: Install Dependency - Static Slither
Lab 1.5: Install Dependency - Dynamic Mythril
Quiz 1
Section 2: Security Tools
Quiz 2
Section 3: Security Vulnerabilities
Lab 3: Speed Run
Lab 3.1: Vulnerabilities - OWASP Top 10
Lab 3.2: Vulnerabilities - CVE Details
Lab 3.3: Vulnerabilities - SWC Registry
Lab 3.4: Vulnerabilities - Bounty IOV
Lab 3.5: Vulnerabilities - Bounty Consensys
Lab 3.6: Vulnerabilties - Audit Report
Quiz 3
Section 4: Security Audits
Lab 4: Speed Run
Lab 4.1: Clarification before report
Lab 4.2: Receive report
Lab 4.3: Clarification after report
Lab 4.4: Addressing C-001 Spec
Lab 4.5: Addressing C-001 Implementation
Lab 4.6: Addressing C-002 Implementation
Lab 4.7: Addressing C-003 Implementation
Lab 4.8: Addressing C-004 Spec
Lab 4.9: Addressing C-004 Implementation
Lab 4.10: Audits
Lab 4.11: Audits follow up
Quiz 4
Code Assessment Module 05 Secure Smart Contracts RSK Blockchain Developer Course
Where to go from here...
Secure Smart Contracts module feedback
M05 - Code Assessment Upload
M05 - Code Assessment Submission