# A Busy Engineer's Guide to Learning Ethereum - This is a learning path geared towards getting: - Practical, job-applicable skillsets that can put food on the table - In as little time as possible (i.e. nights/weekends) - Broad but _shallow_ "tree of knowledge" (i.e. your responsibility to go deep) - Practical skills and learn-by-building are prioritized - You will be forced to research & learn theory along the way - Basic coding required (i.e. bootcamp or programming class) ## Step 1: Learn the EVM by Building We will start with the Ethereum and the EVM first, as it is the most established ecosystem with largest number of jobs > 0. Basic Familiarity with Web3 as an end-user 1. Set up Metamask, interact with a few dApps, understand what is going on 2. Understand what is happening from a practical and theoretical standpoint (i.e. open-access blockchains, credibly neutral network, programmable money, composability) ### Basic Smart Contracts (2-3 days) - Courses - [Cryptozombies](https://cryptozombies.io/) - [Intro to Remix & Solidity](https://www.youtube.com/watch?v=JWJWT9cwFbo) - Outcomes - [ ] Can write simple smart contract - [ ] Can write complex smart contract (interface, etc) - [ ] Can use Remix to deploy smart contract - [ ] Can write simple Web3.js to call smart contract ### Smart Contract Dev Environment (2-3 days) - Courses - [Nader's Hardhat & Ethers.js Tutorial](https://www.freecodecamp.org/news/full-stack-ethereum-development/) ([1 hour Video](https://www.youtube.com/watch?v=a0osIaAOFSE)) - Outcomes - [ ] Can deploy a smart contract using DevTool (e.g. Hardhat) - [ ] Can call smart contracts from frontend (e.g. Ethers.js) - [ ] Can differentiate between Testnet and Mainnet ### Learn by Building (2-3 weeks) - Courses - [Speedrun Ethereum](https://speedrunethereum.com/) - 7 challenges - (Alternative) [Buildspace](https://buildspace.so) - [1](https://buildspace.so/p/CO02cf0f1c-f996-4f50-9669-cf945ca3fb0b), [2](https://buildspace.so/p/CO961ddb5f-f428-4608-9949-a9a2f461eb3f), [3](https://buildspace.so/p/COb520aae3-7925-42f4-a5e7-eaf718933766) - (Optional) [FreeCodeCamp Web3 Course](https://www.youtube.com/watch?v=gyMwXuJrbJQ) - 32 hours - Outcome - [ ] Can build a simple DeFi, NFT or DAO dApp - [ ] Can reference other DeFi, NFT or DAO primitives (i.e. composability) ### Smart Contract Security (2-3 weeks) > Smart Contract Security will force you to learn the underlying theory and how Ethereum works under the hood, by reading up on resources - Courses - [Ethernaut](https://ethernaut.openzeppelin.com/) - [DN's Ethernaut Walkthroughs](https://medium.com/hackernoon/ethernaut-lvl-1-walkthrough-how-to-abuse-the-fallback-function-118057b68b56?source=user_profile---------26----------------------------) - Theory Resources - [Ethereum.org Docs](Ethereum.org) - [Mastering Ethereum](https://github.com/ethereumbook/ethereumbook) - [Ethereum Beige Paper](https://github.com/chronaeon/beigepaper/blob/master/beigepaper.pdf) (human readable version of the [Yellow Paper](https://ethereum.github.io/yellowpaper/paper.pdf)) - [Ethereum EVM Illustrated](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf) - Outcomes - [ ] Basic ability to write secure smart contracts - [ ] Basic understanding of how Ethereum works under the hood (data structures, cryptography, etc) - [ ] Basic "Tree of Knowledge" framework of knowledge to carry on the years ahead 3. Strong framework of knowledge to carry on for the years ahead ## Step 2: How Blockchains Work - Courses - [Patrick McCorry's Cryptocurrency Class 2022](https://cryptocurrencyclass.github.io/) - Outcomes - [ ] Buy Patrick a beer ## Step 3: Emergent Topics - Ethereum Beacon Chain (PoW to PoS) - Scaling (L2s and Rollups) - Cross-chain issues and Bridges - Blockchain builders: Cosmos, Substrate, - Alternate Execution Environments: Solana ## Get a Job - Gitcoin - Web3 Salaries