Episode 6 — Scaling Reliability Microservices Web3 / 6.10 — Web3 Basics
6.10.a — Understanding Web3
In one sentence: Web3 is the vision of a decentralized internet where users read, write, and own their data and digital assets through blockchain technology, removing the need for centralized intermediaries like Google, Facebook, or banks.
Navigation: <- 6.10 Overview | 6.10.b — Blockchain Fundamentals ->
1. What Is Web3?
Web3 (sometimes written "Web 3.0") is a broad term describing the next generation of internet applications built on decentralized protocols — primarily blockchains. Instead of relying on centralized servers owned by corporations, Web3 applications run on peer-to-peer networks where no single entity has control.
The core idea is simple: shift power from platforms to users.
Traditional Web (Web2):
You → Facebook's servers → Facebook stores your data → Facebook profits from your data
Web3:
You → Decentralized protocol → YOU own your data → YOU control your digital assets
Web3 is not a single technology — it's an ecosystem of technologies, protocols, and philosophies that aim to rebuild internet services on decentralized infrastructure.
2. The Web Evolution: Web1 -> Web2 -> Web3
Understanding Web3 requires understanding what came before it.
Web1: The Read-Only Web (1990-2004)
The original internet was a collection of static web pages connected by hyperlinks. Content was created by a small number of publishers, and the vast majority of users were passive consumers.
Characteristics of Web1:
- Static HTML pages
- Read-only for most users
- Content created by few, consumed by many
- Directory-based navigation (Yahoo, DMOZ)
- Personal homepages (GeoCities)
- Minimal interactivity
- Open protocols (HTTP, SMTP, FTP)
- Decentralized by nature (anyone could host a server)
Key insight: Web1 was actually decentralized — anyone could run a web server. The problem was that creating content required technical knowledge (HTML, FTP, server administration).
Web2: The Read-Write Web (2004-2020)
Web2 solved the content creation problem by building platforms that made it easy for anyone to publish. Social media, blogs, video sharing, and ride-hailing apps emerged. The trade-off: these platforms centralized control.
Characteristics of Web2:
- Dynamic, interactive applications
- User-generated content (social media, blogs, videos)
- Mobile-first experiences
- Cloud computing (AWS, GCP, Azure)
- Platform economy (Uber, Airbnb, DoorDash)
- Data harvesting and advertising business models
- APIs and developer ecosystems
- Centralized: platforms own user data and set the rules
Key insight: Web2 democratized content creation but centralized control. Facebook, Google, Amazon, and Apple became gatekeepers. If Facebook bans your account, you lose access to your network, photos, and content. If Apple rejects your app, you can't reach iPhone users.
Web3: The Read-Write-Own Web (2020+)
Web3 aims to combine the openness of Web1 with the interactivity of Web2, while adding ownership through cryptographic tokens and decentralized protocols.
Characteristics of Web3:
- Decentralized applications (DApps) on blockchains
- User-owned data and digital assets
- Native payments (cryptocurrency)
- Trustless interactions (code replaces intermediaries)
- Token-based governance (DAOs)
- Permissionless access (no gatekeepers)
- Composable protocols ("money legos")
- Identity through wallets, not accounts
Side-by-Side Comparison
| Aspect | Web1 | Web2 | Web3 |
|---|---|---|---|
| Era | 1990-2004 | 2004-2020 | 2020+ |
| Mode | Read | Read-Write | Read-Write-Own |
| Content | Static pages | User-generated | User-owned |
| Identity | Social accounts | Wallet addresses | |
| Payments | Credit cards | PayPal, Stripe | Crypto, tokens |
| Backend | Own servers | Cloud platforms | Blockchain nodes |
| Data storage | Server files | Centralized DBs | Decentralized (IPFS, on-chain) |
| Trust model | Trust server owner | Trust platform | Trust code/math |
| Governance | Webmasters | Corporate boards | DAOs, token holders |
| Money model | E-commerce | Ads, subscriptions | Tokens, DeFi |
3. Core Principles of Web3
3.1 Decentralization
Instead of data and logic living on servers controlled by one company, Web3 distributes them across thousands of nodes. No single point of failure, no single point of control.
Centralized (Web2): Decentralized (Web3):
┌─────────┐ ┌───┐ ┌───┐ ┌───┐
│ Company │ │ N │ │ N │ │ N │
│ Server │ └─┬─┘ └─┬─┘ └─┬─┘
└────┬────┘ │ │ │
┌────┼────┐ ┌──┴──────┴──────┴──┐
│ │ │ │ Shared Protocol │
U1 U2 U3 └──┬──────┬──────┬──┘
│ │ │
U1 U2 U3
3.2 Trustlessness
You don't need to trust a company or individual to act honestly. Smart contracts execute automatically based on predefined rules. The code is the arbiter.
// Web2: You trust PayPal to send your money
// PayPal could freeze your account, reverse transactions, etc.
await paypal.sendPayment({ to: "seller@email.com", amount: 100 });
// Web3: The smart contract executes automatically
// No one can stop or reverse it (including the developers)
await escrowContract.releaseFunds({ to: sellerAddress, amount: ethers.parseEther("0.05") });
3.3 Permissionlessness
Anyone can participate without approval from a central authority. You don't need permission to create a wallet, deploy a smart contract, or build a DApp.
Web2 barriers:
- Apple App Store approval (can take weeks, can be rejected)
- Stripe KYC requirements (can deny your business)
- AWS account approval (can ban you)
Web3 permissionless:
- Create a wallet: instant, no ID required
- Deploy a contract: pay gas, done
- Build a DApp: open-source tools, no gatekeepers
- Access DeFi: connect wallet, start using
3.4 Native Payments
Web3 has money built into the protocol layer. Every blockchain has a native currency, and tokens can represent any kind of value. No need for Stripe, PayPal, or bank integrations.
Web2 payment flow:
User → Stripe → Bank → Merchant Bank → Merchant
Time: 2-5 business days for settlement
Fees: 2.9% + $0.30 per transaction
Restrictions: geography, currencies, business type
Web3 payment flow:
User wallet → Smart contract → Recipient wallet
Time: seconds to minutes (depends on blockchain)
Fees: gas fee (variable, can be < $0.01 on L2s)
Restrictions: none (permissionless)
4. How Web3 Differs from Traditional Web Development
If you're coming from a Web2 backend engineering background, here are the key mental model shifts:
| Traditional Web Dev | Web3 Dev |
|---|---|
| Database stores state | Blockchain stores state |
| Server executes logic | Smart contract executes logic |
| Username/password for auth | Wallet signature for auth |
| REST API calls | RPC calls to blockchain nodes |
| Free to write data | Costs gas to write data |
| Private by default | Public by default (all on-chain data is visible) |
| Mutable — can update/delete | Immutable — data is permanent |
| Fast (milliseconds) | Slow (seconds to minutes for confirmation) |
| Centralized deployment | Decentralized deployment |
| You control the server | No one controls the blockchain |
Traditional App Stack: Web3 App Stack:
Frontend (React) Frontend (React)
│ │
▼ ▼
REST API (Express) ethers.js / Web3.js
│ │
▼ ▼
Database (PostgreSQL) Smart Contract (Solidity)
│ │
▼ ▼
Server (AWS EC2) Blockchain (Ethereum)
│
▼
IPFS (decentralized storage)
5. Current State of Web3 Adoption
Web3 is in its early stages — comparable to the internet in the late 1990s. Some areas have found clear product-market fit, while others remain experimental.
Where Web3 Is Working
| Area | What It Does | Adoption Level |
|---|---|---|
| DeFi | Decentralized lending, borrowing, trading | High — billions in TVL |
| Stablecoins | Dollar-pegged digital currencies (USDC, USDT) | High — real-world use |
| Cross-border payments | Sending money globally without banks | Growing — especially in developing nations |
| NFTs (art/collectibles) | Provable digital ownership | Moderate — volatile market |
| DAOs | Community-governed organizations | Moderate — governance experiments |
| Identity | Self-sovereign identity (ENS, DID) | Early — but promising |
Where Web3 Is Struggling
| Area | Challenge |
|---|---|
| User experience | Wallets, gas fees, and seed phrases are confusing for mainstream users |
| Scalability | Base-layer blockchains are slow compared to centralized systems |
| Regulation | Uncertain legal framework in most countries |
| Environmental concerns | Proof of Work consumes significant energy (though PoS is better) |
| Scams and fraud | Unregulated space attracts bad actors |
6. Criticisms and Limitations
A balanced understanding requires acknowledging Web3's legitimate criticisms:
Technical Limitations
- Scalability — Ethereum processes ~15 transactions per second. Visa handles ~65,000. Layer 2 solutions help but add complexity.
- Latency — Blockchain transactions take seconds to minutes. Traditional databases respond in milliseconds.
- Cost — Writing data on-chain costs gas. During network congestion, a simple token transfer can cost $50+ on Ethereum mainnet.
- Immutability as a bug — If you deploy a buggy smart contract, you can't simply "fix" it. Upgradeable patterns exist but add complexity.
- Data privacy — All on-chain data is public. Not suitable for sensitive personal data.
Philosophical Criticisms
- "Not actually decentralized" — Many DApps depend on centralized infrastructure (Infura, Alchemy, AWS for frontends).
- "Solutions looking for problems" — Critics argue most Web3 use cases work fine with centralized solutions.
- "Financialization of everything" — Token incentives can distort behavior and attract speculation over genuine use.
- "Complexity for users" — Managing private keys, understanding gas, and navigating wallets is a terrible UX compared to Web2.
The Pragmatic View
As a backend engineer, the pragmatic approach is: understand the technology, recognize where it genuinely solves problems (cross-border payments, censorship resistance, programmable money), and avoid the hype. Not every application needs to be on a blockchain, but some applications are fundamentally better with one.
7. Real-World Web3 Use Cases
7.1 DeFi (Decentralized Finance)
Traditional finance rebuilt on smart contracts. No banks, no intermediaries.
Traditional lending:
You → Bank application → Credit check → Wait days → Bank lends you money
Bank earns the interest. You have no choice in rates.
DeFi lending (Aave, Compound):
You → Connect wallet → Deposit collateral → Borrow instantly
Interest rates set by supply/demand algorithms.
Lenders earn interest directly. Transparent. Permissionless.
7.2 NFTs (Non-Fungible Tokens)
Unique digital assets with provable ownership on the blockchain.
Beyond art — real NFT use cases:
- Event tickets (no counterfeiting, resale royalties)
- Domain names (ENS: yourname.eth)
- Gaming items (truly owned by players, tradeable across games)
- Music royalties (direct artist-to-fan, programmable royalties)
- Real estate deeds (tokenized property ownership)
- Academic credentials (verifiable, tamper-proof diplomas)
7.3 DAOs (Decentralized Autonomous Organizations)
Organizations governed by smart contracts and token-holder votes instead of corporate boards.
Traditional company:
Board of directors → CEO → Managers → Employees
Decisions made behind closed doors.
DAO:
Token holders → Propose changes → Vote on-chain → Smart contract executes
Transparent. Every vote is recorded on the blockchain.
Examples: MakerDAO, Uniswap governance, Gitcoin
7.4 Decentralized Identity
Users control their own identity instead of relying on Google/Facebook login.
Web2 identity:
"Sign in with Google" → Google controls your identity
Google can disable your account → You lose access everywhere
Web3 identity:
Connect wallet → Cryptographic proof you are you
ENS name (vitalik.eth) → Human-readable blockchain address
Verifiable credentials → Prove things about yourself without revealing everything
8. How Web3 Relates to Backend Engineering
As a backend engineer, Web3 introduces new concepts but many skills transfer directly:
Skills That Transfer
REST APIs → JSON-RPC calls to blockchain nodes
Database schemas → Smart contract state variables
Server deployment → Contract deployment
Authentication → Wallet signature verification
Payment integration → Native crypto payments
Event handling → Blockchain event listeners
Caching → Indexing on-chain data (The Graph)
New Skills to Learn
Solidity → Smart contract language
ethers.js / Web3.js → JavaScript blockchain libraries
Hardhat / Foundry → Smart contract development frameworks
IPFS → Decentralized file storage
Wallet integration → MetaMask, WalletConnect
Gas optimization → Minimizing transaction costs
Security auditing → Preventing exploits (reentrancy, overflow)
A Simple Web3 Interaction in JavaScript
// Reading data from the Ethereum blockchain using ethers.js
import { ethers } from 'ethers';
// Connect to a public Ethereum node (read-only)
const provider = new ethers.JsonRpcProvider('https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY');
// Get the current block number
const blockNumber = await provider.getBlockNumber();
console.log('Current block:', blockNumber);
// Get the ETH balance of an address
const balance = await provider.getBalance('0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045');
console.log('Balance:', ethers.formatEther(balance), 'ETH');
// Read data from a smart contract (USDC token)
const usdcAddress = '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48';
const usdcAbi = ['function totalSupply() view returns (uint256)'];
const usdcContract = new ethers.Contract(usdcAddress, usdcAbi, provider);
const totalSupply = await usdcContract.totalSupply();
console.log('USDC total supply:', ethers.formatUnits(totalSupply, 6));
9. The Web3 Technology Stack
┌────────────────────────────────────────────────────────────┐
│ APPLICATION LAYER │
│ DApps, DeFi protocols, NFT marketplaces, DAOs │
├────────────────────────────────────────────────────────────┤
│ INTERACTION LAYER │
│ ethers.js, Web3.js, wagmi, MetaMask, WalletConnect │
├────────────────────────────────────────────────────────────┤
│ SMART CONTRACT LAYER │
│ Solidity, Vyper, Rust (Solana) — self-executing code │
├────────────────────────────────────────────────────────────┤
│ CONSENSUS LAYER │
│ Proof of Stake, Proof of Work — how nodes agree │
├────────────────────────────────────────────────────────────┤
│ NETWORK LAYER │
│ Ethereum, Polygon, Solana, Arbitrum, Optimism │
├────────────────────────────────────────────────────────────┤
│ STORAGE LAYER │
│ IPFS, Arweave, Filecoin — decentralized file storage │
├────────────────────────────────────────────────────────────┤
│ INFRASTRUCTURE LAYER │
│ Alchemy, Infura, QuickNode — node-as-a-service providers │
└────────────────────────────────────────────────────────────┘
10. Key Takeaways
- Web3 is the read-write-own internet — built on blockchains, smart contracts, and cryptographic tokens to give users ownership of their data and digital assets.
- Web1 -> Web2 -> Web3 — each era solved the previous era's problems but introduced new trade-offs. Web3 trades convenience and speed for decentralization and ownership.
- Four core principles — decentralization, trustlessness, permissionlessness, and native payments define the Web3 philosophy.
- Real use cases exist — DeFi, stablecoins, and cross-border payments have genuine product-market fit. Other areas are still experimental.
- Legitimate criticisms — scalability, UX, regulation, and "solutions looking for problems" are valid concerns that the ecosystem is working to address.
- Backend skills transfer — if you understand APIs, databases, and authentication, you can learn Web3 development. The mental models shift, but the engineering fundamentals remain.
Explain-It Challenge
- A non-technical friend asks "what is Web3 and why should I care?" Explain it using an analogy they would understand (e.g., renting vs owning a house).
- Your CTO asks whether the company should "go Web3." What questions would you ask to determine if blockchain is the right tool for your product?
- Why was Web1 technically decentralized but practically centralized, and how does Web3 try to be both technically and practically decentralized?
Navigation: <- 6.10 Overview | 6.10.b — Blockchain Fundamentals ->