Terminology
Terminology
- Web3: In general means blockchain tech with some purpose
- Ethereum: The blockchain we will we be developing with
- Provider: From Ethers docs:
"A Provider abstracts a connection to the Ethereum blockchain, for issuing queries and sending state changing transactions."
- Contract: This is code written in Solidity that has been compiled and deployed onto a network. It has an address that is no different than a wallet address.
- Wallet: The blockchain, its a private + public key combo (really you just need a private key).
- BTW: The ability to tell someone that you know something that they likely
don't, or you use some obscure technology
- Let me give you an example:
- I use vim, BTW.
- I type with dvorak, BTW.
- I write CLI programs with Rustlang, BTW
- Let me give you an example:
Technology
- ethers:
import { ethers } from "ethers";
. This is lib that abstracts the complication of communication. - hardhat: Its backbone of any project these days. It provides compiling,
testing, and deployment support.
- When you get a
getContractFactory("HelloWorld")
it actually just loads the file from the json build file.
- When you get a
- metamask: Its a browser plugin for wallets. "The Defacto Standard"
You will notice that in the code on the web I don't reference hardhat. That is because hardhat is a support lib.
Whiteboard time
Boxes and arrows how ethereum development effectively works
Questions?
- Yes we will make another contract right after this.
- I am not going to be able to answer everything.