Even though the Web3 developer ecosystem is a tiny part of the larger web developer ecosystem, it seems to be growing rapidly, so it makes sense to try and pinpoint exactly what the Web3 technology stack is made up of. We know that it includes blockchain for decentralization and cryptocurrency wallets as a form of identification. But how exactly does the Web3 world work?
Frontend
The client technologies (frameworks and libraries) of Web3 are essentially the same as those of Web 2.0. The front end makes heavy use of JavaScript, and as with the current state of Web 2.0, React is the leading JavaScript framework.
Exploring Ethereum
We now move on to more complex aspects of the Web3 stack. By now, most developers are familiar with the concept of a blockchain — it is essentially a distributed ledger of data. But there are many different types of blockchains. The two most important of these are Bitcoin and Ethereum (and it is no coincidence that the cryptocurrencies associated with these blockchains are the two market leaders). But while Bitcoin is about as programmable as a calculator — as Ethereum researcher Justin Drake said on an episode of the Web3 Breakdowns podcast — Ethereum is a fully programmable “Turing-complete” computer.
How to store data and query it
One of the hardest parts of Web3 development is storing and using data. While blockchains are great as “untrusted” chains of immutable data, they are also incredibly inefficient at storing and processing large amounts of data – especially for decentralized applications. Therefore, file storage protocols such as IPFS, Arweave, and Filecoin are used here.
Decentralization: The Web3 Developer’s Predicament
Building on the Web3 stack, it’s clear that traditional web programming skills from JavaScript to Rust will serve you well in Web3 development. But you will also have to learn how to program blockchains using smart contracts and get used to the alien worlds of storing cryptographic files and off-chain solutions.