post

The economical history of Metaverse

John · Nov 5, 2021

· 11 min read ·

Three years ago, I found this useful article about what lockchain is. Learn Blockchains by Building One. The technology has changed totally as for the situation before three years. Because I am researching the method about how to build a objective-guide team, I searched so much content. Luckily, I found the Decentralized Autonomous Organization (DAO) is what I need. Therefore, I try to conduct more research of economical history of Metaverse to have a better understanding of Web 3.

Smart contract

The term smart contract was proposed by a scientist named Nick in 1996. Smart is not about AI or Intelligence. It’s about being able to run more automatically than contracts on paper. Bitcoin was only available in 2009 and Ethereum launched its first smart contract in 2015.

IBM’s official website also defines what a smart contract is. It is an electronic contract or code stored on a blockchain that, if the predetermined conditions are met, will be executed. It consists of a simple program like “if/when… Just…” (the Solidity language, for example). Miners in the network will perform these conditions and, if satisfied, do things like packets. The paper, by Stuart at Harvard Law School, notes that while more and more things are being chained, but current contracts are still very basic to do things like transferring money from A wallets to B. As for more complex subjective legal judgments, such as whether to meet commercial standards of effort or whether to trigger compensation, still need to take years to develop. If you want to learn Solidty, you can learn interactively at this web site in fifteen minutes.

There is also a chained fee before the contract is executed. Ethereum’s term is gas. He played an important role in preventing complex contracts from overloading virtual machines (EMs) running contracts. At present, there are two main types of contracts, one is to meet the conditions to pay funds, another is not to meet the conditions for punishment. Once the contract is beginning, there is no more human intervention to reduce overhead in the process.

Because both smart contracts and traditional contracts require a legally recognized process, some local laws have begun to recognize smart contracts, but the flexibility in actual business is not fully covered by smart contracts. If you use smart contracts, there are some best practices:

  1. Both paper contracts and smart contracts make sense. Because smart contracts can’t do too complicated at this stage.
  2. Paper contracts document the contents of smart contracts in detail, indicating how data loss under the chain is handled.
  3. What to do if there is a bug, adding in the paper contract record.
  4. The law and place shall prevail in text in the event of inconsistencies.
  5. Both parties have reviewed the code’s statement.

The real revolution in smart contracts will come from a new paradigm that we haven’t thought before.

Token

Or crypto-token, which is actually a unit of cryptocurrencies or virtual currencies that represents assets on a blockchain or symbols that are specifically used on your own chain. Each token is actually a cryptocurrency. Can be used to invest, preserve value, or pay. Token is often used to raise money in crowdfunding (initial coin offering, see ICO later).

Bitcoin, as the first cryptocurrency, followed by a number of similar products. All of them known as Tokens(Altcoin), such as Ethereum’s ETH, dog coins and so on. Token is more used as an element in the execution of smart contracts. It often used to act like a company’s shares, which can also be traded.

The token on the blockchain can include reward token, currency token, right-to-use, securities token, asset token, etc.

Coin and token is not the same thing. For example, Ethereum’s ETH is the coin, but there are lots of tokens in Ethereum. After paying the handling fee, you can generate a token and fund-raising. The reason why people give you money is what your token can actually use to do.

Here provides some examples. Imagine that you send token to raise money to open a coffee shop and give all users a right-to-use token, which they can use for coffee. Securities token refers to the value of token tied to the third part items, such as the issuance of a token binding equivalent amount of gold (need to prepare physical). Governing token, which is basically the representative of the right to vote. The more you have, the greater your voice. In some cases, it will lead to centralization.

How do I send token? Let’s look at the next section.

ICO

The ICO, which is an acronym for “initial coin offering”, is very popular in the way when early blockchain projects were financed. It peaked in 2017, surpassing venture capital as a way to finance blockchain startups.

Ethereum’s ICO was the first success story, raising more than $10 million in 2014 and selling it for $0.311, which is now around $4,000, when investors received a return of 1,408,903 percent. Here summarizes the most important ICOs in history. The first one by MasterCoin in 2013 is $600,000. In 2014 it was Ethereum. By the 2016, it was The DAO hack event. In 2017 saw a peak of $5.4 billion in ICO totally.

From 2017, a large number of countries are beginning to pay attention to the ICO. The United States believes that securities management should be included. A range of countries, including Australia and the UK, have warned of the potential harms of ICO involvement in fraud. South Korea, China and Thailand have also banned ICO. Due to lack of regulation, a large number of ICOs are fraudulent. And a 2018 report found that more than half of ICO programs live no older than four months.

To ICO, you have to generate Token. Ethereum has more tutorials, which are mainly in the Solidity language according to the “ERC20” and protocol programming into smart contracts. It completes the process of generating and releasing token.


113     // ------------------------------------------------------------------------
114     // Constructor
115     // ------------------------------------------------------------------------
116     constructor() public {
117         symbol = "FIXED";
118         name = "Example Fixed Supply Token";
119         decimals = 18;
120         _totalSupply = 1000000 * 10**uint(decimals);
121         balances[owner] = _totalSupply;
122         emit Transfer(address(0), owner, _totalSupply);
123     }

Official Example Code There are 1,000,000 tokens initialised in the smart contract. Sending tokens is though the other code that follows the ERC20 interface when excute the contract.

Some other examples:

OpenZeppelin ConsenSys This is very detiled

NFT

All of the NFT’s interfaces are defined according to the “ERC721” and this “document”. NFT is an abbreviation for non-fungible token. It just likes certificates of gold jewelry. The ERC721 primarily defines the ability to track and transmit NFT. NFT is considered as a representative of ownership of electronic or real assets, which may include physical assets (houses, unique artworks), virtual collections (unique kitten photos), negative assets (loans owed or liabilities). The ERC721 is based on ERC20 (with 2 years of experience borrowed). NFT requires non-fungible, but the same batch of token generated by ERC20 is fungible. As can be seen from the implementation of metadata, the chain only records a URI, URI points to a JSON record. If it is a picture, you have to wrap another layer of picture address.

/// @title ERC-721 Non-Fungible Token Standard, optional metadata extension
/// @dev See https://eips.ethereum.org/EIPS/eip-721
///  Note: the ERC-165 identifier for this interface is 0x5b5e139f.
interface ERC721Metadata /* is ERC721 */ {
    /// @notice A descriptive name for a collection of NFTs in this contract
    function name() external view returns (string _name);

    /// @notice An abbreviated name for NFTs in this contract
    function symbol() external view returns (string _symbol);

    /// @notice A distinct Uniform Resource Identifier (URI) for a given asset.
    /// @dev Throws if `_tokenId` is not a valid NFT. URIs are defined in RFC
    ///  3986. The URI may point to a JSON file that conforms to the "ERC721
    ///  Metadata JSON Schema".
    function tokenURI(uint256 _tokenId) external view returns (string);
}

The URI address points to JSON:

 {
    "title": "Asset Metadata",
    "type": "object",
    "properties": {
        "name": {
            "type": "string",
            "description": "Identifies the asset to which this NFT represents"
        },
        "description": {
            "type": "string",
            "description": "Describes the asset to which this NFT represents"
        },
        "image": {
            "type": "string",
            "description": "A URI pointing to a resource with mime type image/* representing the asset to which this NFT represents. Consider making any images at a width between 320 and 1080 pixels and aspect ratio between 1.91:1 and 4:5 inclusive."
        }
    }
}

By now, you will find that although NFT is on the chain, URI is not on the chain. This leads to a new topic about the trust. All of them can be put on the chain if the cost is not considered.

On the other hand, the transfering of NFT requires more rigorous validation. Here gives a good example of creating an NFT smart contract from zero.

DeFI

DeFi is an acronym for decentralized finance, which emphasizes decentralization. Defined by the official documentation of Ethereum, it is a global alternative to the current financial system, which can be borrowed, deposited, invested, traded, and so on, fully open source. It is the sum of a series of products. All information is published in the chain for you to view and study. Traditional finance is different:

  1. There are many people who do not have the authority to open accounts and use traditional finance currently.
  2. Traditional business hours depend on different time zones, while DeFi is non-stop 24 hours a day.
  3. Traditional internal circulation often takes a long time.
  4. Traditional agents are to get commission.

Financial operations that are now available on Ethereum include:

  1. Transfer money quickly to people around the world.
  2. Pay salaries.
  3. Binding stable coins, such as Dai and UDSC. They are tied to the U.S. dollar because Ethereum’s prices are rising and the community has to solve the problem with stable coins. The currency instability of many Governments in Latin America has been used as a way to save money.
  4. Borrow money from individuals or pools of funds.
  5. Lend money to earn interest.
  6. Never-ending lottery. This is an innovative way to play. Put your coins into the pool, then everyone choose together for prize.
  7. Token exchange, like a 24-hour exchange in different currencies.
  8. Trading organizations. Ethereum also have a wide variety of fund management products, because no agent is needed, so no one will share the benefits.
  9. You can also set up a fund, secondary financing, etc.
  10. Insurance products can also work well, and while most products are designed to avoid loss of assets in the chain, they already have products associated with real life, such as this one Kenya Agricultural Corp insurance.

From Ethereum’s perspective, there are some conceptual layers:

  1. Blockchain, which provides a store of account information and transactions
  2. Assets, all tokens or cryptocurrencies
  3. Protocols, smart contracts
  4. Applications, a variety of DaPP help us use protocols

DAOs

DAO is an acronym for Decentralized Autonomous Organizations, officially introduced here. Think of DAO as an Internet native enterprise collectively owned and managed by members. No one in it has privileges. All cooperation is based on trustless but only DAO’s contract code. The code is open source to all members. Common DAO examples:

  1. Charities can accept donations from around the world and are earmarked by donors.
  2. The network of freelancers can bring together a group of manufacturers willing to invest in one direction and focus on addressing demand in the relevant direction.
  3. Venture capital funds, pool funds, automatic distribution of income.

DAO member roles are generally confirmed by token, token may be from a transaction, or may be obtained with some proof of work. Token is the right to vote. MakerDAO’s MKR is this kind of token.

DAO is based on smart contracts, which define the rules of the organization and preserve the organization’s wealth. Once record on the Ethereum chain, no one can change it unless there is a vote. Today’s DAO becomes more complex and controls more than 1% of DeFi protocols.

Take DAI for example, where more than 18 million DAIs are now locked into the DeFi protocol, and Compound Finance and Uniswap rely on MakerDAO’s token holders to maintain stability. A system that is growing daily and you may one day see MakerDAO’s decision in the local stock market news.

Here describes how to join the Ethereum community, which has many people from different backgrounds (developers, artists, accountants).

What can I do as a developer? Including learning to develop skills, solving technical problems to earn money, participating in hackathon, checkouting out of the code, joining Core Dev calls, watching wishlist, participating in the web3 community, etc.

How do I generate a DAO? It’s mainly about generating smart contracts and chaining them, but there are already a lot of tools or websites that can help, like DAOstack. How do I join a DAO that already exists? Here is a list, and there’s web3 about the art, law, and so on.

Web3

Here describes the difference between Web 2 and Web 3. All decentralized apps on Ethereum are defined as Web 3. They have some of the following characteristics: Web3 content is decentralized can not be censored, do not need personal information, will not be prevented from using the app, never stop serving. Web3 restrictions currently look mainly slow transactions, user interaction also need education, limited support for new browsers, chain is still very expensive, etc.

References

https://hackernoon.com/learn-blockchains-by-building-one-117428612f46

https://www.ibm.com/topics/smart-contracts

https://corpgov.law.harvard.edu/2018/05/26/an-introduction-to-smart-contracts-and-their-potential-and-inherent-limitations/

Nick Szabo, “Smart Contracts: Building Blocks for Digital Market,” 1996, http://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/smart_contracts_2.html

https://www.bitdegree.org/course/learn-solidity-space-doggos

https://www.investopedia.com/terms/c/crypto-token.asp

https://devbugging.com/difference-between-tokens-and-coins/

https://devbugging.com/different-types-of-tokens-in-crypto-explained/

https://www.coindesk.com/learn/what-is-an-ico/

https://theethereum.wiki/erc20_token_standard/

https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md

https://eips.ethereum.org/EIPS/eip-721

https://ethereum.org/en/developers/tutorials/how-to-write-and-deploy-an-nft/

https://docs.openzeppelin.com/contracts/2.x/erc721

https://www.ludu.co/course/ethereum/ico

https://ethereum.org/en/defi/

https://blog.etherisc.com/etherisc-teams-up-with-chainlink-to-deliver-crop-insurance-in-kenya-137e433c29dc

https://ethereum.org/en/community/

https://daostack.io/

https://ethereum.org/en/community/#decentralized-autonomous-organizations-daos/community/#decentralized-autonomous-organizations-daos

https://ethereum.org/en/developers/docs/web2-vs-web3/

Gallery