“Has Anyone Seen Web3?” — The Complete Roadmap and Resources to Become a Web3 Developer in 2022
20+ documentations, tutorials, and videos to help you get started with Web3
Background Photo by Alexander Shatov on Unsplash. Edited by author using Canvas
Twitter went crazy last month when Musk and Dorsey mocked the idea of Web3. Few called it the future of the internet and few called it to be bogus. But do you know what exactly is Web 3.0 and how does it work? In this article, you’ll be introduced to the new dimension of the internet and how to get started in this field from a developer’s point of view.
Key Takeaways
- Beginner-friendly Introduction to Web3 and its ecosystem
- Is Web3 a hype or the future of the Internet?
- Roadmap to learn Web3 technology
Web3 in Layman’s Terms
As Eshita writes briefly:
- Web1: Read
- Web2: Read, write
- Web3: Read, write, own
In layman’s terms, Web3 is widely understood as the third and latest ”phase” of the Internet.
Web1 was read-only. The Internet was a bunch of connected computers. People consumed static web pages and users were only consumers.
Web2 is dynamic i.e. read and write. People create and consume content on the social platforms that we’re all familiar with. In web2, tech giants extract value from users by acting as middlemen. These values/data profit them a lot, so web 2.0 is the era of targeted advertising and lack of privacy.
Web3 is decentralized i.e. read, write, and own. People create, consume, and own their work through tokens. Web3 is built on peer-to-peer networks of computers that talk to each other without middlemen.
Is Web3 a Hype or the Future of the Internet?
You might have seen discussions on the web like: “is Web3 yet another scam?”.
It’s not hard to figure out that all of these talks revolve around some crypto which that group doesn’t like. But Web 3.0 is just using the internet integrated with crypto payments. The system itself is not a ‘ scam’. This is like calling the industrial revolution a scam because you don’t like Carnegie Steel.
We are in the very early stages of development and there are bound to be many projects with flaws. However eventually as more people adopt it the use cases start becoming the reality and that is when we will see true decentralization. You can’t be decentralized if everyone isn’t participating.
@ianDAOs on Twitter
Developer Roadmap To Get Started With Web 3.0
1. Web 2.0 Skills
As a prerequisite, You should know JavaScript and web development in general. Your Web2 skills like TS/JS, React, Chakra/Material UI will give you a head start into Web3. Also, Core computer concepts (Operating systems, Networking) and problem-solving skills are fundamental and required no matter web2 or web3.
2. Learn the Fundamentals of Blockchain Technology
Blockchains are a fantastic piece of technology, but they aren’t easy to understand. You’ll have to put some time into it to understand what you will later build on.
- Blockchain Technology Course on EdX
- Blockchain Developer Nano degree on Udacity
- Blockchain Explained [YouTube]
3. Learn about Metamask or any equivalent Crypto Wallet
Official logo
Metamask is a wallet used to interact with the blockchain. This is a very basic skill expected from a crypto user, however, developers should know more than the average user. Like how to programmatically request network change and detect current accounts and networks.
- Metamask Docs
- Setting Up Metamask Wallet
- Metamask for Developers: Building First Web3 Apps Step By Step
Additional: Learn How to read transactions with a Block ExplorerStart with any Block explorer like EtherScan or BlockExplorer. Try understanding what each term means, google them, there is a lot to learn here. A lot of people don’t know how to read the transactions. Also, learn by reading code of other popular smart contracts most of them are Open Source. Learn how to verify a contract from explorer.
4. Learn About Smart Contracts
Smart contracts are how you can actually program the blockchain. They are pieces of code that have been distributed to the blockchain and are written in a language that blockchain nodes can understand. Smart contracts can nearly do everything, from fungible and non-fungible tokens to the backend of your next decentralized app. They are, however, different from the code you usually write.
5. Learn Solidity
Image from https://en.bitcoinwiki.org/wiki/Solidity
New language based on Ethereum Virtual machine. For Solana and Near, learn the Rust language. But this article is solely focused on EVM, so let’s dive into Solidity. The language is under very quick development, new versions roll out pretty quick so don’t get overwhelmed. Reading habit is recommended as some of the good tutorials are in text not in video format.
Best way to start Solidity is by creating some Zombies.
- Solidity by Examples
- Solidity Tutorial: A Full Course on Ethereum, Blockchain Development, Smart Contracts, and the EVM
- Freecodecamp [YouTube]
- EatTheblocks [YouTube]
- Solidity Docs [Intermediate]
- Smart Contract Programmer [YouTube]
- Dapp University [YouTube]
6. Learn How To Interface With The Blockchain
Web3.js logo
Decentralized apps consist of two components: Your frontend and smart contracts executed on the blockchain. For your front end to talk to the blockchain, you’ll need to interface with it. Here are two popular choices to interface with blockchains that implement the Ethereum API, web3.js and ethers.js.
You can use Web3.js to create clients that interface with the Etherem Blockchain. It’s a collection of libraries that allows you to transfer Ether from one account to another, read and write data from smart contracts, and build smart contracts.
The [ethers.js](https://docs.ethers.io/v5/)
library intends to be a comprehensive and lightweight interface to the Ethereum Blockchain and its ecosystem. It was created with ethers.io in mind but has now evolved into a more general-purpose library.
7. Testing and Deploying Smart Contracts
Easy and Beginner-friendly way is to start with Remix IDE. Just like how we use VS Code, Remix is an Online IDE for writing Solidity code.
The great way is by using the highly recommended Hard Hat framework.
There used to be 2 tools before Hard Hat came. Namely, Truffle(for deploying and testing contracts on Blockchain) and Ganache(Runs a local blockchain with 10 wallets). Hard Hat is a combination of these 2 tools. Testing and Blockchain combined into one! Isn’t it cool!
8. Join Communities and Participate in Hackathons
Here are 9 flourishing communities:
- Developer DAO
- Buildspace
- Dacade
- Pot Heads
- Explorer Guide
- Web3Community
- Figment
- Buildspace
- Questbook (Specific to India)
- SuperTeamDAO
A few hackathons and open source contributions:
Conclusion
Okay, so it’s a wrap. I hope this post helps you.
Learning Web3.0 and blockchain development might sound daunting at first, but everyone can do it.
Learn step-by-step using starting from the fundamentals of Computer Science, to JavaScript, from solidity to cutting edge Defi applications.