In this guest blog post Dr. Christian Beckel, expert of IOT, Research, Venture and member of blockLAB Stuttgart, provides an overview over the Ethereum project, its community, and most importantly: Its blockchain.
Ethereum project
Ethereum was first heard of in 2013, when one of the founders Vitalik Buterin (who still acts as a figurehead of the project) published the initial version of the Ethereum Whitepaper together with his co-authors. The key contribution of Ethereum compared to existing projects such as Bitcoin was Ethereum’s focus on smart contracts and decentralized computing – subsequently being marketed as the World Computer. After a successful crowd sale and the foundation of the Ethereum Foundation, the project finally went live on 30 July 2015.
As of today, Ethereum is the second most valuable cryptocurrency (after Bitcoin) with a market capitalization of roughly $74bn. In other categories, Ethereum already outperforms Bitcoin.For instance, the Ethereum network processes roughly one million transactions per day, which is three times as much as the Bitcoin network. Also, the number of Ethereum nodes (30k) is 2.5 times higher than the number of Bitcoin nodes (12k). The Website Flippening Watch provides a live comparison of the two projects.
Difference to Bitcoin
The main difference to Bitcoin is that Ethereum supports a Turing-complete virtual machine for the execution of smart contracts: The Ethereum Virtual Machine (EVM). There are several programming languages available that compile into EVM such as Solidity, Serpent, LLL, Viper, and Mutan (deprecated). A detailed specification of the EVM is available in the infamous Yellow Paper. For beginners, the Documentation of Solidity is sufficient to develop the first smart contracts. While Bitcoin is perceived as a novel decentralized payment system or at the very least a store of value, the fact that Ethereum makes smart contracts first class citizens on the blockchain allows for a whole new set of applications beyond payments. Ethereum is hence often appraised of making the ‘middleman’ obsolete, which may lead to huge saving potentials for applications in different domains ranging from notary services to decentralized credit applications. While most of these applications still have to catch up with their promises, the first domain with real application seems to be the domain of prediction markets (e.g., Augur, Gnosis).
The Ethereum Blockchain
The Ethereum blockchain can be investigated online through Websites such as Etherchain.org or Etherscan.io. In Ethereum, each address specifies an account on the blockchain. Interestingly, an account can be of two types: A normal (or externally controlled) account is an account that holds ether and can be
used to fire transactions (e.g., send ether to another account). A contract account also has an ether balance. However, in contrast to an externally controlled account, a contract also contains code, which is executed through an explicit call (i.e., from an externally controlled account or from another contract). As a result of the call and the subsequent code execution, the contract changes its state, which is – like the balance of all accounts – stored on the Ethereum blockchain.
The execution of a smart contract induces a state transition on the Ethereum blockchain. Code execution (and hence the state transition) is being performed by all Ethereum nodes and should therefore used thriftily in order not to spam the network with unnecessary computations. To this end, accounts invoking a smart contract must pay a fee depending on the complexity of the contract. This fee is being paid for in gas, a derivative of ether. For each transaction, gas price must be set sufficiently high in order for miners to accept the transaction. While normally, clients take care about setting appropriate gas prices, developers can also employ tools such as ETH Gas Station to identify the right amount of gas that fuels the transaction.
The Ethereum Community
The community is extremely active and probably one of the most lively within the crypto ecosystem. A lot of the code developed is available on the Ethereum GitHub repository. Meetings of developer meetings as well as interesting presentations are being streamed live or are accessible afterwards on the project’s Youtube channel. A good source of news is the offical Ethereum blog and the reddit channel r/ethereum. For people that are more interested in trading than in the underlying technology, r/ethtrader is a good channel with lots of (more or less serious) discussions about price trends. All developers and likeminded people in the Ethereum community meet once a year on the Ethereum Foundation’s annual developer conference. This year’s event Devcon 3 took place in Cancun, Mexico, and has been attended by roughly 2000 people. Podcasts are a good source of news as well. In Ethereum, two of the most well-known podcasts with very interesting guests are The Ether Review and epicenter. Note that blockLAB Stuttgart recently started its own podcast: blockFUNK. If you are more interested in a summarized version of events, we can recommend weekly newsletters such as Evan van Ness’ Week in Ethereum News or our blockLABNewsletter.
Finally, Ethereum recently initiated a partnership network through the Ethereum Enterprise Alliance, which “connects Fortune 500 enterprises, startups, academics, and technology vendors with Ethereum subject matter experts“. Killer app(s) and ongoing projects. New technologies are often being judged based on their potential to provide a killer app. In case of Ethereum, the (first) killer app seems to be the ERC20 Token Standard. While the standard simply describes the functions and events that an Ethereum token contract has to implement, it paves the way for compatibility of many different tokens, each of which can be bought, sold, and traded on the Ethereum blockchain. This feature has already been used by many different projects and lead to a completely new way of funding called Initial Coin Offerings (ICOs). ICOs are already seen as the disruption to traditional venture capital funding. Beyond contracts for token creation, there are numerous decentralized apps (dApps) in the making or even already live. The Website State of the dApps provides an overview of many different dApps as well as their current status. Despite (or because of) the emergence of all these projects, novel applications, and the significant Ethereum price rise in 2017, one problem remains: In the current form, each smart contract is being executed by all Ethereum nodes (i.e., validators), which is – frankly speaking – the opposite of scalable. There are however different ongoing scaling activities on different levels such as Sharding, Plasma, and the Raiden network.
In a recent blogpost, Can Blockchains Scale?, we provided an overview of the scaling problem and different solutions proposed and developed by the extremely active community. Read more about it!