Skip to content
This repository has been archived by the owner on May 17, 2022. It is now read-only.

Style update #307

Open
wants to merge 9 commits into
base: master
Choose a base branch
from
9 changes: 5 additions & 4 deletions source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,11 @@ Ethereum Homestead Documentation
:alt: ethereum-logo
:align: center

This documentation is the result of an ongoing collaborative effort by
volunteers from the Ethereum :ref:`community`. Although it has not been
authorized by the :ref:`foundation`, we hope you will find it useful.
We welcome new :ref:`contributors`.
The Ethereum Homestead Documentation describes the Ethereum blockchain network
as of its second major software update, Homestead.

The Ethereum volunteer :ref:`community` maintains the documentation and welcomes
:ref:`contributors`.


Contents
Expand Down
75 changes: 51 additions & 24 deletions source/introduction/what-is-ethereum.rst
Original file line number Diff line number Diff line change
@@ -1,42 +1,74 @@
.. _what-is-ethereum:

################################################################################
What is Ethereum?
What is Ethereum ?
################################################################################

Ethereum is an open blockchain platform that lets anyone build and use decentralized applications that run on blockchain technology. Like Bitcoin, no one controls or owns Ethereum – it is an open-source project built by many people around the world. But unlike the Bitcoin protocol, Ethereum was designed to be adaptable and flexible. It is easy to create new applications on the Ethereum platform, and with the Homestead release, it is now safe for anyone to use those applications.
Ethereum is a blockchain platform that lets you build decentralized applications
and deploy them via its distributed network of database nodes. People around the
world develop and maintain its open source, on-chain programming environment.

================================================================================
A next generation blockchain
Origins
================================================================================

Blockchain technology is the technological basis of Bitcoin, first described by its mysterious author Satoshi Nakamoto in his white paper "Bitcoin: A Peer-to-Peer Electronic Cash System", published in 2008. While the use of blockchains for more general uses was already discussed in the original paper, it was not until a few years later that blockchain technology emerged as a generic term. A blockchain is a distributed computing architecture where every network node executes and records the same transactions, which are grouped into blocks. Only one block can be added at a time, and every block contains a mathematical proof that verifies that it follows in sequence from the previous block. In this way, the blockchain’s "distributed database" is kept in consensus across the whole network. Individual user interactions with the ledger (transactions) are secured by strong cryptography. Nodes that maintain and verify the network are incentivized by mathematically enforced economic incentives coded into the protocol.

In Bitcoin's case the distributed database is conceived of as a table of account balances, a ledger, and transactions are transfers of the bitcoin token to facilitate trustless finance between individuals. But as bitcoin began attracting greater attention from developers and technologists, novel projects began to use the bitcoin network for purposes other than transfers of value tokens. Many of these took the form of "alt coins" - separate blockchains with cryptocurrencies of their own which improved on the original bitcoin protocol to add new features or capabilities. In late 2013, Ethereum's inventor Vitalik Buterin proposed that a single blockchain with the capability to be reprogrammed to perform any arbitrarily complex computation could subsume these many other projects.

In 2014, Ethereum founders Vitalik Buterin, Gavin Wood and Jeffrey Wilcke began work on a next-generation blockchain that had the ambitions to implement a general, fully trustless smart contract platform.
In 2014, Ethereum founders Vitalik Buterin, Gavin Wood and Jeffrey Wilcke began
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is there a reason to throw out this text?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The removed text imho is a massive paragraph that tries to explain everything and is better handled elsewhere, for example with links to cryptography and bitcoin Youtubes and white papers.

I did inadvertently take out the "In late 2013, Ethereum's inventor Vitalik Buterin proposed " and will put it back in.

implementing Ethereum as a scalable, trustless smart contract platform.

================================================================================
Ethereum Virtual Machine
================================================================================

Ethereum is a programmable blockchain. Rather than give users a set of pre-defined operations (e.g. bitcoin transactions), Ethereum allows users to create their own operations of any complexity they wish. In this way, it serves as a platform for many different types of decentralized blockchain applications, including but not limited to cryptocurrencies.
Unlike previous generations of blockchain technology which pre-defined operationd,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

operations
spelling

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

noted. will fix. tx!

Ethereum allows you to create on chain program operations of any complexity.
In this way, it serves as a platform for many different types of decentralized
blockchain applications, including cryptocurrencies.

The Ethereum network protocols define the platform at the heart of which is the
:ref:`Ethereum Virtual Machine ("EVM") <the-EVM>`, which can execute code of
arbitrary algorithmic complexity.

In computer science terms, Ethereum is "Turing complete", meaning that developers
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no that is not what turing complete means

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Zelig...when i was changing this i considered using a formal definition of Turing Complete but found it esoteric and unhelpful in understanding what made Ethereum special. Here, I'm just using the operational explanation of it as the previous writer had done.

can create applications that run on the EVM using friendly programming languages
modelled on existing languages like JavaScript and Python.

Like any blockchain, Ethereum also includes a peer-to-peer network protocol. The
Ethereum blockchain database is maintained and updated by many nodes connected to
the network. Each and every node of the network runs the EVM and executes the
same instructions. For this reason, Ethereum is sometimes described as a "world computer".

Ethereum in the narrow sense refers to a suite of protocols that define a platform for decentralised applications. At the heart of it is the :ref:`Ethereum Virtual Machine ("EVM") <the-EVM>`, which can execute code of arbitrary algorithmic complexity. In computer science terms, Ethereum is "Turing complete". Developers can create applications that run on the EVM using friendly programming languages modelled on existing languages like JavaScript and Python.
This massive parallelisation of computing across the entire Ethereum network is
not done to make computation more efficient. In fact, this process makes computation
on Ethereum far slower and more expensive than on a traditional "computer".

Like any blockchain, Ethereum also includes a peer-to-peer network protocol. The Ethereum blockchain database is maintained and updated by many nodes connected to the network. Each and every node of the network runs the EVM and executes the same instructions. For this reason, Ethereum is sometimes described evocatively as a "world computer".
Rather, every Ethereum node runs the EVM to maintain consensus across the blockchain.
Decentralized consensus gives Ethereum extreme levels of fault tolerance, and makes
data stored on the blockchain censorship-resistant.

This massive parallelisation of computing across the entire Ethereum network is not done to make computation more efficient. In fact, this process makes computation on Ethereum far slower and more expensive than on a traditional "computer". Rather, every Ethereum node runs the EVM in order to maintain consensus across the blockchain. Decentralized consensus gives Ethereum extreme levels of fault tolerance, ensures zero downtime, and makes data stored on the blockchain forever unchangeable and censorship-resistant.
The Ethereum platform itself is not an end-user application. It is up to entrepreneurs
and developers to decide what it should be used for.

The Ethereum platform itself is featureless or value-agnostic. Similar to programming languages, it is up to entrepreneurs and developers to decide what it should be used for. However, it is clear that certain application types benefit more than others from Ethereum's capabilities. Specifically, ethereum is **suited for applications that automate direct interaction between peers or facilitate coordinated group action across a network**. For instance, applications for coordinating peer-to-peer marketplaces, or the automation of complex financial contracts. Bitcoin allows for individuals to exchange cash without involving any middlemen like financial institutions, banks, or governments. Ethereum’s impact may be more far-reaching. In theory, financial interactions or exchanges of any complexity could be carried out automatically and reliably using code running on Ethereum. Beyond financial applications, any environments where trust, security, and permanence are important – for instance, asset-registries, voting, governance, and the internet of things – could be massively impacted by the Ethereum platform.
Specifically, Ethereum is suited for applications that automate direct interaction
between peers or facilitate coordinated group action across a network. Examples
include applications for coordinating peer-to-peer marketplaces or the
automation of complex financial contracts.

In contrast with blockchain technologies that largely limit themselves to the exchange of money,
Ethereum serves much wider purposes. Beyond financial applications, any environments
where trust, security, and permanence are important – for instance, asset-registries,
voting, governance, and the internet of things – make ideal candidates for the Ethereum platform.

================================================================================
How does Ethereum work?
================================================================================

Ethereum incorporates many features and technologies that will be familiar to users of Bitcoin, while also introducing many modifications and innovations of its own.
Ethereum incorporates many features and technologies that will be familiar to users
of other blockchain technologies while also introducing many innovations of its own.

For example, :ref:`Ethereum's blockchain holds accounts <Accounts>` and tracks their state.
All state transitions on the Ethereum blockchain are transfers of value and information between accounts.

Whereas the Bitcoin blockchain was purely a list of transactions, :ref:`Ethereum's basic unit is the account <Accounts>`. The Ethereum blockchain tracks the state of every account, and all state transitions on the Ethereum blockchain are transfers of value and information between accounts. There are two types of accounts:
There are two types of accounts:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so you think its better forget bitcon as the vantage point_

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Zelig...yes I do, while acknowledging there is a danger of throwing the baby out with the bath water.

Certainly the Satoshi white paper can and should be used, but many entrepreneurs and developers, including me and my team, didn't come from Bitcoin. For us, the thrust should be the most succinct possible intro to Ethereum necessary to launch a business using its platform.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I think I agree.

It is better to just describe the features and functionality, rather than just saying "Bitcoin + x, y, z". That assumes knowledge of Bitcoin which people may or may not have.


- Externally Owned Accounts (EOAs), which are controlled by private keys
- Contract Accounts, which are controlled by their contract code and can only be "activated" by an EOA
Expand All @@ -52,12 +84,7 @@ These transaction fees are collected by the nodes that validate the network. The
Just as in the Bitcoin network, miners are tasked with solving a complex mathematical problem in order to successfully "mine" a block. This is known as a "Proof of Work". Any computational problem that requires orders of magnitude more resources to solve algorithmically than it takes to verify the solution is a good candidate for proof of work. In order to discourage centralisation due to the use of specialised hardware (e.g. ASICs), as has occurred in the Bitcoin network, Ethereum chose a memory-hard computational problem. If the problem requires memory as well as CPU, the ideal hardware is in fact the general computer. This makes Ethereum's Proof of Work ASIC-resistant, allowing a more decentralized distribution of security than blockchains whose mining is dominated by specialized hardware, like Bitcoin.


Learn about Ethereum
==============================

[to be extended]

PR videos with some pathos:
Some marketing videos:
---------------------------------

* `Ethereum: the World Computer <https://www.youtube.com/watch?v=j23HnORQXvs>`_
Expand All @@ -67,7 +94,7 @@ PR videos with some pathos:
Blockchain and Ethereum 101
----------------------------------

* `Explain bitcoin like I'm five <https://medium.com/@nik5ter/explain-bitcoin-like-im-five-73b4257ac833>`_ - an excellent introduction to blockchain technology and bitcoin to the mildly techsavvy layperson.
* `Explain bitcoin like I'm five (ELI5) <https://medium.com/@nik5ter/explain-bitcoin-like-im-five-73b4257ac833>`_ - an excellent introduction to blockchain technology and bitcoin to the mildly techsavvy layperson.
* https://medium.com/@creole/7-a-simple-view-of-ethereum-e276f76c980b
* http://blog.chain.com/post/92660909216/explaining-ethereum

Expand Down Expand Up @@ -95,15 +122,15 @@ Blockchain and Ethereum 101
`[19] <https://www.reddit.com/r/ethereum/comments/43exre/what_are_the_advantages_of_ethereum_over_other/>`_


Videos
A technical video
----------------------

* http://change.is/video/ethereum-the-world-computer-featuring-dr-gavin-wood

Infographics
--------------------------------

* `Ethereum explained...[to your mother] <https://blog.ethereum.org/wp-content/uploads/2015/06/Ethereum-image-infographic-beginners-guide.png>`_
* `Ethereum explained... <https://blog.ethereum.org/wp-content/uploads/2015/06/Ethereum-image-infographic-beginners-guide.png>`_
* http://decentral.ca/wp-content/uploads/2016/03/infographic.jpg
* https://medium.com/@angelomilan/ethereum-explained-to-my-mom-infographic-673e32054c1c#.n9kzhme6v

Expand Down