Blockchain changed how we look at finance and interact with it. With increase in adoption of blockchain and crypto in other domains we see increased demand for blockchain and smart contract developers in ecosystem.
Many IT professionals are upskilling them for this new technology but there are lot of scattered resources in this space. So starting journey in web3 is quite difficult for someone who does not know where to start. I will list out resources from where I learned and got interested in web3 world.
First of all you need to understand there are two types of developers Blockchain Developers and Smart-Contract developers.
- Blockchain Developers: Those who specifically work on developing a new blockchain or improving existing one. Ethereum developers who works on improving blockchain or implementing new features like Proof of Stake(PoS) are Blockchain Developers.
- Smart Contract Developers: Those who write smart contracts or programs which can be executed on existing blockchain are called as Smart Contract Developers. DApp (Decentralized App) developers on Ethereum or any other blockchain are Smart Contract developers.
So based on your interest you can be a part of web3 ecosystem. There are plenty of quality resources available let's list them out:
Basics of Blockchain & Web3
To start with any type of development you need to first clear out basics of the ecosystem. Most of the blockchains are based on same building blocks so you can start with Ethereum being the first programmable blockchain.
- Ethereum Docs - Official Ethereum documentation is helpful to understand basics of EVM, ETH, Blocks, Transactions, Storage, Gas and how Ethereum blockchain works.
- Mastering Ethereum - Open source book written by Ethereum co-founder and Solidity creator Dr. Gavin Wood. Best book for understanding Ethereum blockchain, Solidity programming language. You can also order hardcopy here.
- Whiteboard Crypto, Finematics - Youtube Channels to understand different blockchain concepts like Proof of Work, Proof of Stake, Web3, DeFi.
Starting with Coding
Solidity is native Ethereum language used to build decentralized applications. You can learn Solidity from following sources.
- Solidity Docs - Official Solidity documentation to get understanding of basic building blocks of the language.
- Solidity Course by Patrick Collins - Solidity development with Python, Brownie framework.
- Cryptozombies - Solidity tutorial, learn by building.
- Buildspace - Learn by doing, join the discord and participate in hackathons and build something cool.
- Ethernaut - Creation of Openzeppelin, step-by-step path towards web3.
- Solidity by Example - Solidity concepts elaborated with example.
Web3 community is supportive and makes onboarding new developers easy. Let's see some git repos by community:
- Developers Tools List - Consolidated list of developer tools, components, patterns, and platforms for developing applications on Ethereum.
- Solidity Notes - Solidity concepts rephrased in easy language.
Blogs are best way to learn advanced concepts in the technology. You can subscribe/follow below:
- samczsun - Detailed case studies on real life ethereum security scenarios.
- Preethi Kasireddy - Basics to advanced of blockchain and web3 development.
- Vitalik Buterin - Advanced and futuristic blockchain development concepts.
Web3 community is active on twitter if you do not have twitter account creating it is a first step :) You can follow below accounts to get more on web3.