Master Solidity and Smart Contracts – Blockchain Development: 2021 – Programming & Ethereum – Code Along – DApplications
☑ Code along and become an advanced and confident Solitiy developer from scratch
☑ Get interview-ready by understanding how Solidity and the EVM (Ethereum Virtual Machine) really works under the hood
☑ Solidity fundamentals: variables, if/else, operators, boolean logic, functions, arrays, modifiers, loops, strings, and more
☑ Public & Private visibility (correctly securing data), struct and enums, special global and blockchain variables, suffixes, and addresses
☑ The Ethereum Virtual Machine (EVM) and assembly (low level language), events and logging blockchain emissions, send vs transfer methods, scoping and more
☑ Object-oriented programming: constructor functions, contract and classes, interfaces, abstract contracts (virtual and override), inheritance, and hash tables
☑ Blockchain Functionality: modifier functions, cryptographic functions, fallback functions, and function overloading
☑ advanced Patterns and topics: the withdrawal pattern, restricted access, error handling
☑ Get support and make connections online with an active focused community with developers and mentors
☑ Professional Blockchain techniques working with the Ethereum network and Web3 for debugging, deployment, and compiling with Remix IDE Ethereum.
☑ How to problem solve and dig through documentations like a developer
☑ How to write code with templated models (abstract contracts) and clearly document your thought process
☑ Practice your skills with 30+ challenges and assignments (source code solutions included)
Solidity is the most popular blockchain language in the world designed to build DApplications (Smart Contracts). It powers Ethereum and there is an in demand exponential growth of high-paying jobs all over the world which is changing the way we conduct business.
Learning Solidity can be likened to learning web development languages years ago – You are very much ahead of the game starting today -and that’s why you want to learn Solidity too. And you have come to the right place!
Why is this the right Solidity course for you?
This is the most complete Solidity focused course on Udemy. It’s an all-in-one topic by topic focused approach that will take you from the very fundamentals of Solidity and programming, all the way to building complex DApplications.
You will learn Solidity from the very beginning, step-by-step. I will guide you through smart contracts and fun code along examples, important theory about how Solidity works behind the scenes, and compiling and deploying your own smart contracts from simple storage systems to live interactions with injected web3 and Uniswap.
You will also learn how to problem solve like a developer, how to build smart applications from scratch, the proper conventions for your code, how to debug code, and many other real-world skills that you will need on your blockchain developer job.
And unlike other courses, this one actually contains beginner, intermediate, advanced, and even expert topics, so you don’t have to buy any other course in order to master Solidity from the ground up!
But… You don’t have to go into all these topics. This is a long course that focuses purely on Solidity, because, after all, it’s “The Complete Solidity Course”. It is designed to bring you a combination of courses all in one! But you can become a professional blockchain developer by watching only sections of the course. You can use this course as the lifetime reference guide for certain topics as you continue to build projects and learn more that you can always come back to anytime you wish to advance in a particular topic.
By the end of the course, you will have the knowledge and confidence that you need in order to ace your solidity blockchain job interviews and become a professional developer for smart contract and DApplications.
Why am I the right Solidity teacher for you?
My name is Clarian, I’ve worked as a head engineer for years and am fully passionate and dedicated to what I teach. Problem solving and building complex design projects is my love and my life. I am am someone who is passionate and committed to building quality projects from the ground up.
I have recently been spending my time on building comprehensive training models with clear explanations to help others evolve and grow the blockchain space. This is the most clearly focused and in-depth solidity course that you will find on Udemy (and maybe the entire internet) that provides video code alongs, plenty of challenges and exercises with solutions and discussions combined into one.
I know how students learn Solidity and what they need in order to master it. And with that knowledge, I designed the ideal course curriculum. It’s a focused approach on core fundamentals, multiple real world examples, advanced pattern techniques and hands on projects, that will take you from zero to professional and confident Solidity developer in a matter of weeks.
What do we learn exactly in this course?
- Build multiple complex Smart Contracts from scratch for your portfolio! In these projects, you will learn how to think and properly develop your ideas into written code including how to maximize your time by finding and reading documentation and best practices.
- Master the Solidity fundamentals: variables, if/else, operators, boolean logic, functions, arrays, modifiers, loops, strings, and more
- Learn Solidity from the beginning: Public & Private visibility (correctly securing data), struct and enums, special global and blockchain variables, suffixes, and addresses.
- How Solidity works behind the scenes: The Ethereum Virtual Machine (EVM) and assembly (low level language), events and logging blockchain emissions, send vs transfer methods, scoping and more.
- Deep dive into functions: modifier functions, cryptographic functions, fallback functions, and function overloading.
- Deep dive into object-oriented programming: constructor functions, contract and classes, interfaces, abstract contracts (virtual and override), inheritance, and hash tables from mapping to nested mapping (key for DApplication address tracking)
- Gain clear understandings of advanced patterns: the withdrawal pattern, restricted access, error handling and more. We will use this knowledge to build an Auction DApplication as well as plug into the live mainnet and access the Ethereum Blockchain Data via real world DApplications.
- Learn the Solidity techniques that are used by professional in blockchain: test network deployment, IDE, debugging and compiling.
Check out the course curriculum for an even more detailed overview of the content 🙂
This is what’s also included in the package:
- Consistently updated content with video and downloadable code files you can reference whenever you want.
- Clear explanations which come with exercises, solutions and discussions
- An online community of active developers and students available for support and discussion.
- Free support in the course Q&A
- 30+ Exercises to practice your new skills (solutions included)
This course is for you if…
- … you want to gain a clear and advanced understanding of Solidity
- … you have been trying to learn Solidity but: 1) still don’t really understand Solidity, or 2) still don’t feel confident to code smart contracts
- … you are interested in working on a blockchain project in the future
- … you already know Solidity and are looking for a course to clearly go over advanced topics. This course includes expert topics!
- … you want to get started with programming: Solidity is an awesome and very interesting first language!
Does any of the above sound good to you? If so, then whenever you’re ready, start this new adventure today, and join me and thousands of other developers in the most focused Solidity course that you will ever need!
English
Language
First Steps – How To Succeed In This Course
What is a smart contract – Solidity
Join our Online School (Developers and Mentors)
Exercise: Meet the Community
What is an IDE – Remix Ethereum
Remix Ethereum – IDE Basics (How to use an IDE)
How to Code Along with me throughout this Course
Exercise – Get Familiar With the Remix Ethereum IDE
What are comments in Solidity
Why Comments are important!
Introduction To Solidity (For Complete Beginner)
Solidity For Beginners – Welcome to your new journey!
Copy & Paste Your First Smart Contract 🙂
Compile & Deploy Your First Smart Contract
Exercise – Recongifure A Solidity Smart Contract
Solution – Reconfigure A Solidity Smart Contract
Introduction To Pragma Solidity (Compiling Versions)
How to understand Pragma Solidity
Exercise – Instantiate Solidity
Solution – Instantiate Solidity
First Assignment – Ask One Question
Learn Solidity – Basics I
General Introduction To Variables & Types
Introduction To Booleans, Integers, & Strings
Writing Solidity Variables
Exercise – Write Solidity Variables
Solution – Write Solidity Variables
What Are Functions – In Solidity
How To Write Functions in Solidity
Scope – Functions and Variables in Solidity
Exercise – Write Your First Smart Contract – Calculator
Solution – Write Your First Smart Contract – Calculator
Debug Assignment
What is the Ethereum Virtual Machine (EVM)
Learn Solidity – Basics II (Conditional logic, Scope & Visibility)
Decision Making in Solidity
How To Write If else statements in Solidity
Exercise – Write an Airdrop If Statement in Solidity (Exercise with Solution)
Visibility – Public Private Internal External – in Solidity
Scope & State in Solidity
Exercise – Strengthen Your Understanding Of Scope and State
Solution – Strengthen Your Understanding Of Scope and State
Visibility – Public Private Interal External – in Solidity II
Visibility – Public Private Internal External – in Solidity III
Operators in Solidity
Arithmetic Operators in Solidity
The Remainder Operator in Solidity
How to calculate the Modulo Remainder – Trick
Exercise – Arithmetic Operator Practice
Solution – Arithmetic Operator Practice
Comparison Opeartors in Solidity
Exericse – Comparison Operators
Solution – Comparison Opeartors
Logical Operators in Solidity
Exercise Logical Operators
Solution – Logical Operators
The Assignment Operator in Solidity
Exercise – Final Solidity Operator Test
Solution – Final Solidity Operator Test
Assignment – Investigate Solidity And Make a Critical Assessment
Learn Solidity – Basics III
How to improve your skills with this course
Review – Modulo & Fun Math in Solidity
The For Loop in Solidity
Exercise – How to loop in Solidity
Solution – How to loop in Solidity
Strings in Solidity
Memory Keyword in Solidity
Bytes vs Strings in Solidity
Bytes vs Strings in Solidity II
Exercise – Writing Strings in Solidity
Solution – Writing Strings in Solidity
Structures & Libraries in Solidity
What are Constructors in Soliditiy
Exercise – Build A Constructor in Soliditiy
Solution – Build A Constructor in Solidity
Arrays in Solidity – Pop Push and Length Methods
Arrays in Solidity – Delete
Exercise – Compact Array
Solution – Compact Array
What are Enums in Solidity
Exercise – How To Write Enums
Solution – How To Write Enums
What are Structs in Solidity
Exercise – Structs in Solidity
Solution – Structs in Solidity
Mapping in Solidity
Exercise – Set Keys and Values
Mapping & Struct Assignment
Solution – Mapping & Struct Assignment
Nested Mapping in Solidity
Pairing Addresses Assignment
Learn Solidity Basics IV (Conversions and Special Variables)
Bits and Uints – Conversion in Solidity
Exercise – Bits & Bytes
Solution – Bits & Bytes
Ether Units and Denominations in Solidity
Exercise – Assert Ether to Wei
Solution – Assert Ether to Wei
Exercise – Assert Time and Dates in Solidity
Solution – Assert Time and Dates Suffix in Solidity
Global variables in Solidity
Global Variables in Solidity II
Blockchain Variables
Discussion – What is A Blockchain
Learn Functions in Solidity
Overview on Functions in this Solidity Course
What are Function Modifiers in Solidity
How to write a Function Modifier in Solidity
Exercise – Write a Function Modifier
Solution – Write a Function Modifier
The View Keyword in Solidity
What does Pure mean in Solidity
Exercise – View and Pure Functions
Solution – View and Pure Functions
The Fallback Function in Solidity I
The Fallback Function in Solidity II
The Fallback Function in Solidity III
Exercise – Write a Fallback Function
Function Overloading in Solidity
Exercise – Write a Function Overload
Solution – Write a Function Overload
What are Cryptographic Functions
Build A Random Generator Function
Smart Contract Oracles
Exercise – Cryptographic Oracle Contract
Solution – Cryptographic Oracle Contract
Cryptocurrency (Code – Along) & Smart Contracts – Fundamentals
Crypto Coin Solution
Crypto Token – Smart Contract Setup
Minting Function in Solidity
Send Tokens Function in Solidity
Review: ERC20 Contract Intro
Deploy Your First Crypto Coin 🙂
Crypto Tokens Assignment
Solidity Patterns I – Cybersecurity
Obvious (but helpful) Advice – Take your time with new things
Leveling up in Solidity
Pop Quiz – Looping & Transactions in Solidity
Solution – Pop Quiz – Looping & Transactions in Solidity
Smart Contracts – Points of Failure
Should Contracts be allowed to receive funds? (Thought Experiment)
A Vulnerable Smart Contract
How To Hack A Smart Contract (Malicious Constructor Trick)
Coding In Terms of Higher Patterns
Transfer Vs Send Method in Solidity
The Withdrawal Pattern in Solidity
Exercise – Write a Withdrawal Function
Solution – How To Write a Withdrawal Function in Solidity
Discussion – What is a DApp
Solidity Patterns II – Restricted Access
Exercise – Modifier Function
Solution – Modifier Function
The Restricted Access Pattern
Only After Modifier in Solidity I
Only After Modifier in Solidity II
Exercise – Cost Restriction in Solidity
Solution – Cost Restriction in Solidity
Optional Bonus – Cost Restriction in Solidity
Learn Advanced Solidity I (Inheritance & Abstractions)
Entrance Exam For The Advanced Solidity Sections
Assignment – Share Your Entrance Exam Code Solution
Solution – Contract Visibility Advanced
Solution Contract Visibility Advanced II
An Overview on Advanced Solidity in this Course
What is Inheritance in Solidity
Exercise – Inheritance with Smart Contracts
Solution – Inheritance with Smart Contracts
What Exactly Are Events in Solidity
What Are Abstract Contracts in Solidity
Virtual & Override in Abstract Contracts
Exercise – Abstract Contract Calculator
Solution – Abstract Contract Calculator
Learn Advanced Solidity II
What are Interfaces in Solidity
Injected Web3 Interface Exercise Prerequisite
Exercise – Uniswap Interactions with Interfaces
Solution Uniswap Interactions with Interfaces
What are Libraries in Solidity
Exercise – Access Library with Using A for B Pattern
Solution – Access Library with Using A for B
Assignment – Create Your Own Solidity Library
Assemby & EVM OpCodes with Solidity
How to write Assembly in Solidity
Exercise – Use Assembly to run Byte Conversions
Solution – Use Assembly to run Byte Conversions
Overview of Error Handling in Solidity
How does Require work in Solidity
How does Revert work in Solidity
How does Assert work in Solidity
Exercise – Error Handling in Solidity
Solution – Error Handling in Solidity
Final Exercise – Build an Auction DApplication
Solution – State Variables and Constructor – Auction
Solution – Bid Function – Auction
Solution – Withdrawal Function – Auction
Solution – Final Auction Solution
Final Assignment – Additional Auction Feature Implementation
The End!
Final Concluision