EVM Developer Trends
Understanding Contract Development Patterns on Ethereum
Who Deploys Contracts?
- Contracts can deploy contracts!
"Factories" like UniswapV2Factory allow anyone to create liquidity pools for their tokens permissionlessly.
- Central Exchanges
Coinbase (Commerce) and Kraken deploy contracts to more smoothly manage their customer deposits and avoid the complexity of managing 100,000s of private keys.
- "Smart" Wallets
Gnosis, the premier "Smart Contract Wallet" factory enables people to secure or manage assets via a contract that requires multiple parties to sign off on each transaction.
- Individual Developers
100s of new protocols, NFTs, Tokens, and bots are deployed by un-labeled individuals every day.
What kinds of Contracts are there?
- New Tokens
Whether NFTs, DeFi tokens, or receipt tokens (e.g., tokens that track deposits); both transferrable and non-transferrable tokens get made every day.
Some are new, some are wrappers or synthetics of known tokens (like USDC getting bridged by Axelar into axlUSDC).
- Liquidity Pools
Developers of new tokens often deploy liquidity in Uniswap v2, Sushiswap, Uniswap v3, Curve, among other Decentralized Exchanges (DEX). They do this by calling the Factory
contract to request a new liquidity pool to enable trading of their token.
- Protocols
Protocols deploy numerous (modular) contracts to manage how users interact with their apps and how the apps manage and transmit data and tokens across contracts. They may even themselves new contracts like NFTs or Smart Wallets.
- Bots
Similar to protocols managing data between their apps, developers make bots to interact with multiple protocols at once. For example, arbitrage bots that allow the developer to quickly trade assets on multiple liquidity pools to close price gaps and extract profit.