First, let’s introduce what Web3 is.
In 2014, Ethereum co-founder Gavin Wood first proposed the concept of “Web3,” providing a solution to the problem of excessive trust required by the Internet.
It is undeniable that centralized networks have helped billions of people integrate into the Internet and have built stable and reliable infrastructure on it. However, at the same time, a few centralized giants have almost monopolized the Internet and can do as they please. Web3, through blockchain, cryptocurrency, and NFTs, returns power to users in the form of ownership.
Web3 has now become a catch-all term representing a vision for a renewed and better Internet. Although it is difficult to provide a strict definition of Web3, it typically has the following characteristics:
In the book “Mister Lv’s Spring and Autumn Annals”, it says: “A wise man plans according to the times and acts following the trends.” This means that intelligent and visionary individuals will be prepared and act swiftly at the right time, making judgments and decisions based on the prevailing circumstances.
I believe that Web3 is undoubtedly a trend, but there is debate about when it truly began. Some say it started with the emergence of Bitcoin, while others argue it was Ethereum’s debut. I don’t entirely agree with either. Bitcoin’s emergence marked the beginning of the entire Web3 industry, while Ethereum’s appearance laid the foundation for the Web3 industry. However, I believe that what truly propelled Web3 to become a “force” was the massive explosion of the DeFi industry in 2020, which brought blockchain applications into the financial scene.
For an introduction to DeFi, you can refer to my previous article “MakerDAO & Uniswap: The Evolution of Decentralized Finance.”
The user base of the entire Web3 industry saw explosive expansion starting in 2020. Apart from a slowdown in development in 2022 due to the bear market, the number of users has continued to rise in other years. I believe that in 2024, with the Bitcoin halving and the arrival of the bull market, the user base will continue to grow, and the upward trend will be unstoppable.
In fact, the attitude of Hong Kong towards Web3 is also noteworthy. Since 2023, Hong Kong has frequently released friendly signals towards Web3:
Since Web3 has been trending since 2020, the best time to join Web3 was four years ago, and the next best time is now!
As I started exploring Web3 in 2020 and transitioned from Web2 to Web3 in 2022, I would like to share some personal experiences regarding why Web2 developers should learn Web3.
Actually, this question is no different from “why non-AI developers should learn AI”. I believe that as developers, we must first and foremost be continuous learners because the technology industry evolves rapidly, requiring ongoing learning to keep up with changes and maintain our competitiveness.
Learning involves both depth and breadth, and both are equally important. Depth, gained by delving into technical details, helps you become an expert in your field, while breadth, achieved by tracking technology trends and learning about adjacent fields, allows you to introduce new ideas into your area of expertise, making your work more creative.
Learning AI and Web3 now follows the same logic. By studying cutting-edge technologies, you can increase the breadth of your technical knowledge, similar to learning mobile development in the early years. However, what sets Web3 apart from these two is the absence of a “tipping point”.
The emergence of the iPhone revolutionized the mobile industry, making it the “tipping point” for mobile development. The advent of ChatGPT unleashed the imagination of AI, making it the “tipping point” for AI. However, Web3 has yet to witness such a revolutionary innovation. But this also means that Web3 is a more potentially innovative industry. If a Web2 developer can combine their existing technology and experience to build on Web3, they may be able to nurture great innovations.
Learning Web3 as a Web2 developer has another advantage: in case Web2 becomes obsolete in the future, you’ll have a backup plan.
The Web3 technology stack currently lacks a unified definition. I adopt Alchemy’s Web3 technology stack panorama, which is structured from bottom to top as follows:
When you choose to become a Web3 developer, you need to understand which layer of the Web3 technology stack your skills serve.
If you are serving the Network Layer, it means you need to develop Layer1 or Layer2, which are generally associated with laboratories or foundations. The required skills vary greatly, including cryptography, consensus algorithms, storage, networking, languages, and virtual machines. Engineering skills depend on the architecture and performance of the chain, and some chains are built rapidly using Cosmos SDK or OpStack.
If you are serving the Blockchain Interaction Layer, you generally work for infrastructure service providers, such as node services, data analysis services, and indexing services. This layer is similar to infrastructure service providers in Web2 (such as cloud services), and roles include frontend, backend, data, testing, and operations. Therefore, the required skills are roughly similar. Possibly, it requires some knowledge about blockchain network interfaces.
If you are serving the Presentation Layer, you are providing developers with development tools and libraries, commonly known as “selling shovels”. Specific development skills depend on the product form and the type of developers using the service. For example, developing an IDE involves user interfaces, local network setup, contract compilation, and contract deployment.
If you are serving DApps, the vast majority of Web3 development needs are concentrated in DApp development. So when we talk about Web3 development, we mainly refer to DApp development. I will introduce this point in detail in the next section.
Everyone should be familiar with the traditional Internet application architecture, including front-end, back-end and database. Taking an online shopping website as an example, the user first accesses the interface provided by the front-end through the browser to perform shopping-related 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, and returning the necessary data to the front end after retrieving the database. The database provides stable storage for the application, including all product information and user-related information (such as shopping cart contents).
The biggest difference between DApps built on the blockchain and traditional applications is the change in the roles of the backend and database. Smart contracts play the role of traditional back-end, and blockchain replaces traditional databases and provides decentralized data storage. The close collaboration between smart contracts and blockchain makes the storage and retrieval of data 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:
Interface development. For frontend engineers with experience in web development, interface development skills are transferable. There are basic skills such as HTML, CSS, and JavaScript, as well as mastery of modern frontend frameworks like React and Vue;
Authentication mechanisms and data read/write. In DApps, user authentication and management are implemented through blockchain wallets (e.g., MetaMask), so you need to learn how to integrate wallet interfaces. Data read/write is also done through on-chain APIs. Using JavaScript libraries like Ethers.js makes it easy to implement authentication mechanisms and data read/write.
Because many DApps are semi-decentralized, there is also a demand for backend development. Although backend engineer skills are transferable, since it involves on-chain data read/write, you need to integrate blockchain SDKs. It is preferable to use development languages like Go, Rust, or Node.js.
For contract development on EVM chains, the main focus is on learning the Solidity language. Beginners are recommended to learn on platforms like WTF Academy. For contract development on non-EVM chains, you need to learn specific languages depending on the chain. For example, developing smart contracts on Solana requires learning Rust, and developing smart contracts on Sui requires learning Sui Move. However, learning resources are currently limited and may require consulting the respective official websites.
Tips for learning Web3
Web3 is the future. Web2 developers exploring this field, whether it’s on the client-side, frontend, or backend, can leverage their existing technical advantages, expand their career horizons, and enhance their creativity at work.
However, the current Web3 industry is still very volatile. Many people are frantically chasing after it, making aggressive investments, which can often lead to anxiety. If you’re determined to become a Web3 developer, you must consciously block out some distracting information, focus on the technology itself, and engage in long-term, valuable endeavors. This approach can better help you grow.
First, let’s introduce what Web3 is.
In 2014, Ethereum co-founder Gavin Wood first proposed the concept of “Web3,” providing a solution to the problem of excessive trust required by the Internet.
It is undeniable that centralized networks have helped billions of people integrate into the Internet and have built stable and reliable infrastructure on it. However, at the same time, a few centralized giants have almost monopolized the Internet and can do as they please. Web3, through blockchain, cryptocurrency, and NFTs, returns power to users in the form of ownership.
Web3 has now become a catch-all term representing a vision for a renewed and better Internet. Although it is difficult to provide a strict definition of Web3, it typically has the following characteristics:
In the book “Mister Lv’s Spring and Autumn Annals”, it says: “A wise man plans according to the times and acts following the trends.” This means that intelligent and visionary individuals will be prepared and act swiftly at the right time, making judgments and decisions based on the prevailing circumstances.
I believe that Web3 is undoubtedly a trend, but there is debate about when it truly began. Some say it started with the emergence of Bitcoin, while others argue it was Ethereum’s debut. I don’t entirely agree with either. Bitcoin’s emergence marked the beginning of the entire Web3 industry, while Ethereum’s appearance laid the foundation for the Web3 industry. However, I believe that what truly propelled Web3 to become a “force” was the massive explosion of the DeFi industry in 2020, which brought blockchain applications into the financial scene.
For an introduction to DeFi, you can refer to my previous article “MakerDAO & Uniswap: The Evolution of Decentralized Finance.”
The user base of the entire Web3 industry saw explosive expansion starting in 2020. Apart from a slowdown in development in 2022 due to the bear market, the number of users has continued to rise in other years. I believe that in 2024, with the Bitcoin halving and the arrival of the bull market, the user base will continue to grow, and the upward trend will be unstoppable.
In fact, the attitude of Hong Kong towards Web3 is also noteworthy. Since 2023, Hong Kong has frequently released friendly signals towards Web3:
Since Web3 has been trending since 2020, the best time to join Web3 was four years ago, and the next best time is now!
As I started exploring Web3 in 2020 and transitioned from Web2 to Web3 in 2022, I would like to share some personal experiences regarding why Web2 developers should learn Web3.
Actually, this question is no different from “why non-AI developers should learn AI”. I believe that as developers, we must first and foremost be continuous learners because the technology industry evolves rapidly, requiring ongoing learning to keep up with changes and maintain our competitiveness.
Learning involves both depth and breadth, and both are equally important. Depth, gained by delving into technical details, helps you become an expert in your field, while breadth, achieved by tracking technology trends and learning about adjacent fields, allows you to introduce new ideas into your area of expertise, making your work more creative.
Learning AI and Web3 now follows the same logic. By studying cutting-edge technologies, you can increase the breadth of your technical knowledge, similar to learning mobile development in the early years. However, what sets Web3 apart from these two is the absence of a “tipping point”.
The emergence of the iPhone revolutionized the mobile industry, making it the “tipping point” for mobile development. The advent of ChatGPT unleashed the imagination of AI, making it the “tipping point” for AI. However, Web3 has yet to witness such a revolutionary innovation. But this also means that Web3 is a more potentially innovative industry. If a Web2 developer can combine their existing technology and experience to build on Web3, they may be able to nurture great innovations.
Learning Web3 as a Web2 developer has another advantage: in case Web2 becomes obsolete in the future, you’ll have a backup plan.
The Web3 technology stack currently lacks a unified definition. I adopt Alchemy’s Web3 technology stack panorama, which is structured from bottom to top as follows:
When you choose to become a Web3 developer, you need to understand which layer of the Web3 technology stack your skills serve.
If you are serving the Network Layer, it means you need to develop Layer1 or Layer2, which are generally associated with laboratories or foundations. The required skills vary greatly, including cryptography, consensus algorithms, storage, networking, languages, and virtual machines. Engineering skills depend on the architecture and performance of the chain, and some chains are built rapidly using Cosmos SDK or OpStack.
If you are serving the Blockchain Interaction Layer, you generally work for infrastructure service providers, such as node services, data analysis services, and indexing services. This layer is similar to infrastructure service providers in Web2 (such as cloud services), and roles include frontend, backend, data, testing, and operations. Therefore, the required skills are roughly similar. Possibly, it requires some knowledge about blockchain network interfaces.
If you are serving the Presentation Layer, you are providing developers with development tools and libraries, commonly known as “selling shovels”. Specific development skills depend on the product form and the type of developers using the service. For example, developing an IDE involves user interfaces, local network setup, contract compilation, and contract deployment.
If you are serving DApps, the vast majority of Web3 development needs are concentrated in DApp development. So when we talk about Web3 development, we mainly refer to DApp development. I will introduce this point in detail in the next section.
Everyone should be familiar with the traditional Internet application architecture, including front-end, back-end and database. Taking an online shopping website as an example, the user first accesses the interface provided by the front-end through the browser to perform shopping-related 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, and returning the necessary data to the front end after retrieving the database. The database provides stable storage for the application, including all product information and user-related information (such as shopping cart contents).
The biggest difference between DApps built on the blockchain and traditional applications is the change in the roles of the backend and database. Smart contracts play the role of traditional back-end, and blockchain replaces traditional databases and provides decentralized data storage. The close collaboration between smart contracts and blockchain makes the storage and retrieval of data 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:
Interface development. For frontend engineers with experience in web development, interface development skills are transferable. There are basic skills such as HTML, CSS, and JavaScript, as well as mastery of modern frontend frameworks like React and Vue;
Authentication mechanisms and data read/write. In DApps, user authentication and management are implemented through blockchain wallets (e.g., MetaMask), so you need to learn how to integrate wallet interfaces. Data read/write is also done through on-chain APIs. Using JavaScript libraries like Ethers.js makes it easy to implement authentication mechanisms and data read/write.
Because many DApps are semi-decentralized, there is also a demand for backend development. Although backend engineer skills are transferable, since it involves on-chain data read/write, you need to integrate blockchain SDKs. It is preferable to use development languages like Go, Rust, or Node.js.
For contract development on EVM chains, the main focus is on learning the Solidity language. Beginners are recommended to learn on platforms like WTF Academy. For contract development on non-EVM chains, you need to learn specific languages depending on the chain. For example, developing smart contracts on Solana requires learning Rust, and developing smart contracts on Sui requires learning Sui Move. However, learning resources are currently limited and may require consulting the respective official websites.
Tips for learning Web3
Web3 is the future. Web2 developers exploring this field, whether it’s on the client-side, frontend, or backend, can leverage their existing technical advantages, expand their career horizons, and enhance their creativity at work.
However, the current Web3 industry is still very volatile. Many people are frantically chasing after it, making aggressive investments, which can often lead to anxiety. If you’re determined to become a Web3 developer, you must consciously block out some distracting information, focus on the technology itself, and engage in long-term, valuable endeavors. This approach can better help you grow.