X
Ease into Ethereum
06 September 2017

Ease into Ethereum

In our last article we detailed some of the experiences we had while developing for the Blockchain. However, with so many cryptocurrencies and Blockchain options out there, it is important to look into what makes them different from each other.

At the end of 2016 one of our clients came to us with a vision of how cryptocurrencies would change the world, at first we were somewhat sceptical before they described Ethereum and its use of smart contracts.
 

Explain it simply to me!

Ethereum is software running on a network of computers that ensures that data and small computer programs called smart contracts are replicated and processed on all the computers on the network, without a central coordinator. The programs are run on a globally shared environment where the validity of their execution is guaranteed. There is no need to trust a third party, only the code.

 

This sounds similar to Bitcoin:

Like Bitcoin, Ethereum has a blockchain, which contains blocks of data. The blocks are created or mined by some participants and distributed to other participants who validate them.

Also like Bitcoin, the main Ethereum network is a public, permissionless network – i.e. anyone can write some software to connect to the network and start creating transactions, validating them, and mining blocks.

Ethereum’s token is called Ether, shortened to ETH. This is a cryptocurrency that can be traded for other cryptocurrencies or other fiat currencies, just like Bitcoin (BTC). Ownership is tracked on the Ethereum blockchain, just like BTC ownership is tracked on Bitcoin’s blockchain.
 

So why not use Bitcoin then?

In Ethereum the time between blocks is around 14 seconds, compared with Bitcoin’s 10 minutes. You could say Bitcoin writes to its database roughly every 10 minutes, whereas Ethereum writes to its database roughly every 14 seconds. This means that on average if you made a Bitcoin transaction and an Ethereum transaction, the Ethereum transaction would be recorded into Ethereum’s blockchain faster than the Bitcoin transaction getting into Bitcoin’s blockchain.

In Bitcoin, the maximum block size is specified in bytes (currently 1 MB) whereas Ethereum’s block size is based on complexity of contracts being run and the maximum can vary slightly from block to block.

Compared to Bitcoin’s primitive scripting language, the code that can be deployed in Ethereum and run as smart contracts is more advanced and familiar to developers. Ethereum smart contracts are fully functional and can perform any computation that you can do in any other programming language.
 

Now, what are smart contracts?

Smart contracts are:
– pre-written logic (computer code),
– stored and replicated on a distributed storage platform (Blockchain),
– executed/run by a network of computers (Blockchain),
– and can result in ledger updates (cryptocurrency payments, etc.).
 

If blockchains give us distributed trustworthy storage, then smart contracts give us distributed trustworthy calculations.

 

For example, when two banks do a complex trade with each other – these are agreements between the two banks, without third party validation. A mismatch or “break” can occur, where parties don’t agree on the outcome of the trade due to a number of things.

With a smart contract, there is only one set of trade terms, written in computer code, and agreed upon up-front. The external dependencies (price of oil, share price of Apple, etc.) can be fed in via a mutually agreed feed. The contract will live on a blockchain, and run when an event happens or when the bet expires.

Smart contracts make sense for all parties by reducing operational risk, and can be thought of as automated trustworthy workflow between parties without a central specific co-ordinator.

 

The Basic Summary:

Ethereum is a Blockchain platform that enables the Blockchain to be more than just a distributed general ledger.

It does this by making use of smart contracts which are programs that self-execute the terms of a contract. If Y, then execute X...autonomously. Smart Contracts allow users to solve common problems in a way that minimizes any issues people may have around trust.

 

Author: Miles Barnett

Technical Manager

Related