eth-dev-reading-list
A list of links to articles, tutorials and papers that are helpful for people developing on the ethereum stack
Tutorials (beginner friendly)
- Hello world - greeter contract
- Truffle first dApp tutorial
- Smart contracts for noobs
- The Hitchhiker’s Guide to Smart Contracts in Ethereum
- Getting Up to Speed on Ethereum
- The ultimate end-to-end tutorial to create and deploy a fully decentralized Dapp in ethereum
- Ethereum for Web Developers
- Full Stack Hello World Voting Ethereum Dapp Tutorial
- Getting started with Ethereum & Solidity on Windows — part 1
- Getting started with Ethereum, Solidity & Geth — part 2
- Solidity workshop - detailed resource
- Youtube channel - detailed course on solidity language
- Web developer, welcome to Ethereum
- React & Ethereum getting started
- Build Your Ethereum Project with Create Eth App
- Designing the architecture for your ethereum application
- Crypto Zombies
- Solidity idiosyncrasies
- Ethereum Development with Go
Security
- Solidity docs security considerations
- ConsenSys best practices
- Zeppelin smart contract security
- Winners solutions of underhanded solidity contest
- Problems with tx.origin
- Golem short address token bug
- DAO hack explained
- Parity wallet hack explained
- Vitalik thoughts about security and listing some known exploits
- King of the ether secuirty checklist
- King of the ether exploit
- Guide how to audit solidity contracts
- Attacks on ethereum contracts - 30min video and detailed paper
- 2nd Parity Multisig hack
- Smashing the EVM for Fun and Extensibility
- Malicious backdoors in ethereum proxies
- What fomo3ds real exit scam might look like
General
- Ethereum wiki - white paper, yellow paper and just pure gold information about ethereum
- Ethereum docs
- How does Ethereum work, anyway?
- When to use revert/require/assert
- Introduction to events and logs
- Payment channel with 50 lines of code
- Reducing eth gas arrays -> bytes
- Understanding oracles
- Building an Oracle
- Oraclize docs
- Hash table attacks and how does mapping work
- What it takes to create a successful ICO?
- The Faults and Shortcomings of the EVM
- Economics of Fees and Gas
- Spificator a usability pattern for dapps
- Diving into EVM - series of articles
- Basic of solidity opcode and bytecode
- Upgradable smart contract
- Smart contract interaction
- Ethereum Gas, Fuel and Fees
- Calling precomplies from solidity
- Understanding ethereum trie
- Web3-by-Example - Repo of simple scripts for web3
- Ethereum in depth by OpenZeppeling - Part 1
- Ethereum in depth by OpenZeppeling - Part 2
- Ethereum explained by Pegasus team
Improvements
Scaling in general
- Conceptual description of Layer 2 scaling solutions: State channels, Plasma, Truebit
- Bridges, Plasma and UTXO tokens
Sharding
Plasma
- White paper
- Plasma explained in 10min
- Smart Contracts on Plasma - Christian Reitwiessner (65 min. presentation)
- Token contracts on Plasma
- Scaling ethereum with plasma - Joseph Poon
- Reading the plasma withepaper
- BankEx plasma implementation
- Minimum Viable Plasma specification and discussion
- OmiseGo Plasma implementation
- Central repository for Plasma implementors
State channels
Discussions
State channels
- Raiden 101
- State channels
- Fun fair turing complete state channels
- An Introduction to State Channels in Depth
- Counterfactual for dummies
- Etherships and state channels
Plasma
Proof of Stake
- Casper PoS & Smart Contract Consensus Overview (90 min. overview)
- Overview done again with new changes
- PoS FAQ
- Casper vs Tendermint
- Casper 101
Privacy
General
Ens
Ipfs
- Introduction to ipfs, overview and technical stuff
- Short 10min high level overview of IPFS
- Distributed apps with ipfs 40min lecture by creator
Tools
- Remix online IDE
- Metamask - browser plugin to conect with ethereum
- Truffle dev framework testing and running dApps
- Embark framework to develop and test dApps
- HEVM - emv for debugging
- DAPP - framework for testing and building dApps (lightweight)
- Solgraph - Generates a DOT graph that visualizes function control flow of a Solidity contract
- Solium - Linter to identify and fix style & security issues in Solidity
- Solidity linter
Explorers and Stats
- Etherscan
- Etherchain
- Trivial - token explorer
- DappBoard - The analytics platform for Ethereum's smart contracts.
- Dapp radar - list of dapps with stats
- Dapp track - list of dapps with stats
- World of contracts - Interface for interacting with smart contracts
Jobs & bounties
- Ethlance - dApp for jobs paid in eth
- Gitcoin - bounties for open source projects
- Status Open Bounties
- Repo for bounty hunts
- Solidified - Auditing platform for smart contracts