Master Ethereum & Solidity Programming From Scratch In 2023
Last updated 12/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.67 GB | Duration: 10h 7m
Last updated 12/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.67 GB | Duration: 10h 7m
Ethereum & Solidity Programming For Beginners. Lean Blockchain Technology. Build Smart Contracts for ICO, Token,Lottery.
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.
Requirements
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).
Description
***Fully updated for 2023 and the latest version of Solidity and Ethereum.*** This course was fully re-recorded in 2022 and covers every core concept of Ethereum, Solidity and Blockchain Technology with 5 Hands-On Projects.This Ethereum and Solidity Programming course covers every major topic of Ethereum and Solidity, including Smart Contracts Compilation and Deployment on the Blockchain, ABI, Bytecode, Transactions and Calls, Gas, State Variables, Solidity Global Variables, Getter and Setter Functions, Receive, Fallback and Payable Functions, all Solidity Data Types, Events, Accessing and Protecting the Contract’s Balance, Visibility Specifiers and many more!This Course is NOT FOR COMPLETE BEGINNERS in Programming.I’m constantly updating the course to be the most comprehensive, yet straightforward, Ethereum, Solidity & Blockchain Programming course on the market!Course Updates:Update: November 2022 - Updates to be 2023 ready.Update: September 2022 - Manual Captions (Subtitles) in English added.June 2022 Updating the CrowdFunding Smart Contract and the IPFS (InterPlanetary File System) Section.May 2022: Updating the Auction, ERC20, and ICO Token Smart Contracts.April 2022: Updating the Lottery Smart Contract.April 2022: Updating the entire “The Solidity Programming Language” Section (3 hours of FullHD videos, coding sections, Quizzes, and Hands-On Challenges with Solutions).March 2022: Updating “The Ethereum Blockchain Platform” Section.February 2022: Starting Rerecording the entire course to bring it to 2022 and beyond.March 2020: NEW Section - IPFS (InterPlanetary File System).September 2018: Course Launch.This course IS NOT like any other Ethereum and Solidity Programming course you can take online. At the end of this Hands-On Course, you will MASTER all the key concepts of the Ethereum Blockchain and Solidity and you will become an effective Ethereum Blockchain Developer for the future that comes.Just starting out with Blockchain, Technology Smart Contracts Development and Solidity Programming? Perfect, I've got you covered! This course starts out assuming you're new to these technologies.Or maybe you've already tried to learn Ethereum Blockchain Development and Solidity Programming by yourself and now you want to put all the pieces together? I'm here to help you, this course has everything you need to know about Ethereum Blockchain Development and Solidity Programming Language.You'll have lifetime access and you can return and look for a specific Ethereum feature or Solidity syntax anytime you want.All presentations and Ethereum Smart Contracts used in this course are available for download.Many Ethereum Smart Contracts such as the ERC20 Token, the ICO are ready to be used with none or very few changes.There are many courses on Ethereum Blockchain Development and Solidity Programming. Why should you learn from me?I'm a Practitioner and a Blockchain Enthusiast. Welcome to the real world! I have almost 20 years of experience as a Software Engineer. Since I've started with Ethereum and Blockchain Development, I've been using or studying technology almost on a daily basis.I'm an Educator and I know how to make a syllabus. For the last 10 years, I've trained thousands of people on Linux, Networking, Security, or Programming.This course doesn't cover JavaScript Frameworks, Front-Ends, or details about Web3 interaction with the Ethereum Blockchain. It's focused on Back-End Smart Contracts Development. Basic knowledge of any programming language (C, C++, JavaScript) is required!TESTIMONIALS"Very detailed and well explained. Andrei completely broke down the barriers to understanding Solidity and Blockchain programming, so many basics that are fundamental to understanding this tech were clearly explained. Very Impressive!" by Peter Olisa"Highly recommended course. Goes directly to the point, explaining many examples of real-life smart contracts. Instead of a lot of JavaScript front-end programming, as in other courses, it goes directly to dApp development. Very useful indeed." by Jose Ferdandez"The course is well structured and really in-depth. The instructor does a really good job explaining the concepts, with examples. I would recommend this course to anyone interested in the subject." by Andrei BuiuThe topics covered in this course are:What is the Ethereum Blockchain PlatformEthereum Accounts, Addresses, Transactions & Blocks, Gas, Opcodes, and MiningTools used for Ethereum DevelopmentEthereum Smart Contract Compilation, ABI, Bytecode, and Deployment to different Ethereum BlockchainsSolidity SyntaxIn-depth details about Solidity State Variables and FunctionsSolidity Fixed-Size Arrays, Dynamic Arrays, Structs, Enums, Mappings, Global Variables, etcContract Address and Balance: Sending Ether to a Contract, Payable & Fallback FunctionsAccessing the Contract BalanceVariables and Functions Visibility: Private, Public, Internal, ExternalEventsContract Inheritance, Abstract Contracts & InterfacesReal-World examples of how to create secure Smart Contracts for a decentralized unstoppable Lottery, Auction or CrowdFunding Platform, ERC20 Token, and ICOWhat is the InterPlanetary File System (IPFS) and how IPFS works? IPFS Examples.Installing and Running an IPFS Node on LinuxInstalling and Running an IPFS Node on WindowsEvery topic includes many live examples. This course will show you the best design patterns for developing production-ready smart contracts with Ethereum Blockchain and Solidity.After taking this course, you'll be able to:Have an in-depth understanding of the Ethereum Blockchain and Solidity Programming Language;Understand what are the components of the Ethereum Blockchain Platform;Understand why Smart Contracts and Blockchain Technologies are revolutionary technologies;Create different Smart Contracts to solve real-world problems;Plan, design and develop a Smart Contract for a decentralized Auction Platform;Plan, design and develop a Smart Contract for a decentralized CrowdFunding Platform;Plan, design, develop and deploy your own Fully-Compliant ERC20 Token;Plan, design, develop and deploy your own Initial Coin Offering (ICO);Install and use the InterPlanetary File System (IPFS) on Linux or Windows;The skills you’ll learn in this Ethereum and Solidity course will boost your career and make you more valuable in the job market. This course could change your life!
Overview
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: Course Completion
Lecture 121 BONUS
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.