This document provides an overview of smart contract development on Ethereum, including:
1) It describes the high-level architecture of Ethereum DApps and how they differ from traditional web apps.
2) It introduces useful tools for Ethereum development like testrpc, dapple, and truffle.
3) It walks through writing and deploying a simple smart contract in Solidity and interacting with it programmatically using Web3.