Core ideas
- Accounts hold all state; programs are stateless and read/write accounts passed to them
- Programs are owned by a loader; only an account's owner program can change its data
- Transactions list every account they touch up front, which is what allows parallel execution
- Compute units limit how much work an instruction can do
- PDAs are addresses derived from seeds and a program ID, with no private key
- CPI lets one program call another
To learn
- Rent and account sizing
- Token Program vs Token-2022 (extensions)
- Fees, priority fees and compute budgets
- Validator clients and how upgrades ship (SIMDs)
See the changelog for updates.