(Mastering) Solidity, the Ethereum Programming Language

A Practical Developer Guide
What you'll learn:
Have a basic understanding of the Ethereum blockchain Know about tools that are used to program in Solidity (Hardhat and Remix) Have a quick introduction to Solidity Know how to interact with smart contracts through the ethers and web3 JavaScript libraries Know about wallets (MetaMask and WalletConnect) Know how to set up a local test blockchain and how to interact with a blockchain network Know how to integrate wallets in and how to interact with the blockchain from a user interface Understand the lexical elements of Solidity Understand how values are stored on the blockchain
Description:
This course aims to give an overview of what you need to know to program in Solidity.
The course currently consists of three parts.
In the first part, I explain some basic blockchain concepts.
In the second part, I explain tools that are used to develop blockchain applications.
This part explains the development tools Hardhat and Remix.
You will see Solidity code for making your own cryptocurrency.
You will see the JavaScript libraries ethers.js and web3.js that are used to interact with the Ethereum blockchain.
You will see how you can connect a wallet with a blockchain application. I will show MetaMask, which is a popular wallet and also WalletConnect, which acts as a bridge to connect multiple kinds of wallets with an application. I will also show how you can transfer cryptocurrencies in MetaMask.
You will see how to set up a local test blockchain on your computer and also how to interact with an Ethereum testnet on the Internet.
You will see how you can register and configure an Ethereum Name.
In the third part, I show how you can make a user interface that interacts with the Ethereum blockchain, it shows
how to retrieve the address of a smart contract through an Ethereum Name
how to read data from the blockchain through a default provider
how to connect MetaMask or a wallet through WalletConnect with the user interface
how to execute functions that write data to the blockchain through a connected wallet
how to search for events emitted by a smart contract
Requirement:
I try to make this course as accessible as possible and prior programming experience is not strictly required, but certainly useful. For Chapters 3 - 5 that explain tools to work with Solidity, it would be good to be familiar with JavaScript. For Chapter 6 that shows how to make a user interface that interacts with a smart contract deployed on the Ethereum blockchain, it would be good to be familiar with JavaScript and other web technologies