ICOs are frequently touted as the new way to raise startup capital. Successful ICOs have raised massive amounts of capital in days, hours, and even minutes, ranging between $100 million, $156 million, and even $232 million in the highest performing cases.
What do these startups offer in return for this massive amount of funding?
Tokens. In the cases highlighted above, all three platforms offered investors cryptocurrency tokens against money raised that were both created and sold on the Ethereum network, which means all of the trades that took place did so exclusively on the Ethereum blockchain.
The tokens created in these highly successful ICOs are also tracked on the Ethereum blockchain. The latest generation of ICOs, however, is changing this.
One of Ethereum’s key strategies for blockchain ubiquity is their development, and propagation of the concept of Smart Contracts, which give the blockchain functionality outside of simple bean-counting. Smart contracts can be considered as a set of rules that can be used to govern and facilitate a process or agreement that cannot ever be modified after execution.
Smart Contracts allow developers to write anything in the form of a smart, executable contract. Consider the following example:
If party A and partly B place a bet on the weather of the following day, it’s possible for the bet can be carried out in a “trustless” manner by utilizing the unique properties of a Smart Contract. Both parties are able to submit their prediction and betting amount to a custom-designed Smart Contract.
At a predetermined time on the following day, the Smart Contract will make an API call to the API of a platform such as Open Weather, and determine whether the weather is sunny or rainy. Depending on the predictions made by the betting parties, the Smart Contract will then award the prize pool to the winning party.
However, due to the fact that Smart Contracts and the code they operate on are no more than a software program executed on the computer of a stranger, it’s critical to ensure that the programmer that writes it cannot tamper with the stranger’s computer, or attempt to exploit the network.
To prevent these eventualities, the Ethereum Network utilizes its own native programming language, called Solidity. While the Solidity programming language is “Turing complete”, which means virtually any program can be created on it, it suffers from a steep learning curve- which has lead to some very public coding mistakes. The developer community supporting Solidity is also currently in a nascent stage.
These two key limitations have led to the Ethereum Network being used primarily as a platform for ICOs, and not as a global computing solution.
Besides the specific disadvantages that Ethereum suffers from, there are several universal blockchain issues that still need to be solved- namely, the slow transaction speed of the blockchain, and the lack of native identity. The rapidly evolving nature of the blockchain, however, means that the future is bright for blockchain development- these early stages of blockchain integration can be compared to the earliest days of the internet.
The Current State Of Blockchain Tech
Blockchain technology as a whole is supported by a fervent following of highly optimistic proponents. The most recent developments in the blockchain space have offered a wide range of extremely disruptive solutions and possibilities, providing developers with the tools and opportunities to move their projects to newer, more efficient blockchains in order to create unique decentralized apps and ICOs.
One of the most interesting recent developments in the blockchain ecosystem is the creation of blockchains that facilitate general computations to be performed in a decentralized manner. These emerging new systems offer far more functionality than only the ability to write and execute Smart Contract.
Programming Language Support
Some blockchain solutions decide to integrate functional programming languages from inception. Tezos blockchain has established a blockchain solution that relies heavily on functional programming in the creation of Smart Contracts, and thus alienates developers that find the concept and process alien. In these cases, many developers find the learning curve even steeper than Ethereum’s Solidity language.
Another blockchain has adopted an entirely different strategy. The NEO blockchain has integrated both .Net and Java from the earliest days of development, and eventually aims to integrate support for both Go and Python. By supporting just these four established programming languages, the NEO platform will serve over 90% of the worldwide developer community from day one.
Another blockchain that provides developers with the ability to write Smart Contracts in a similar manner to the Ethereum Network is Qtum. The Qtum platform, however, uses Bitcoin’s UTXO format. Bitcoin possesses no concept of account or balance- instead of tracking balance information, Bitcoin tracks unspent transactions, which are defined as transactions that are sent to a wallet, but not spent yet.
Maintaining these records is extremely lightweight when compared to Ethereum’s model, thus furnishing Qtum with the ability to execute extremely lightweight Smart Contract. Moving forward, it will be extremely interesting to see the various innovative ways different blockchains adopt programming paradigms for their platforms. Some blockchains focus more on the consumer market segment, while others intend to provide massively scalable solutions for larger enterprises.
Native Blockchain Identity
The Ethereum Blockchain determines identity via the public key that is linked to the possessor of a private key. Every Smart Contract that is executed possesses it’s own public identity, which functions as an address.
Unlike this model employed by Ethereum, platforms such as NEO instead use a native identity that can be used across all apps on the NEO blockchain. To compare the blockchain to the internet in this case, if the internet a native identity, it wouldn’t be necessary to create a different account or identity for every online service or platform you want to use.
Many proponents of the blockchain define it as the “new internet”. Incorporating a native identity protocol that can be used in disparate Dapps is a highly efficient move, but one that is current the focus of high-frequency development by a number of teams. On Ethereum, for example, Civic allows users to create an identity that can be used across other apps on the same blockchain.
Innovative Consensus Protocol
A large part of the current generation of blockchain platforms are frequently criticized for the vast amount of energy they consume. These solutions, specifically Bitcoin and Ethereum, use a consensus method that is extremely resource-intensive, and thus extremely electricity-intensive.
Every blockchain system is composed of a series of nodes. On a periodic basis, these nodes need to agree on an updated global system state, achieving consensus. Because the nodes in any given blockchain are distributed over an extremely wide geographic range and are not always monitoring other nodes in the network, they are required to sync themselves in order to agree on the new network state.
At this point in time, the most popular method of gaining consensus is called Proof of Work. This consensus technique involves every single node on the network attempts to claim the updated network state by solving a complex cryptographic puzzle. The node that solves this puzzle is able to deliver the updated network status to the rest of the network.
This method of consensus has a number of disadvantages. The primary issue with Proof of Work consensus is that it’s slow and expensive. The alternative consensus methods to Proof of Work have their own pros and cons. Ethereum is currently planning a shift to Proof of Stake consensus. Some blockchains, such as Tezos or Qtum, have employed Proof of Stake consensus from the start.
Interestingly, Tezos employs a unique form of Proof of Stake called Delegated Proof of Stake, or dPoS. This method of consensus uses a decentralized governmental structure in order to adopt major protocol upgrades. Every major upgrade to the Tezos system is proposed to the network at large and voted on, making the occurrence of hard forks extremely unlikely.
NEO uses a unique consensus system called Delegated Byzantine Fault Tolerance, or dBFT. This consensus mechanism makes it possible to sync up nodes on the network far more rapidly than other consensus methods without the associated energy expenditure. Compared to Ethereum, which can currently process just 15 transactions per second, NEO is capable of processing an impressive 10,000 transactions per second.
The Shape Of Future Blockchain Technology
We are still in the earliest days of the blockchain revolution, and still have yet to see the largest players in the blockchain environment emerge. While Bitcoin and Ethereum have shown the world at large that a new, centralized internet is possible, they’re far from perfect. Decentralized exchanges and other similar platforms are taking the core principles of blockchain tech to the next level, creating fertile ground for the decentralized platforms of tomorrow to grow.