Why: Why become a Web3 developer
What is Web3
First, let me introduce what Web3 is.
In 2014, Ethereum co-founder Gavin Wood first proposed the concept of "Web3", providing a solution to the problem of the Internet requiring too much trust.
It is undeniable that centralized networks have helped billions of people integrate into the Internet and created a stable and reliable infrastructure on it. But at the same time, a few centralized giants have almost monopolized the Internet and can even do whatever they want. Web3 returns power to users in the form of ownership through blockchain, cryptocurrency and NFT.
Web3 has become an all-encompassing term today, representing a vision for a newer and better Internet. Although it is difficult to give a strict definition of Web3, it is generally characterized by the following:
Decentralized: Not controlled by a centralized entity, but rather ownership is distributed between builders and users;
Permissionless: Everyone has equal rights to participate in Web3, and no one is excluded;
Trustless: Operates through an economic incentive (token) mechanism without relying on a trusted third party.
The Time and Trend of Web3
There is a saying in Lüshi Chunqiu: "A gentleman plans and acts according to the time and follows the trend." This means that a wise and far-sighted person will be prepared, act quickly at the right time, follow the situation, make judgments, and then take action.
I think Web3 is undoubtedly a trend, but some say it was the emergence of Bitcoin, while others say it was the emergence of Ethereum. I don’t completely agree. The emergence of Bitcoin is the beginning of the entire Web3 industry, and the emergence of Ethereum is the cornerstone of the Web3 industry. But I think what really made Web3 a trend was the massive outbreak of the DeFi industry in 2020, which allowed blockchain to be applied in financial scenarios.
The number of users in the entire Web3 industry has experienced explosive expansion since 2020. Except for the slowdown in development due to the bear market in 2022, the number of users has continued to increase in other years. I believe that in 2024, with the halving of Bitcoin and the arrival of the bull market, the number of users will continue to increase, and the upward trend is unstoppable.
In fact, we can also see the attitude of Hong Kong towards Web3. Since 2023, Hong Kong has frequently sent friendly signals to Web3:
In April 2023, the Hong Kong Web3 Association was established to promote the development of the Web3 ecosystem;
In August 2023, the “Policy Declaration on the Development of Virtual Assets in Hong Kong” was issued, which clearly supports the development of Web3;
In October 2023, the CSRC updated its cryptocurrency market regulatory policy to provide compliance guidance for virtual asset exchanges;
In January 2024, the first batch of virtual asset exchanges in Hong Kong were licensed;
In April 2024, the Web3 Carnival was held in Hong Kong, and in the same month the Hong Kong government launched a digital asset ETF.
Since Web3 has become a trend since 2020, the best time to join Web3 was four years ago, and the second best time is now!!!
Web2 developers should learn Web3
As a developer who came into contact with Web3 in 2020 and transitioned from Web2 to Web3 in 2022, I would like to share some personal experience on "Why Web2 developers should learn Web3 more".
In fact, this question is no different from "Why should non-AI developers learn AI?" I believe that as a developer, you must first be a continuous learner, because the technology industry is updated very quickly, and continuous learning is needed to keep up with the changes and maintain your competitiveness.
Learning can be divided into depth and breadth, both of which are equally important. Depth will help you become an expert in your field by delving into technical details, while breadth can introduce new ideas into your professional field and make your work more creative by tracking technological trends and learning knowledge in adjacent fields.
This is the reason why we study AI and Web3 now. We can increase our technical breadth by learning the most cutting-edge technologies, just like we learned mobile development in our early years. However, what makes Web3 different from these two is that it lacks a "singularity moment".
The emergence of iPhone has led to the transformation of mobile terminals. iPhone is the "singularity moment" of mobile terminals. The emergence of ChatGPT has opened up the imagination of AI. ChatGPT is the "singularity moment" of AI. Web3 has not yet seen such revolutionary innovations, but this also means that Web3 is an industry with greater potential and innovation. If a Web2 developer can combine existing technology and experience to build on Web3, great innovations may be born.
Another benefit of Web2 learning Web3 is that if Web2 fails to run in the future, you can still join it if you can’t defeat it.
How: How to become a Web3 developer
Web3 Technology Stack
There is no unified definition of the Web3 technology stack yet. I use Alchemy's Web3 technology stack overview, from bottom to top:
Network layer: also known as the chain, including Layer 1 and Layer 2, such as Bitcoin, Ethereum, Solana, Sui, Starknet, etc.
Blockchain interaction layer: This layer allows developers and users to read and write data in the blockchain, including node services, faucets, index services, and blockchain browsers;
Presentation layer: This layer is mainly for developers and reflects many aspects of Web2 development, such as tools and libraries specific to blockchain developers, and data storage on the blockchain;
Distributed Applications (DApps): This layer is primarily user-facing and covers DeFi, NFTs, identity and authentication, data and analytics, and many other DApp categories.
When you choose to become a Web3 developer, you need to understand which layer of the Web3 technology stack your technology serves.
If it is a service network layer, it means that Layer 1 or Layer 2 needs to be developed, usually in the corresponding laboratory or foundation. The skills required vary greatly. The underlying technologies include cryptography, consensus algorithms, storage, networks, languages, and virtual machines. The engineering technology is determined by the architecture and performance of the chain. Some chains are quickly built through Cosmos SDK or OpStack.
If you are serving the blockchain interaction layer, you usually go to some infrastructure service providers, such as node services, data analysis services, and index services. This layer is actually similar to the infrastructure service providers of Web2 (such as cloud services). The roles are also front-end, back-end, data, testing, operation and maintenance, etc., so the skills required are also roughly the same. You may also need to understand the interface of the blockchain network.
If it is the service presentation layer, it is to develop tools and libraries for developers, commonly known as "selling shovels". The specific development skills will be determined by the product form and the type of developer of the service. For example, developing an IDE will involve user interface, local network construction, contract compilation, contract deployment, etc.
If it is to serve DApps, in fact, most of the Web3 development needs are concentrated on DApp development, so the Web3 development we generally refer to is mainly DApp development. The next section will expand on this content.
Skills required for DApp development
Everyone should be familiar with the traditional Internet application architecture, which includes the front-end, back-end, and database. Take an online shopping website as an example. The user first accesses the interface provided by the front-end through a browser to perform shopping operations. If the user searches for a certain product keyword, the back-end will be responsible for processing the corresponding logic, that is, responding to the request from the front-end, searching the database and returning the necessary data to the front-end. The database provides stable storage for the application, including all the information of the product and the user's related information (such as the shopping cart content).
The biggest difference between DApps built on blockchain and traditional applications is the change in the roles of the backend and database. Smart contracts play the role of traditional backends, while blockchain replaces traditional databases and provides decentralized data storage. The close collaboration between smart contracts and blockchain makes data storage and retrieval transparent and difficult to tamper with.
Therefore, the skills of DApp development mainly lie in the development of front-end and smart contracts. The skills that need to be mastered are as follows:
front end
Interface development. For front-end engineers with web development experience, interface development skills are transferable, including basic skills such as HTML, CSS, and JavaScript, as well as mastery of modern front-end frameworks such as React and Vue;
Authentication mechanism and data reading and writing. In DApp, user authentication and management are implemented through blockchain wallets (such as MetaMask), so you need to learn how to integrate the wallet interface, and data reading and writing are also done through the on-chain API. By using JavaScript libraries such as Ethers.js, you can easily implement authentication mechanisms and data reading and writing.
rear end
Since many DApps are semi-centralized, there are also many backend requirements. Although the skills of backend engineers can be transferred, since it involves reading and writing on-chain data, it is necessary to integrate the blockchain SDK. The development language is preferably Go/Rust/NodeJS.
Smart Contracts
For contract development on the EVM chain, you mainly learn the Solidity language. Beginners are recommended to study on WTF Academy. For contract development on non-EVM chains, you need to learn based on the specific chain. For example, to develop smart contracts on Solana, you need to learn Rust, and to develop smart contracts on Sui, you need to learn Sui Move. However, there are currently few learning materials, so you need to go to the corresponding official website.
Tips for learning Web3
Check Web3 media for industry news on a daily basis: Panews, Foresight, Rhythm, Golden Finance, and ODaily are recommended;
Occasionally hang out in the Web3 developer community, recommending Denglian, TinTinland, WTF Academy, BuilderDAO, and OpenBuild;
When learning a new project, read the official documentation first, follow the official Twitter/Discord, and take a quick look at the code base if you have time.
You must do projects. If you have channels, you can do projects directly. If you don’t have channels, you can also participate in Hackthon to accumulate project experience.
English is very important, study it well.
Summarize
Web3 is definitely the future. For Web2 developers, when exploring the field of Web3, whether it is the client, front-end or back-end, they can give full play to the existing technical advantages, expand their professional horizons and enhance the creativity of their work.
However, the current Web3 industry is still very impetuous. Many people are chasing it crazily and investing aggressively, which often makes people feel anxious. If you are determined to become a Web3 developer, you must consciously block some interfering information, focus on the technology itself, and do something valuable in the long run to better help yourself grow.