It is hard to put into words the sheer impact that ERC20 tokens have had on the crypto-world. They are single-handedly responsible for the billion-dollar ICO industries and they have played a big role in making cryptocurrencies more mainstream. Before we get into what they are and how they have impacted, a little history lesson is in order.
The Road to Smart Contracts
The blockchain technology and cryptocurrencies came to the forefront when an anonymous developer calling himself/herself/themselves Satoshi Nakamoto created Bitcoin. Bitcoin was revolutionary for a number of reasons. For the first time ever we had a currency system which was owned by the people. You can send a Bitcoin to anyone with a Bitcoin wallet without having to go through a bank.
For introducing the world to the blockchain technology, Bitcoin is commonly known as a “First-Generation Blockchain.” However, there is a huge restriction in the way Bitcoin conducts its transactions.
Turns out, that transactions need not always be so simple.
If you want to send some money to your friend in a simple one-on-one transaction, then Bitcoin will be ideal in this scenario. However, what if you want to send some money to your friend only when he finishes a certain amount of tasks in a particular deadline. How can you manipulate the transaction code to account for such complex transactions?
This is the question that Vitalik Buterin provided a solution to by creating Ethereum.
Ethereum and Smart Contracts
Vitalik Buterin realized that the blockchain technology had far more utility than just being a payment system. According to their website.
“Ethereum is a decentralized platform that runs smart contracts: applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third-party interference. These apps run on a custom built blockchain, an enormously powerful shared global infrastructure that can move value around and represent the ownership of property.”
In simpler terms, Ethereum is planning to become a decentralized super-computer wherein anyone, anywhere can rent out some computational power and create decentralized applications (Dapps) which can run on top of the Ethereum platform.
So, how do you make these Dapps? For that, we need to look into Smart Contracts
Smart contracts are automated contracts. They are self-executing with specific instructions written on its code which get executed when certain conditions are made.
You can learn more about smart contracts in our in-depth guide here.
Smart contracts are how things get done in the Ethereum ecosystem. When someone wants to get a particular task done in Ethereum they initiate a smart contract with one or more people.
Let’s go back to our previous section.
Smart Contracts help you code complicated transactional details in a simplified format, and they were conceptualized by Nick Szabo. According to him, the best real-life working example of the smart contract is a vending machine.
When you want something from the vending machine, you simply deposit your cash into the machine, then you choose what you want, and the machine gives it to you. You are directly interacting with the machine without any involvement from a third person. As long as you follow the process which is:
- Depositing your money
- Choosing your product
- You will get what you ask for.
Suppose you and your friend Alice want to interact with each other using a smart contract.
The smart contract also works in the same way. You lock up some of your Ether (the Ethereum token) inside the smart contract, the condition being that as soon as Alice finishes up some tasks, the contract will unlock the funds and send it to her wallet.
Smart Contracts and ICOs
Smart contracts opened a whole new world for developers to create and innovate. However, these developers needed a way to finance their projects.
The solution? ICOs.
ICOs or Initial Coin Offerings are the cryptocurrency version of the Initial Public Offerings or IPOs. However, when compared to IPOs, ICOs are a lot more entrepreneur-friendly than IPOs for the following reasons
Firstly, it is far simpler to present your project in ICOs. All that you have to do is to present a whitepaper of your project.
Anyone can become invested in a project they are interested in by purchasing the tokens of that particular DAPP and become a part of the project themselves.
There is one more thing that you need to know before we get into how an ICO works. The developers need to give something in return for the investments. This “something” is called tokens.
To give you a very wide, non-generalized definition, a token is a representation of something in its particular ecosystem. It could value, stake, voting right, or anything. A token is not limited to one particular role; it can fulfill a lot of roles in its native ecosystem.
So, what are these “roles” that the tokens can take?
Toll: A token can act as a gateway to the Dapp. Basically, in order to access the Dapp, you will need to hold the tokens.
Voting Rights: The tokens may also qualify the holders to have certain voting rights. Think of EOS, holding EOS tokens will allow you to vote for block producers.
Value Exchange: This is one of the more common roles of tokens within the ecosystem. Tokens can help create an internal economic system within the application.
User Experience Enhancement: The token can also enable the holders to enrich the user experience inside the confines of the particular environment. Eg. In Brave (a web browser), holders of BAT (tokens used in Brave) will get the rights to enrich customer experience by using their tokens to add advertisements or other attention based services on the Brave platform.
Currency: Can be used as a store of value which can be used to conduct transactions both inside and outside the given ecosystem.
Ok, so till now we have told you how smart contracts, ICOs, and tokens work. However, here is where we hit out the first obstacle. Let us take an example of an arcade.
The Video Game Arcade
Think of an old-school video game arcade. What are all the steps that you need to take before you get to play your game:
You take your fiat money and convert them into the arcade coins.
You use the arcade coins to play games in the machines by inserting them inside the slot. The slots are designed to accept circular shaped coins.
After you are done, you take the leftover coins, if any, and convert them to fiat money.
So, can you make the parallels between the arcade and smart contract platform?
The video game arcade machines are the Dapp while the arcade coins issued are your native tokens. You will need to be in possession of those coins in order to access the services of your Dapp.
There is one problem area of this system though.
In order the fit into the slot of the machine, the coins need to be of a specific dimension. Now, what if certain machines came about who didn’t accept the circular coin designs and instead preferred a squarish coin shape?
In order to run the business smoothly, the arcade owner must lay down a ground rule. All machines must be built to accept circular arcade coins. No other shape must be accepted.
That, in essence, is what ERC20 guideline does.
Read full article here