If you’ve been following the Bitcoin movement, you’ve seen it grow, since its inception five years ago, from idealogical experiment to fully-fledged currency with its own ATM machines, billionaire investors, billion dollar marketplace and yes, place on the world stage. You’ve seen the introduction of bitcoin-mining specific hardware (often costing more than many people can afford). You’ve seen Silk Road, Overstock, massive heists and massive problems. You’ve seen regulations and crackdowns by various governments and organizations while other governments and organizations embrace — or merely allow while they look for ways to capitalize on – Bitcoin. You’ve seen the creation of Bitcoin alternatives from Litecoin to Dogecoin and the ill-fated Coinye, to the recent Icelandic nationalized Auroracoin; in short, you’ve seen incredible growth for this experiment in virtual, decentralized currency but, I believe, you ain’t seen nothing yet.
If Bitcoin is Crypto-currency, Ethereum is Crypto-finance
Ethereum’s four founding members all came from the Bitcoin community. Vitalik Buterin, Ethereum’s 19-year old wunderkind inventor, is a co-founder of Bitcoin Magazine, as well as a developer for several Bitcoin products. Vitalik and his team are applying the principles and techniques of Bitcoin to a larger sphere, partly by dialing back Bitcoin principles to their basics.
As the Bitcoin movement matured, people saw that it could be used for things beyond currency and value transactions: things like legal contracts of all kinds, application-specific currencies (think giftcards and pre-loaded credit cards) and peer-to-peer gambling. The Bitcoin protocol, however, was not simplistic enough to make these things easy. In his Ethereum whitepaper, Vitalik uses an internet analogy. The Bitcoin community defined Bitcoin as a TCP equivalent, with additional features being like HTTP; however, Vitalik says, Bitcoin is more like SMTP, the email-specific protocol than TCP. Ethereum strives to be TCP: it provides a pared down platform/protocol that gives users the ability to code a multitude of features on top of it — including, if desired, digital currencies like Bitcoin. There is a GUI in the works: people won’t even have to be programmers, or learn the Ethereum-specific language, to code their desired features. The “lego of crypto-finance,” Ethereum wants to make the creation of “custom currencies, financial derivatives, identity systems and decentralized organizations,” among other contractual products the creators have not yet envisioned, possible.
Bitcoin: currency and payments; Ethereum: relationships.
Ok. How does it work?
Ethereum combines a programming language (similar to C++ or Python) and a database. To understand Ethereum, you need to be familiar with many new concepts, as defined below. Read through the ones you don’t understand and by the end, you should have a good idea of how Ethereum works.
Blockchain: essentially, a database — transparent because it’s distributed — it contains all the transactions executed in a system and is shared across all of the nodes participating in the system. The term originated in the Bitcoin movement.
Centralized vs decentralized networks:
A centralized network is one where data and processing happen at a central supercomputer, with access points coming from connected workstations. A decentralized one has many points where data is stored and/or processed. The internet is a decentralized network. While all distributed networks are decentralized, not all decentralized networks are distributed.
Distributed network: a network of computers working together to run a system or program. Distributed systems have no defined major nodes where data storage and processing takes place. Often called “peer-to-peer networks,” file sharing systems, like Napster, are distributed. Bitcoin runs on a distributed system, as does Ethereum.
Platform: in computer science, a platform is a group of technologies that allow the building of other technologies on top of them. Operating systems like Windows, Linux and Mac OS are platforms that pair with hardware. Ethereum, while a platform, does not (at this point*) pair with hardware. *Although unlikely, the creators have not ruled that out. They are open to changing Ethereum’s parameters, for the “good of the project.”
Cryptography: the study of secure communications and transactions.
Crypto-currency: digital currency, based on cryptography. In the case of Bitcoin, Ether and most crypto-currencies, their security and trustability depend on all transactions being publicly viewable, while participants to any given transaction remain anonymous and — though not impossible — extremely difficult to trace.
Crypto-currency 2.0: coined by and for Ethereum, it refers to the fact that Ethereum upgrades the concept of crypto-currency by creating not another currency — though a currency, called Ether, is part of it — to a platform that can be used for creating currencies, contracts and transactions of all kinds. Web 1.0 was basically static web pages while Web 2.0 included dynamic, interactive pages that included animation, user-input forms and flexible layouts, among other things. While crypto-currency is basically digital currency, crypto-currency 2.0 includes contracts, trades, transactions and relationships of all kinds, in addition to currencies.
Ether: the currency component of Ethereum. At Ethereum’s inception, one ether equals 0.001 bitcoin (or 1000 ethers = 1 bitcoin). Unlike bitcoin, there is no limit to the number of ethers that can be mined.
Turing complete: If a programming language is Turing complete it:
- can run infinitely, with
- each chunk of data being changeable, and capable of causing change to the language, when it interacts with a key part of the language; however,
- the changes to the chunk of data and to the language while the data is interacting with the language, do not affect other chunks of data in the data collection. Lastly,
- these chunks of data can be moved back and forth in the programming language, interacting with the language’s malleable and forcible part, ad infinitum.
Ethereum is Turing complete.
Trustless: as in “trustless blockchain” means that “trust” is not needed because a transaction will not complete until all of its’ parameters have been met. If the rules of the agreement or trade are baked into the code, the entities involved in the transactions do not need to “trust” each other. Another component of “trustless” is the transparency of transactions. If, for example, everyone in the room sees A give B ten dollars for a loaf of bread, A does not have to trust that B will deliver the loaf of bread, because B knows that their ability to do business in the community will be compromised if they do not deliver the loaf of bread to A. (If I’m wrong, please help clarify this concept with a note.)
Contract: “the main building block of Ethereum,” a contract is like a small computer program that lives on the Ethereum network. It includes its’ own code, data storage and ether balance.
“You can use contracts to issue currencies, construct your own escrow contracts or financial derivatives, and even create on-blockchain data stores.” — http://ethereum.org
“Unlike other cryptocurrencies, which aim to offer a large number of ‘features’, Ethereum intends to take features away, and instead provide its users with near-infinite power through an all-encompassing mechanism known as ‘contracts’” — http://www.ethereum.org/ethereum.html
Smart contact: “computer protocols that facilitate, verify, or enforce the negotiation or performance of a contract, or that obviate the need for a contractual clause. Smart contracts usually also have a user interface and often emulate the logic of contractual clauses. Proponents of smart contracts claim that many kinds of contractual clauses may thus be made partially or fully self-executing, self-enforcing, or both. Smart contracts aim to provide security superior to traditional contract law and to reduce other transaction costs associated with contracting… Digital rights management schemes are smart contracts for copyright licenses, as are financial cryptography schemes for financial contracts.” — http://en.wikipedia.org/wiki/Smart_contract
Smart property: property who’s ownership is controlled via a computer algorithm. It’s a use case of a “smart contract” that applies to ownership of anything from a house or land to company shares or computer access rights.
“Making property smart allows it to be traded with radically less trust,” reducing fraud and mediation fees, and facilitating trades that would be impossible without it, due to fees, distance or other communication barriers.
“It allows strangers to loan you money over the internet taking your smart property as collateral, which should make lending more competitive and thus credit cheaper.” — https://en.bitcoin.it/wiki/Smart_Property
Protocol: a system of rules governing the transfer of data.
Autonomous agent: an autonomous agent operates on the behalf of an owner, but without any input from the owner. A smart contract is an autonomous agent, as is, to some extent, an Ethereum contract.
Decentralized autonomous organization (DAO): an organization who’s rules, mandate and mission are encoded into an Ethereum, or Ethereum-like contract; that is, the code lives on a distributed network and is self-enforcing. If Ethereum is a platform for crypto-relationships, a DAO is a complex, multi-entity instance. I’m particularly enamoured of the idea of a crypto-political-party.
So, Ethereum provides a programming language, similar to C++ or Python, combined with a database, both of which live on a distributed network. This allows users to create self-enforcing financial and legal contracts of all kinds and complexities, without the use of a third-party.
Here is Ethereum’s Github page: https://github.com/ethereum.
I’m not a programmer so there’s nothing here for me, right?
Well, according to this Reddit thread, yes, you are right. On the other hand, people laughed at Bitcoin when it first appeared, though now, fewer and fewer are laughing and more and more Silicon Valley investors are getting involved.
When Buterin presented Ethereum at the recent Miami Bitcoin conference, he received a standing ovation, from a packed auditorium, and the question queue took more than an hour to address.
Aside from being an investment opportunity, Ethereum levels business and financial playing fields. Don’t want to support government bailouts for banks who sell shitty mortgages? Don’t want to work for less because your parents aren’t friends with the right people? Don’t want to pay hidden minority taxes? Ethereum takes users out of the lopsided, behemothic existing systems by letting them create their own financial and legal instruments. Don’t want to pay lawyers and government agencies to do business and sell and trade property? Create algorithmically binding contracts with Ethereum. Ethereum can not only make you money, it can save you money.
The UK recently made programming part of their primary and elementary school system. Kids will start learning to code in kindergarten and it will be mandatory until they are sixteen. The UK is the first country in the world to do this, but others won’t be far behind. Hyperspace isn’t going away. Since the internet started, more and more products, services, communications and relationships have moved online. Online sales have not even peaked yet.
With the advent of mobile devices, including hardware addons like Square, mobile financial transactions are in infancy. People will use mobile phones as wallets and will choose them over credit cards. (Credit cards tracking your purchases and other rapacious, predatory practices — let’s not even get into that.) Bitcoin is almost mainstream now. It makes sense to create a new, online, decentralized (and thus, more difficult to game and control) financial system rather than adapting old, corrupt, confidence-bankrupt ones to this virtual world. Last, but not least, Ethereum is exciting — inspiring, even. It’s the next stage in the financial and relational revolution started by Bitcoin.
How can I get involved?
The easiest way is to buy in when Ethereum goes public. They were going to go public February 1st, 2014, but because people expressed interest in trying their platform before buying into it, they released an alpha client instead, which you can get here.*
* I tried to install it, but couldn’t get past my homebrew errors, on Mac OS Mavericks. @ethereumproject tells me that I don’t have to brew it, and shares this pastebin: j.mp/1cqYKcP, which I have not yet tried.
I would suggest installing it, and learning as much as you can. Even though a GUI is in the works, the more you know, the easier it will be to use. Get on the Ethereum notification email list, or watch http://ethereum.org for updates, including the release of its’ GUI.
So Awesome! Where else can I learn more?
- The Ethereum website: http://ethereum.org. Join their mailing list to receive updated info as it is published.
- Here’s the Ethereum whitepaper: http://www.ethereum.org/ethereum.html;
- Forum: http://forum.ethereum.org/, and
- Alpha client code: https://code.ethereum.org/;
- Welcome to the Beginning forum thread: https://bitcointalk.org/index.php?topic=428589.0;
- “Ethereum,” on Bitcoin Magazine: http://bitcoinmagazine.com/?s=ethereum. *Bitcoin Magazine is a great place to read about the Bitcoin movement, in general; and,
- Vitalik Buterin’s Ethereum talk from the recent Miami Bitcoin conference (video, 28 min.): http://cointalk.ca/vitalik-buterin-talks-ethereum-at-btc-miami-2014.
If you have any more resources to share, please add a note.
Thanks, that was great!
You’re welcome. : )
Tip me at: 19PfBiW5yGPdmZQf3ActZyFmvrPnhuGdUn