Mohit Mamoria is a co-founder and CEO of GOD Token, which manages a hedge fund that invests exclusively in blockchain-based assets.

More posts by this contributor

ICOs are said to be the new way to raise money. We’ve seen companies raising $100 million, $156 million, $185 million and even $232 million by selling tokens that will be used in the protocol that these companies have promised to build using this money.

Against the money raised, the tokens they gave were created and sold on the Ethereum blockchain -- meaning that all the trade that took place happened on the Ethereum blockchain and the tokens created are tracked on the Ethereum blockchain. But that is changing.

Smart contracts

Ethereum’s mission of making blockchain more than a calculator has allowed them to invent the concept of smart contracts. You can think of smart contracts as a set of rules governing something, which cannot be modified ever in the future. They allow a developer to write anything in the form of a smart contract that gets executed by the network. Consider the example:

If A and B place a bet about the next day's weather, the bet can be carried out in a trustless manner using a smart contract. Both of them can submit their betting amounts to the smart contract. At a predefined time on the next day, the contract will make an API call to the Open Weather API to see if the weather is sunny or rainy. Depending on the weather, the total amount will be sent to either of the two.

Because this contract is no more than a software program and gets executed on a stranger’s computer, it had to be made sure that the programmer cannot exploit the stranger’s computer or the whole network. To fix the problem, Ethereum came up with its native programming language -- Solidity. Although the language is Turing-complete, which means any program can be written in it, there’s still a steep learning curve -- and the developer community is in its infancy.

These two limitations have made Ethereum be perceived as merely an ICO platform, rather than a world computer.

Besides these Ethereum-specific disadvantages, it also faces the problems of the blockchain in general -- slow speed and no native identity on the blockchain. But blockchains are evolving -- we are living in the first few years when the internet was invented. It’s slow, expensive, clunky; but hey, it’s the future!

Is the future anywhere near?

As a huge advocate of blockchain in general, I am quite excited by the research and development happening in the space. With recent developments, we are seeing new blockchains coming up in the industry that offer so much more: They make developers move to using these newer blockchains for building their decentralized apps and ICOs.

I am particularly excited by development in the blockchains that allow general computations to happen in a decentralized manner. The newer generation of such blockchains offers much more than the ability to write smart contracts.

Support for programming language

When it comes to writing a smart contract, the biggest obstacle that I hear from the Ethereum developer community is the requirement to learn a new programming language. I agree that the syntax looks very similar to JavaScript, but it still is a different language and requires you to think of a problem with a different mindset.

Tezos blockchain decided to go with a functional programming language for the smart contracts. Most developers are alien to functional programming and might find the learning curve steeper than Ethereum’s Solidity.

Another blockchain, NEO, promises to offer support for .Net and Java to begin with, and eventually will allow programs written in Python and Go on its platform. With these four languages supported by NEO, it will already serve about 90 percent of the developer community from the get-go.

Qtum is another blockchain that allows developers to write Ethereum-like smart contracts, but using Bitcoin’s UTXO format. In bitcoin, there’s no concept of an account and balance. Instead of tracking every account’s balance, the unspent transactions are tracked (the transactions that were sent to your wallet and are not spent yet). The sum of those transactions make up your balance. It is very efficient and lightweight to maintain these records as compared to accounts on an Ethereum-based model. Qtum thus allows for very lightweight smart contracts.

Story continues