High Level Overview

Just like Bitcoin, Ethereum is a platform that’s constantly changing.

It’s under active development by not only the official Ethereum Foundation team, but also by its large open source community.

Over the years, it’s been shaped by current events and its community.

And the software improvements and proposals over the years are, like in Bitcoin, a testament to the large user base and also the democratic nature of the software.

As more and more people begin to use Ethereum to build applications, Ethereum needs to adapt more and more.

On their website, it says Ethereum is a decentralized platform designed to run smart contracts.

In short, it’s a distributed computer spread amongst a multitude of nodes across the world that executes code that people feed to it.

And because of this architecture, it can run unstoppable applications.

Applications are run exactly as programmed, without any possibility of downtime, censorship, fraud, or third-party intervention.

It uses a blockchain, and its blockchain is account-based, instead of UTXO-based like Bitcoin.

We’ll into more detail about this in a bit.

Formally, Ethereum is implemented as a distributed state machine, and transactions on the network change the global state of the system.

Nodes in Ethereum keep track of and come to consensus on the global system state — which includes data about who owns what.

Execution of transactions bring us from a previous state to a new state, so they’re the state transition functions.

Ethereum’s native asset is ether, which is the basis of value in the Ethereum ecosystem, and is also crucial in aligning incentives.

So as a recap from the previous section, what makes Bitcoin so special are the following properties: it’s trustless, immutable, uncensorable, pseudonymous, has no central point of failure, and aims for a one-cpu-one-vote policy.

Ethereum has all of these, but has a different use case.

Before the creation of Ethereum, Vitalik Buterin, the creator of Ethereum had argued that Bitcoin needed a more general purpose scripting language, but he didn’t get much support for his proposal.

So, he made Ethereum.

And one of the most notable features is that it supports a turing complete scripting language.

Ethereum vs. Bitcoin