Solana, From First Principles
The throughline of this whole book is a single question: how do you build a single global state machine that runs at hardware speed without falling apart? Every part answers one piece of that question — from the account model and cryptography, through Proof of History, consensus, and parallel execution, up to the runtime, the validator pipeline, and the economics and reliability that hold it all together.
Read it in dependency order — each part only uses ideas already covered, so resist the urge to skip ahead. When you reach a Check your understanding prompt, answer it in your own words before moving on. Favor depth over speed: understanding one part deeply is worth more than skimming five.
Foundations — Why Solana Exists
- Overview
- The Serialization Ceiling
- Scale Up, Not Out
- The Eight Core Innovations
- What Hardware Speed Means
- Revision
The Account Model
- Overview
- Everything Is an Account
- Stateless Programs
- Program Derived Addresses
- Contrast with Ethereum
- Revision
Cryptography & Keys
- Overview
- Ed25519 Keypairs
- Addresses Are Public Keys
- Signing and Verification
- Program Derived Addresses
- Deriving a PDA
- Revision
Transactions & Instructions
- Overview
- Anatomy of a Transaction
- The Instruction and Account Flags
- The Message and Recent Blockhash
- Versioned Transactions and Lookup Tables
- The Compute Budget
- Revision
Proof of History — The Clock
- Overview
- The Ordering Problem
- The Hash Chain Clock
- Recording Events
- Ticks, Slots, and Cadence
- Verifying the Clock
- Clock Before Consensus
- Revision
Consensus — Tower BFT & Proof of Stake
- Overview
- Stake and the Leader Schedule
- Stake-Weighted Voting
- Tower BFT and Lockouts
- Fork Choice
- Optimistic Confirmation vs Finality
- Revision
Parallel Execution — Sealevel
- Overview
- Why the EVM Runs Serially
- Declared Footprints
- The Conflict Rule
- Scheduling into Batches
- Executing a Batch in Parallel
- The Hot Account Ceiling
- Revision
The Runtime & Programs (SBF)
- Overview
- SBF Bytecode and Programs
- The Loader and Verifier
- Syscalls and the Sandbox
- Compute Units and Limits
- Cross-Program Invocation and PDAs
- Sysvars, Clock, and Rent
- Revision
Writing Programs & Anchor
- Overview
- Native Program Structure
- Manual Account Parsing and Checks
- Anchor Program and Accounts
- PDAs and CPI
- IDL, Testing, and Localnet
- Revision
The Validator Pipeline
- Overview
- Gulf Stream — Mempool-less Forwarding
- TPU — The Leader’s Assembly Line
- PoH and Banking — Stamping Order into the Stream
- Turbine — Block Propagation as a Tree
- TVU — The Receiving Side
- Revision
Fees, Rent & Economics
- Overview
- Lamports and the SOL Unit
- Transaction Fees and Local Fee Markets
- Rent and Rent Exemption
- Inflation and Staking Rewards
- Validator Economics and Vote Costs
- Revision
The Ecosystem — SPL, DeFi & NFTs
- Overview
- SPL Token and Associated Token Accounts
- Orderbook DEXs vs AMMs
- Metaplex NFTs
- Compressed NFTs and State Compression
- Protocols and Wallets
- Revision
Reliability — Outages & Congestion
- Overview
- Why Solana Can Halt
- No Fee Market and Spam Amplification
- Forwarding Storms and Resource Exhaustion
- The Outage Timeline
- QUIC and Stake-Weighted QoS
- Local Fee Markets and Priority Fees
- Revision
Build Your Own Solana Runtime in Rust
- Overview
- The Throughput Problem
- Proof of History
- Accounts and Stateless Programs
- The Account-Locks Scheduler
- Assembling the Runtime
- Revision
Advanced & Frontier