DeFi (short for "decentralized finance") refers to a variety of financial applications built on blockchains. DeFi applications are smart contracts that allow participants to participate in financial actions like borrowing and lending, without needing intermediaries or trusted third-parties like a bank or broker.
The key benefit to moving 99% of finance on to a blockchain is that it allows regular people to participate in the financial system in ways they can't today. For example, most people don't know what a market maker is, even if they did know, they'd have a hard time becoming one. Via Uniswap, anyone can become a market maker.
Trading protocols let you swap one ERC20 token for another.
Uniswap - A Unique Exchange - A good introduction on fundamental ideas behind Uniswap
Uniswap Explained - How to use Uniswap with screenshots
How it works
Market Making Returns
(Optional) A good deal for liquidity providers? - Explains impermanent loss
(Optional) Understanding Uniswap Returns
(Optional) Introducing UNI
(Optional) Uniswap's retroactive airdrop vote put free money on the campaign trail - about airdrop and governance
- Swap some ETH for another ERC20 token (preferably Stablecoin like DAI) on Uniswap
- Add liquidity to a Uniswap pool
- (Optional) Remove liquidity from the Uniswap pool
- (Optional, advanced) Create your own ERC20 token, and add it to Uniswap
Curve.fi is an automated market maker similar to Uniswap, but trying to fix some of the issues with how Uniswap works. Please read the Uniswap section first.
What is yCRV: A comprehensive guide - also explains yDAI, yUSDC, yUSDT, yTUSD
Swap some stablecoins on curve.fi, e.g. DAI to USDC. What's the pros and cons vs. using Uniswap?
(Optional) Provide liquidity to a pool (e.g. Pool #0 Compound) on curve.fi - select desired pool, go to "deposit" tab. Compare this to providing liquidity to a uniswap pool.
To boost your CRV rewards, before deposit, you can use calculator to identify veCRV amount for 2.5x, mint veCRV with locker (must go buy CRV); and press "Deposit and stake in gauge" while deposit.
Withdraw liquidity from a pool - select pool, go to "withdraw" tab.
How to make money with Balancer - with Screenshots
How to create your own Balancer pool -with screenshots
pools.vision - a pool explorer for balancer liquidity pools
(Optional) Calculating value, impermanent loss and slippage for Balancer pools - math
(Optional) Incident with non-standard ERC20 deflationary tokens - how Balancer got hacked
- (Optional) Add liquidity to a Balancer pool and earn fees
A graphic Guide to Compound - An overview
Compound docs - Worth going through, especially the guides
How to Earn Interest and Borrow Ethereum Assets - With Screenshots
Compound calculator - Shows you how much $COMP would be distributed based on tokens supplied and borrowed.
(Optional) How to maximize yield farms with Instadapp
As part of this decentralization process, Compound upgraded their smart contracts to shift from admin control to community governance. This is good example of how smart contracts are upgraded in production: worth looking into ComptrollerInterface.sol; Comptroller.sol, ComptrollerG1.sol, ComptrollerG2.sol - those are for different versions of logics; ComptrollerStorage.sol - this has the corresponding three versions of storage.
For another smart contract upgrade example, see USDC v2: upgrading a multi-billion dollar ERC-20 token.
In Compound, proposals are executable code, not suggestions for a team or foundation to implement. Once a proposal passed, it is queued in the Timelock, and can be executed after a grace period. See the smart contract code and docs.
- Supply some assets on Compound to start earning interest, and borrow some assets, calculate how much $COMP you are earning using compound calculator. Can do this on a testnet.
- (Optional) Aave is another lending protocol. Deposit some ETH into Aave and start earning interest on your deposit from borrowers. Note: Given the amounts you'd be likely to deposit, your transaction fees will likely be much greater than the interest you earn. This quest is primarily for education purposes—don't expect it to earn you a substantial amount of crypto!
UMA's Data Verification Mechanism - oracle
(Optional) What is Synthetix and how does it work?
My notes on Chainlink - a talk I gave on explaining how Chainlink works (very basic)