# ETHEREUM BOOK ### CHAPTER 1: Introduction to ethereum Ethereum is like a giant computer that runs on the internet, but instead of being controlled by one person or company, it's decentralized, meaning lots of people all over the world contribute to running it,Ethereum is an open source, globally decentralized computing infrastructure,The Ethereum platform enables developers to build powerful decentralized applications with built-in economic functions. While providing high availability, auditability, transparency, and neutrality, it also reduces or eliminates censorship and reduces certain counterparty risks. ### Compared to bitcoin The ethereum shares many common elements with other open blockchains,For example a peer-to-peer network connecting participants,A cryptographic primitives such as digital signatures and hashes, and a digital currency (ether). Bitcoin, which has a very limited scripting language, Ethereum is designed to be a general-purpose programmable blockchain that runs a virtual machine capable of executing code. Where Bitcoin’s Script language is intentionally, constrained to simple true/false evaluation of spending conditions, Ethereum’s language is Turing complete, meaning that Ethereum can straightforwardly function as a general-purpose computer. ### Components of a Blockchain These are components of a public,open blockchain. <ul> <li> A peer-to-peer (P2P) network connecting participants <li> Messages, in the form of transactions, representing state transitions <li> A set of consensus rules, governing what constitutes a transaction. <li>A state machine that processes transactions according to the consensus rules <li>A consensus algorithm that control over the blockchain, by forcing participants to cooperate in the enforcement of the consensus rules <li> A chain of cryptographically secured blocks that acts as a journal of all the verified and accepted state transitions </ul> ### Birth Of Ethereum All great innovations solve real problems, and Ethereum is no exception. Ethereum was conceived at a time when people recognized the power of the Bitcoin model, and were trying to move beyond cryptocurrency applications. But developers faced a conundrum its they either needed to build on top of Bitcoin or start a new blockchain.For projects that needed more freedom and flexibility while staying on-chain, a new blockchain was the only option. Vitalik Buterin, a young programmer and Bitcoin enthusiast thought about it and shared it to mastercoin,While the Mastercoin team were impressed, this proposal was too radical a change to fit into their development roadmap.A few dozen people saw this early draft and offered feedback, helping Vitalik evolve the proposal. Later on a few persons(Andreas M. Antonopoulos, Dr. Gavin Wood) join him on the project but Gavin became Ethereum’s cofounder, codesigner, and CTO because he contributted and offer to help with his C++ programming skills in the building of the ethereum. Much like Satoshi, Vitalik and Gavin didn’t just invent a new technology,they combined new inventions with existing technologies in a novel way and delivered the prototype code to prove their ideas to the world. ### Ethereum and Turing Completeness The term refers to English mathematician Alan Turing, who is considered the father of computer science.Alan Turing further defined a system to be Turing complete if it can be used to simulate any Turing machine. Such a system is called a Universal Turing machine (UTM). Ethereum’s ability to execute a stored program, in a state machine called the Ethereum Virtual Machine, while reading and writing data to memory makes it a Turing-complete system and therefore a UTM. Ethereum can compute any algorithm that can be computed by any Turing machine, given the limitations of finite memory. ### From General-Purpose Blockchains to Decentralized Applications (DApps) Ethereum started as a way to make a general-purpose blockchain that could be programmed for a variety of uses. But very quickly, Ethereum’s vision expanded to become a platform for programming DApps,DApp is a web application that is built on top of open, decentralized, peer-to-peer infrastructure services A DApp is composed of at least: <ul> <li>Smart contracts on a blockchain <li>A web frontend user interface </ul> ### The Third Age of the Internet The term used to describe this evolution is web3, meaning the third "version" of the web. First proposed by Dr. Gavin Wood, web3 represents a new vision and focus for web applications: from centrally owned and managed applications, to applications built on decentralized protocols. ### Ethereum’s Development Culture What this means to you as a developer is that you must remain flexible and be prepared to rebuild your infrastructure as some of the underlying assumptions change. One of the big challenges facing developers in Ethereum is the inherent contradiction between deploying code to an immutable system and a development platform that is still evolving. You can’t simply "upgrade" your smart contracts. You must be prepared to deploy new ones, migrate users, apps, and funds, and start over. ### Why Learn Ethereum? Ethereum is a great platform for learning about blockchains and it’s building a massive community of developers, faster than any other blockchain platform.