Move: Web3's Javascript
Original Title: 《Move: The Javascript of Web3?》
Authors: Mustafa Yilham, Jermaine Wong, Henry Ang
Introduction:
Looking around Twitter posts and crypto publications, the names Sui and Aptos always come up. What are these new high-throughput L1 blockchains? Why are they attracting investments from companies like a16z, FTX, and Multicoin? We found that both blockchains have deep historical ties to Diem and use a new programming language—Move.
In this article, we will delve into the features of Move, briefly introduce blockchains like Sui and Aptos that adopt Move, then review the birth of Solidity/EVM, and finally compare whether Move and MoveVM can create their own vibrant ecosystem.
Simple Table of Contents:
1. The Origin of Move
2. Advantages of Move
3. Development Ecosystem of Move
4. Solidity/EVM: How It Became the Most Vibrant Developer Ecosystem
5. The Future of Move Language
1. The Origin of Move
Move is a Rust-based programming language developed for Meta's Diem blockchain project. The team was exploring other smart contract languages at the time, but none had the characteristics of scarcity, determinism, and verifiability features, so they built Move.
The existing Move GitHub repository is currently managed by Mysten Labs, with teams from Aptos and Sui forming the core development team of Move. The vision of the Move language is to become the Javascript of Web3, helping developers build blockchain applications securely, easily, and quickly.
2. Advantages of Move
Move is platform-agnostic, supporting cross-blockchain shared libraries, tools, and developer communities. The design of the Move language emphasizes security, aiming to avoid many scenarios where Web3.0 users fall victim, including but not limited to re-entrancy vulnerabilities, poison tokens, and spoofed token approvals. Digital assets should also be treated as resources, meaning they cannot be arbitrarily copied or accidentally destroyed.
To provide additional protection, Move can be assisted by the Move Prover verification tool, which allows developers to write formal specifications for the key features of their applications and use the verifier to check the correctness of code execution in 30 seconds.
3. Development Ecosystem of Move
1. Sui Developed by Mysten Labs
(1) What is Sui, and what is the team's background?
Mysten Labs' Sui is a decentralized proof-of-stake blockchain with horizontally scalable throughput and storage characteristics. The team behind Mysten Labs comes from Novi Research, which is Meta's internal advanced blockchain R&D department, dedicated to the operation of the Diem blockchain and the Move programming language. The founding team includes CEO Evan Cheng, CPO Adeniyi Abiodun, CTO Sam Blackshear (the founder of Move), Chief Scientist George Danezis, and Chief Cryptographer Kostas Chalkais.
(2) Funding Events
Mysten Labs is negotiating to raise $200 million at a $2 billion valuation, with FTX Ventures leading the round. Mysten Labs raised $36 million in a Series A funding round led by Andreessen Horowitz at the end of 2021.
(3) Performance
Sui's processing speed is expected to exceed 120,000 TPS, capable of handling independent transactions at sub-second speeds and processing more complex transactions (shared objects) in 3 seconds. The dependencies of transactions are mapped out before execution, allowing independent transactions to be processed through Byzantine consensus broadcasting, while transactions involving shared objects are handled by another consensus protocol called Narwhal & Tusk.
(4) Move Language on Sui
When using Move on Sui, certain changes have been made to the core functionalities of Move, especially regarding global storage operators and key capabilities. These changes retain the security and flexibility of Move while optimizing the storage and address mechanisms, thereby improving network performance and reducing transaction confirmation times.
(5) Development Roadmap
Sui DevNet has been publicly released since May, and the team announced the launch of an incentivized testnet in August 2022. Registration for the Sui Hackathon has also been open since the end of June.
(6) Ecosystem Projects
Information about projects developed on Sui has been scarce. So far, the self-hosted wallet Sui Wallet as a Chrome extension has been launched, and a third-party Ethos Wallet has been used on DevNet.
2. Aptos
(1) What is Aptos, and who is behind it?
Aptos is a Layer 1 blockchain with the mission of creating universal and equitable access to decentralized assets for billions of people. Aptos was co-founded by CEO Mo Shaik and former Meta internal blockchain solutions chief software engineer CTO Avery Ching. Before joining Meta, Mo worked at ConsenSys, BlackRock, and Boston Consulting Group, while Avery worked at Yahoo. The Aptos team consists of PhDs, researchers, engineers, designers, and strategists with experience at Meta, Novi, Amazon, VMware, and more.
(2) Funding Events
Aptos completed a $200 million investment led by a16z in March, with participants including Tiger Global, Katie Haun, Multicoin Capital, 3 Arrows Capital, FTX Ventures, and Coinbase Ventures, followed by a $150 million funding round led by FTX Ventures on July 25.
(3) Performance
Aptos can now achieve a maximum of 10,000 TPS, with a theoretical maximum throughput of 160,000 TPS. Most transactions are verified after two network broadcasts, with a finalization time of 250 milliseconds. The key to Aptos's high throughput is the ability to separate the transaction execution layer from the consensus protocol, achieving parallel execution capabilities through Block-STM and sub-second latency through state synchronization. The consensus engine is adapted from Diem's HotStuff and its team's fourth iteration.
(4) Move Language on Aptos
Aptos extends the core MoveVM with additional functionalities through an adapter layer, including parallelism achieved through Block-STM, concurrent execution of transactions without user input, tables for large-scale storage of keys in accounts, and decoupled fine-grained storage where the amount of data in accounts affects the Gas Fee of transactions related to those accounts.
(5) Development Roadmap
Aptos DevNet has been publicly released since March, and the team has completed the first phase of the four planned incentivized testnets and is currently working on the second phase. Aptos also announced a grant program in June to further accelerate the rapid development of the Aptos ecosystem, with applications now open and usable.
(6) Ecosystem Progress
There are over 1,500 forks on the Aptos core repository, and more than 100 projects across DeFi, NFTs, gaming, and other sectors are expected to be deployed on the mainnet. Teams such as Pontem Network, Macalinao brothers, Nutrios, PayMagic, MartianDAO, and Solrise are preparing for the anticipated launch of the Aptos mainnet around the end of September.
3. Other Blockchains Adopting Move Language
(1) 0L ------ An L1 blockchain protocol forked from an open-source codebase created from Diem. This open-source project began in 2019 as a community-driven initiative without corporate sponsors, venture capital, or foundations.
(2) Starcoin ------ A smart contract platform that uses enhanced proof-of-work consensus and the Move language. It optimizes the construction of different ecosystems such as DeFi, NFTs, and gaming through layered and flexible interoperability.
4. Comparison of Sui/Aptos with Other Blockchains
Multi-dimensional comparison of four public chains
Source: Aptos, Solana Explorer, Etherscan, Sui Node, Aptos Node, Solana Node, ETH Node
From the comparison above, Sui and Aptos are similar to Solana in terms of parallel transaction execution, thus having higher throughput.
However, when running full validating nodes, Sui and Aptos are closer to Ethereum, as the entry threshold is lower, which will help achieve greater decentralization of the community validation network.
Interestingly, the storage requirements for Sui and Aptos are significantly lower than those for Solana and Ethereum. Once more similar historical states appear on the two emerging blockchains, we will need to see if larger storage space is worth it.
5. Solidity/EVM: How It Became the Most Vibrant Developer Ecosystem
To fully understand the development path taken by Move/MoveVM in building its own programming language and virtual machine, we need to review Solidity/EVM and how they became the de facto smart contract programming language today.
In the early days, there were two approaches to writing smart contracts on a new blockchain.
a) Use existing programming languages and run them through a general-purpose virtual machine WebAssembly (WASM)
b) Build a new programming language and a new virtual machine from scratch.
While Solidity and EVM took the less traveled path, it seems to have paid off after the DeFi boom in 2020. So how did Solidity/EVM surpass the general-purpose WASM VM? Core developers of Starcoin @jolestar believe there are three reasons:
a) General-purpose languages are better suited for operating systems than for blockchains. If you strip away functionalities like operating system calls, file I/O, hardware, networking, and concurrency libraries, the shared libraries between smart contracts and programming languages are minimal. This undermines the purpose of using a general-purpose programming language, as the main advantage of programming languages is to leverage existing shared libraries in the developer ecosystem.
b) Although WASM theoretically supports different programming languages, the reality is that programming languages with runtime systems (like Go, Java) are not suitable for blockchains, as they generate a large amount of binary files once compiled. This effectively limits programming languages to C, C++, and Rust, which, from the perspective of new developers, are not much easier to learn than Solidity. Additionally, various programming languages may lead to unexpected fragmentation in the developer ecosystem.
c) Given that each chain has a different state handling mechanism, interoperability remains an issue even if they run on the same WASM VM. Since smart contracts on each chain cannot be directly migrated to different chains, there is also the problem of developer ecosystem fragmentation.
Moreover, due to its replicable open-source libraries, Solidity has proven to have user stickiness. The ability to use audited code is a huge convenience for application developers; it is important to note that secure smart contracts require security audits, where each line of code incurs additional costs.
The larger developer ecosystem from the EVM community has contributed to a wealth of audited code, which will encourage more developers to build on EVM.
6. The Future of Move Language
Move/MoveVM is now following the same path as Solidity/EVM, and some data shows that this is indeed the case.
Source: a16z State of Crypto
Solana has also made a similar choice by building its own virtual machine using the programming language Rust, and we can see that large-scale developer activity on Move chains resembles the early growth trajectory of Solidity. On the user side, Solana has also established itself as the chain with the most active accounts on daily, 7D, and 30D metrics.
Given that FTX Ventures is an investor in Sui and Aptos, we believe they can help develop the Move ecosystem, just as they did during Solana's guiding phase. In summary, both Sui and Aptos are vigorously promoting their DevNets, including incubation rewards and hackathons, and we expect developer activity to increase in the coming months.
Additionally, to help overcome the initial lack of developer resources for the new programming language and assist in the gradual migration of developers from other languages to the new language, projects like Pontem have developed a branch of Diem MoveVM that can now be deployed on other existing chains such as Polkadot, Cosmos, Avalanche, etc., and are developing a new EVM compatible with MoveVM.
Overall, we believe that Move provides a safer, faster, and simpler way to write smart contract languages, which will serve as the foundational layer for a powerful and vibrant developer ecosystem, and we believe that people will use Move to build the next generation of Web3 applications to attract more Web3 users.
In the coming weeks, we will share our deeper findings and analyses on the Sui and Aptos blockchains.
Completion of this article must be credited to Jolestar, who provided his technical expertise and insights. Jolestar is an early user of Move and a core developer of Starcoin.