Roadmap to become a web3 developer
Tags: webdev, web3, programming, tutorial
Published: 2022-02-13 05:13:52

Hello there everyone, I'm Darshan and i'm here today to explain you a complete fresh roadmap about web3.0. 

So, lot of you guys have heard about web3.0 as it is in the trend right now, and each and everyone is trying the space of web3.0. So, Let's start with this complete roadmap.

Let's goo!!

1. **Learn the fundamentals**
So, first of all you need to understand the basics of web3.0 like what technologies it has, what is it and this basic things, once the fundamentals are clear you can start observing some latest technologies it has to work with like Blockchain, Solidity, Solana and etc. You also need to learn about backend for next-generation decentralised applications. (DApps)

2. **Learn decentralised web**
After learning about the blockchain, the nodes, the consensus, and all the major components of this technology, you will start to ask yourself, "What kind of applications can I develop using blockchain?" 
The applications built on top of Blockchain are called Decentralized applications, or DApps, [Learn more here](https://www.coursera.org/learn/decentralized-apps-on-blockchain)

3. **Learn about Smart Contracts**
Smart contract is simply a program that runs on the Ethereum blockchain. It's a collection of code (its functions) and data (its state) that resides at a specific address on the Ethereum blockchain.
It means they have a balance & they can send transactions over the network. However, if they're not controlled by a user then they are deployed to the network.

4. **Learn Frontend & Backend web development**
Alright, so as for the development of your web3 app we'd need to work on the frontend with technologies like ReactJS or NextJS and you should be able to work on them. Also, decentralized application backends are very different from “standard” application backends, starting with the fact that blockchain technology is used as the main source of decentralized data storage, while standard backends often use databases or data storage.

5. **Learn Solidity**
Solidity is an object-oriented, high-level programming language used to create smart contracts that automate transactions on the blockchain. Solidity is statically typed, supports inheritance, libraries and complex user-defined types among other features
With Solidity you can create contracts for uses such as voting, crowdfunding, blind auctions, and multi-signature wallets.
[Here you go with the better understanding of it] 
 (https://www.youtube.com/watch?v=M576WGiDBdQ&ab_channel=freeCodeCamp.org)

6. **Learn how you can connect decentralised app ether.js or web3.js**
The ethers.js library aims to be a complete and compact library for interacting with the Ethereum Blockchain and its ecosystem. It keeps your private keys in your client, safe and sound. While web3.js is a collection of libraries that allow you to interact with a local or remote ethereum node using HTTP, IPC or WebSocket.

To do so you can choose between the two JavaScript Libraries.

[Introduction to web3.js](https://youtube.com/watch?v=t3wM5903ty0)

[Introduction to ether.js](https://www.reddit.com/r/ethdev/comments/k6s48s/introduction_to_ethers_js_alternative_to_web3/)

Also, one more last thing that you never want to forgot is that 

> **Practice, Practice, and Practice**

If you find this article helpful make sure to like this and send this with you friends whom this article would be helpful! And if you want to read even more content, feel free to visit me on [twitter](https://twitter.com/Darshanshub)

Thank You!
-Darshan