Master Ethereum Solidity Programming From Scratch in 2023
What you’ll learn
Fully updated for 2023 and the latest version of Solidity and Ethereum.
Understand the Ethereum Blockchain Platform (accounts, addresses, ether, gas, opcodes, transactions, blocks, mining, etc).
Have a very good understanding of Solidity Contract Programming Language (syntax and concepts like state variables, storage, functions, visibility, mappings).
Understand concepts like Events, Function Modifiers, Contract Inheritance, Abstract Contracts & Interfaces, etc.
Design, create and deploy a fully-compliant ERC20 Token and launch an Initial Coin Offering (ICO).
Design, develop and deploy a smart contract for a decentralized Lottery.
Design, develop and deploy a smart contract for a decentralized Auction Platform.
Understand good practices for developing Ethereum Smart Contracts and see real-world examples to comprehend what are the advantages of Blockchain Technologies.
Design, develop and deploy a smart contract for a decentralized Fund Raising Platform.
Understand what InterPlanetary File System (IPFS) is and how it works. Installing and running an IPFS Node on Linux and Windows.
This Course is NOT FOR COMPLETE BEGINNERS in Programming.
Basic knowledge of programming concepts in ANY language (variables, functions, return values, etc)
A Linux, Mac or PC with an Internet connection. No paid software required.
Very basic knowledge of the Blockchain technology (Bitcoin).
Section 1: The Ethereum Blockchain Platform
Lecture 1 Introduction to Ethereum
Lecture 2 Join Our Online Community!
Lecture 3 Ethereum Nodes
Lecture 4 Ethereum Accounts and Ethereum Addresses
Lecture 5 Creating an Ethereum Account Using MetaMask
Lecture 6 Creating an Ethereum Account Using MyEtherWallet (MEW)
Lecture 7 Ether (ETH)
Lecture 8 Testnets and Faucets (Goerli)
Lecture 9 How to Transfer ETH
Lecture 10 Gas, GasPrice, GasLimit and Opcodes
Lecture 11 Ethereum Block Explorer
Lecture 12 Ethereum Transactions, Blocks
Lecture 13 Ethereum Transaction’s Fields
Lecture 14 Ethereum 2.0 (ETH2). PoW vs. PoS
Lecture 15 Eth2 Sharding
Lecture 16 Links to Original Bitcoin & Ethereum White Papers
Section 2: Challenges – The Ethereum Blockchain Platform
Lecture 17 Challenges – The Ethereum Blockchain Platform
Section 3: Master The Solidity Programming Language
Lecture 18 Remix IDE
Lecture 19 Compilation In Depth: ABI and Bytecode
Lecture 20 Contract Deployment on JS VM
Lecture 21 Contract Deployment on Rinkeby Using Remix and MetaMask
Lecture 22 The Structure of a Smart Contract
Lecture 23 Solidity Basic Syntax Rules
Lecture 24 State and Local Variables
Lecture 25 Functions, Setters, and Getters
Lecture 26 The Constructor
Lecture 27 Coding – Variables and Functions
Lecture 28 Variable Types: Booleans and Integers
Lecture 29 SafeMath, Overflows and Underflows
Lecture 30 Fixed-Size Arrays
Lecture 31 Coding – Fixed-Size Arrays
Lecture 32 Dynamically-Sized Arrays
Lecture 33 Coding – Dynamic Arrays
Lecture 34 Bytes and String Types
Lecture 35 Structs and Enums
Lecture 36 Coding – Structs and Enums
Lecture 37 Mappings
Lecture 38 Coding – Mappings
Lecture 39 Storage vs. Memory (Solidity Gotchas)
Lecture 40 Built-In Global Variables – Part 1
Lecture 41 Built-In Global Variables – Part 2
Lecture 42 Coding – Global Variables
Lecture 43 Contract’s Address and Balance: Payable, Receive and Fallback Functions
Lecture 44 Coding – Receiving Ether
Lecture 45 Accessing the Contract’s Balance
Lecture 46 Protecting the Contract’s Balance
Lecture 47 Coding – The Contract’s Balance
Lecture 48 Variables and Functions Visibility: Private, Public, Internal, External -Part1
Lecture 49 Variables and Functions Visibility: Private, Public, Internal, External -Part2
Lecture 50 Coding – Visibility Specifiers
Section 4: Challenges – Solidity Programming
Lecture 51 Challenges – Solidity Programming
Section 5: Project #1 – The Lottery Smart Contract
Lecture 52 Smart Contract Planning and Design
Lecture 53 Defining the State Variables and the Constructor
Lecture 54 Entering the Lottery
Lecture 55 Validation. The Require Statement
Lecture 56 How to Select the Winner?
Lecture 57 Random Numbers in Solidity
Lecture 58 Selecting the Winner and Sending Contract Balance
Lecture 59 Resetting the Lottery
Lecture 60 Contract Review
Lecture 61 Deploying the Contract to Rinkeby Test Network
Lecture 62 Lottery Smart Contract Source Code
Section 6: Challenges – The Lottery Smart Contract
Lecture 63 Challenges – The Lottery Contract
Section 7: Project #2 – The Auction Smart Contract
Lecture 64 Smart Contract Planning and Design
Lecture 65 Defining the State Variables and the Constructor
Lecture 66 Function Modifiers
Lecture 67 Placing a Bid
Lecture 68 Testing the placeBid() Function
Lecture 69 Canceling the Auction
Lecture 70 Important Security Consideration. Withdrawal Pattern
Lecture 71 Finalizing the Auction
Lecture 72 Testing the Contract. Final Words
Lecture 73 Solving a Big Security Vulnerability
Lecture 74 Scalability. Deployment Thousands of Auction Contracts
Lecture 75 Contract that Deploys Another Contract
Lecture 76 Auction Contract Creator
Lecture 77 Auction Smart Contract Source Code
Section 8: Project #3 – The CrowdFunding Smart Contract
Lecture 78 Solving a Real-World Problem
Lecture 79 Planning and Design
Lecture 80 Defining the State Variables and the Constructor
Lecture 81 Contributing to the CrowdFunding Campaign
Lecture 82 Getting a Refund
Lecture 83 Creating a Spending Request
Lecture 84 Voting For a Request
Lecture 85 Making a Payment
Lecture 86 Testing the Contract
Lecture 87 Solidity Events
Lecture 88 Adding Events to the Smart Contract
Lecture 89 CrowdFunding Smart Contract Source Code
Section 9: Project #4 – Implementing an ERC20 Token
Lecture 90 Contract Inheritance in Solidity
Lecture 91 Abstract Contracts and Interfaces
Lecture 92 Ethereum Tokens. What is ERC20?
Lecture 93 Defining the Token Contract’s State Variables
Lecture 94 Defining the Token Contract’s Constructor and Mandatory Functions
Lecture 95 Testing and Deploying the ERC20 Token on Rinkeby Testnet
Lecture 96 ERC20 Token – allowed, transferFrom(…) and approve(…) Functions
Lecture 97 ERC20 Token – Full Implementation
Lecture 98 Final Tests
Lecture 99 ERC20 Token Contract Source Code
Section 10: Project #5 – Implementing and Running an Initial Coin Offering (ICO)
Lecture 100 What is an ICO?
Lecture 101 Planning the ICO Smart Contract
Lecture 102 Defining the ICO State Variables and the Constructor
Lecture 103 The ICO States. ICO Emergency Stop and Restart
Lecture 104 The Invest Function
Lecture 105 Testing the ICO
Lecture 106 Locking Up Tokens
Lecture 107 Burning Tokens
Lecture 108 ICO and ERC20 Token Deployment on Rinkeby Testnet. Testing the ICO
Lecture 109 The ICO Smart Contract Source Code
Section 11: [APPENDIX]: IPFS – The InterPlanetary File System
Lecture 110 The Need for a Decentralized Storage Solution
Lecture 111 What is IPFS and How It Works
Lecture 112 Installing IPFS on Linux
Lecture 113 Running an IPFS Node on Linux
Lecture 114 Pinning Objects
Section 12: [APPENDIX] Installing Linux
Lecture 115 Linux Distributions
Lecture 116 Installing Ubuntu in a VM
Lecture 117 Things to Do After Installing Ubuntu
Lecture 118 Running a Linux Server in the Cloud
Lecture 119 Securing SSH with Key Authentication
Lecture 120 Migrating to Linux
Section 13: BONUS SECTION
Lecture 121 BONUS: THANK YOU GIFT!
Engineers who want to understand the Ethereum Blockchain Platform and how to build DApps with it.,Programmers who want a good understanding of the Solidity Programming Language.,Anyone with a little bit of software development experience interested in cutting-edge technologies.
Udemy | English | 10h 7m | 4.63 GB
Created by: Andrei Dumitrescu