Ethereum Smart Contract Programming 101 Curriculum

Enroll now

Why you should enroll

After taking this course you'll be able to build and deploy your own Ethereum Smart Contracts. You will understand the whole dapp development process and be an independent dapp programmer. This course will get you up to speed quickly and you'll be able to deploy your first smart contracts after a few lectures. Let's program money


This course consists of approximately 10 hours of video content, assignments, exams and certification. Check out the detailed curriculum below.


  • Welcome
  • Prerequisites
  • Disclaimer
  • Course Update Information

Solidity Basics

  • Build Tools
  • Hello World
  • Types & Arrays
  • Structs
  • Intro to Mappings
  • Mappings
  • Quiz: Mappings
  • If & Else - Control Flow
  • Introduction to Visibility
  • Implementing Private Visibility
  • Quiz: Visibility
  • Ethereum Gas

Solidity Error Handling

  • Error Handling Intro Part 1 - Require
  • Error Handling Intro Part 2 - Assert
  • Programming with Require()
  • Programming with Assert()
  • Quiz: Error Handling

Additional Solidity Concepts

  • Modifiers
  • Quiz: Modifiers
  • Data Location
  • Data Location Assignment
  • Data Location Assignment Solution
  • Quiz: Data Location
  • Events
  • Quiz: Events

Payable Functions & Contracts

  • Receiving Money
  • Solution & Modifier
  • Send & Transfer
  • Payable addresses vs Normal addresses
  • Quiz: Payable functions

Inheritance & External Contracts

  •  Inheritance Reading Assignment
  • Inheritance in Solidity
  • Inheritance Assignment
  • Inheritance Assignment Solution
  • Using Internal Visibility Level
  • Quiz: Inheritance
  • External Contracts
  • Quiz: External Contracts

Deploying to the Testnet

  • Metamask Setup
  • Deploying our Contract

Congratulations & Next Step

  • Congratulations & Next Step

50% Complete

Two Step

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.