Table of contents Welcome to the Plutus Pioneers Program Preliminary Work Learn Haskell Working Environment Set Up Using Demeter Using Docker Lectures Lecture 1 Lesson 1.1: Setting Up Our Development Environment Lesson 1.2: Kuber Marketplace Demo Lesson 1.3: Hashing & Digital Signatures Lesson 1.4: The EUTxO-Model Lecture 1 Homework Assignment Lecture 2 Lesson 2.1: Low-Level, Untyped Validation Scripts Lesson 2.2: Using the Cardano CLI to Interact with Plutus Lesson 2.3: High-Level, Typed Validation Scripts Lesson 2.4: Lesson 2 Summary Lecture 2 Homework Assignment Lecture 3 Lesson 3.1: Script Contexts Lesson 3.2: Handling Time Lesson 3.3: A Vesting Example Lesson 3.4: Parameterized Contracts Lesson 3.5: Off-Chain Code with Lucid Lesson 3.6: Reference Scripts Lesson 3.7: Lesson 3 Summary Lecture 3 Homework Assignment Lecture 4 Lesson 4.1: On-Chain Vs. Off-Chain Code Lesson 4.2: Off-Chain Code with Cardano CLI and GUI Lesson 4.3: Off-chain Code with Kuber Lesson 4.4: Off-Chain Code with Lucid Lecture 4 Homework Assignment Lecture 5 Lesson 5.1: Introduction to Native Tokens in Cardano Lesson 5.2: The Value Type Lesson 5.3: A Simple Minting Policy Lesson 5.4: A More Realistic Minting Policy Lesson 5.5: Non-Fungible Tokens (NFTs) in Cardano Lecture 5 Homework Assignment Lecture 6 Lesson 6.1: The State Monad in Practice Lesson 6.2: TIntroduction to the Plutus Simple Model Library Lesson 6.3: Unit Testing a Smart Contract Lesson 6.4: Property Testing a Smart Contract Lesson 6.5: Testing Smart Contracts with Lucid Lecture 6 Homework Assignment