Ethereum is a platform that makes it possible for any developer to write and distribute next-generation decentralized applications.

Traditional App v/s DApp:

Client ↔ Server

Special Browser ↔ DApp ↔ Web3 API ↔ Ethereum Network

What is a DApp:

Decentralized Application is a program which is run by many people which either uses or creates a decentralized network for some specific purpose.

Features of DApps:

Open Source, Decentralized, Incentivized, Algorithm/protocol.

Building blocks of DApps:

Ethereum Network → Smart Contract Storage → DApp Front End.

Web3 Tech Stack:

Mist Browser → Decentralized Applications → SWARM (storage), WHISPER (Messaging), EVM (Consensus) → Hardware Clients → INTERNET.

Solidity: