11 KiB
Required Readings
This document serves as an outline of the required readings to catch up with and contribute to the sharding implementation for the Ethereum protocol. Whether you are an expert at Ethereum and want to contribute to sharding, or are a beginner and want to take the time to learn the concepts, this will serve as a comprehensive set of readings and links to get you up to speed.
Required Blockchain & Ethereum Knowledge
Blockchain Fundamentals
- What is Blockchain Technology? A Step by Step Guide for Beginners
- What is Bitcoin? A Step by Step Guide for Beginners
- The Science Behind Cryptocurrencies' Cryptography
- The Ins and Outs of Cryptographic Hash Functions
- Blockchain Glossary from A-Z
- Blockchain Addresses 101: What Are They?
Ethereum
-
Ethereum Client Implementations
- Geth (known also as go-ethereum) is the Golang implementation of the Ethereum protocol
- Parity the fastest and most performant implementation - written in Rust
- Trinity new project implements Ethereum in Python
- Cpp-Ethereum a C++ implementation of Ethereum
Consensus
- Bitcoin Original White Paper
- Basic Primer: Blockchain Consensus
- Understanding Blockchain Fundamentals: Byzantine Fault Tolerance
- Understanding Blockchain Fundamentals: Proof of Work vs. Proof of Stake
- Proof of Work vs. Proof of Stake
- Proof of Stake FAQ
- How Does Ethereum Mining Work?
- ETHash Algorithm
Ethereum Virtual Machine
- What is the Ethereum Virtual Machine?
- Ethereum VM
- Ethereum Protocol Subtleties
- Awesome Ethereum Virtual Machine
Ethereum-flavored WebAssembly
- Ewasm background, motivation, goals, and design
- The current Ewasm spec
- Latest Ewasm community call including live demo of the testnet
- Why eWASM? by Alex Beregszaszi
- Panel: entire eWASM team discussion and Q&A
- Ewasm community meetup at ETHBuenosAires
Smart Contracts, dApps, and Cryptoeconomics
- What are dApps? The New Decentralized Future
- How to Learn Solidity
- Ethereum Development Tutorial
- What is Cryptocurrency Game Theory?
- What is Cryptoeconomics?
- Mechanism Design for Cryptoeconomic Applications
- Cryptoeconomics: An Introduction
Peer-to-Peer Networking
- Ethereum Peer to Peer Networking
- How Does the P2P on Ethereum Work?
- How Does Kademlia Work?
- Kademlia Protocol
Required Sharding Knowledge
With respect to knowing enough about sharding, we will cover the requirements for both part-time and core contributors to Prysmatic Labs.
For Part Time Contributors
- Blockchain Scalability: Why?
- What Are Ethereum Nodes and Sharding
- How to Scale Ethereum: Sharding Explained
- Sharding FAQ
- Sharding Introduction: R&D Compendium
For Core Contributors
Fundamentals
- Blockchain Scalability: Why?
- What Are Ethereum Nodes and Sharding
- How to Scale Ethereum: Sharding Explained
- Sharding FAQ
- Sharding Introduction: R&D Compendium
After reading the Sharding FAQ, it is important to understand the minimal implementation notes and the research that went into writing it up.
Serenity Concepts and Notes
- Sharding Concepts Mental Map
- Taiwan Sharding Workshop Notes
- Sharding Research Compendium
- Torus Shaped Sharding Network
- General Theory of Sharding
- Sharding Design Compendium
Serenity Research Posts in Order
- Sharding v2.1 Spec
- Casper/Sharding/Beacon Chain FAQs
- RETIRED! Sharding Phase 1 Spec
- Exploring the Proposer/Collator Spec and Why it Was Retired
- The Stateless Client Concept
- Shard Chain Blocks vs. Collators
- Ethereum Concurrency Actors and Per Contract Sharding
- Future Compatibility for Sharding
- Fork Choice Rule for Collation Proposal Mechanisms
- State Execution
- Fast Shard Chains With Notarization
- RANDAO Notary Committees
- Safe Notary Pool Size
- Cross Links Between Main and Shard Chains
Serenity Talk from Conferences & Meet Ups in Order
- Sharding Presentation by Vitalik from IC3-ETH Bootcamp
- Latest Research and Sharding by Justin Drake from Tech Crunch
- Beacon Casper Chain by Vitalik and Justin Drake
- Proofs of Custody by Vitalik and Justin Drake
- So You Want To Be a Casper Validator by Vitalik
- Ethereum Sharding from EDCon by Justin Drake
- Casper CBC and Sharding by Vlad Zamfir
- Casper FFG in Depth by Carl
- Ethereum & Scalability Technology from Asia Pacific ETH meet up by Hsiao Wei