Ethereum
💡 Tasks
- From the Ethereum documentation (docs) and Upgrading Ethereum (eth2) read:
- Networks (docs)
- Consensus mechanisms (docs)
- Sections 2.3.1, 2.3.2 (eth2)
- (optional) Sections 2.3.3 and 2.3.4 (eth2)
- Storage (docs)
- Bridges (docs)
- MEV (docs)
- Oracles (docs)
- Scaling (docs)
- Data Availability (docs)
- Section 2.9 along with the subsections (eth2)
- From the Solidity documentation read:
- Inline Assembly
- Layout of State Variables in Storage and Transient Storage
- Layout in Memory
- Layout of Call Data
- Security Considerations
- List of Known Bugs
- Yul
- From Solidity by Example read:
- Events Advanced
- Inheritance
- Shadowing Inherited State Variables
- Calling Parent Contracts
- Visibility
- Interface
- Sending Ether - Transfer, Send, and Call
- Fallback
- Call
- Delegatecall
- Function Selector
- Library
- Gas Optimizations
- Bitwise Operators
- Unchecked Math
- Assembly Variable
- Assembly Conditional Statements
- Assembly Loop
- Assembly Error
- Assembly Math
- Merkle Tree
- Iterable Mapping
- Time Lock
- Assembly Binary Exponentiation
- Foundry documentation
- Keep the docs open as a companion when working, make sure to be comfortable with the following sections:
- Section 13
- Section 14
- Section 15
- Section 16
- Read and replicate examples from :
- Section 25
- Section 26
- Section 27
- Section 28
- For testing read:
- Section 9
- Section 10
- Section 11
- From Openzepplin docs read:
- Extending Contracts
- Using with Upgrades
- Backwards Compatibility
- Access Control
- Api -> Proxy
- Solve at least 10 The Ethernaut challenges
- Make sure to use an updated version of Solidity (^0.8)
- Solve at least 10 solidity/agnostic quests or campaigns of choice from Node Guardians
- (Optional) Skim through rollup docs