Blockchain developer roadmap!
Published in
5 min readJul 4, 2022
Here’s the video explaining a simple roadmap — https://youtu.be/CJhUed6msJA
Important facts
- Currently, everyone is copying pasting without actually understanding — we’re going to solve this. Watch the complete video if you want more detailing. If you want to learn everything in a weekend, that’s not possible. Learning never stops in web3 and there are too many things to learn
- Stop copying and pasting code, refer to examples and try to learn if you’re copying. Pasting code to fetch certificates or NFTs will get you nothing — understanding and bringing out your creativity will.
- Learn if you’re copying/importing
- There are many frontend templates that you can use for the beginning, don’t waste your time writing CSS if you’re not interested in that.
- This is a roadmap for developers, if you’re looking for beginner or theoretical Web3 knowledge, watch the all in one web3 video here:
- While you’re going through this or watching the video — read docs, make notes, ask questions, make friends
Prerequisites
- You need good knowledge about Bitcoin, ethereum, how the blockchain works, hashing, NFTs, before diving deep into this roadmap and getting started with development.
- We have a complete video on all the things you need –
Watch our all in one Web3 video before starting:
Git, Dependencies
- Npm and git are 2 things everyone should know before starting out on projects. Git makes it easier to manage projects and npm is a project manager which helps us download libraries. Yarn is another such example to manage libraries.
- Most common git commands are: Push, pull, remote, clone — we’ll talk about the rest as we build, but this is enough for now.
- Hardhat, which is a tool for smart contract development, has a bunch of commands which we can use to deploy and test contracts.
Smart contracts I
- Complete solidity video is out, where you’ll learn everything about smart contracts in a single video. Check it out here:
- Solidity is Similar to any other language — variables, arrays, enums, OOPS, and more. Some things are different like identifiers, code is public so easy to hack, and needs better auditing or commenting.
- Syncing with frontend is also a little different than web2 applications. We’ll use libraries like ethers or web3.js to do that.
- https://solidity-by-example.org/ has a bunch of examples of smart contracts. We will understand 5–10 examples in detail before moving forward.
Smart contracts II
- We’re going to do many podcasts with real smart contract engineers to learn about industry standards of smart contracts. Just like web2 apps, the basics of smart contracts won’t help you in complex applications — you need more than that.
- We’ll talk about more complex stuff like auditing, hacking, optimization. How can we use libraries and companies like https://quantstamp.com/ to improve our smart contracts?
- We’ll also talk about job aspects, interviewing, and what to expect when talking to companies in the blockchain dev space.
Nansen AI, Analytics, NFTs
- We’ll discuss some non-core development related topics like analytics.
- Blockchain is full of data and we can use tools like Nansen or Dune to query on that data. These are super powerful tools which will help us find super creative things through data.
- There are videos on etherscan, mempool which you can check out on the channel.
- We’ll discuss NFTs and what is going on behind the scenes. A complete video on NFT will be uploaded on the channel — so check that out.
Let’s understand a dApp
- The basic frontend is html, css, js and it can be used to build simple dApps. However, as the complexity goes up — you need react and better libraries to make things faster and better.
- We’ll give a simple review of React and what are the most important things in react — functions, hooks, routing, and AO,
- We’ll understand how to connect the blockchain and the basics of it all — libraries, nodes, and much more.
- Finally we’ll wrap up by understanding graphs, APIs, and more
Authentication — web2 vs web3
- Web2 has a Google sign whereas web3 apps have metamask — which is your wallet and the key to the blockchain world. We’ve explained wallets in our intro video so do check it out before moving forward.
- Simple metamask wallet in html through Moralis: https://github.com/MoralisWeb3/vanilla-boilerplate/blob/main/index.html
- We will use Moralis — the amazing library for all our blockchain needs. The main things we need are — server url, app id
- Will discuss everything about moralis before moving to a more complex example.
Build a DEX — Moralis + html, css, js
- We’ll build and understand a simple DEX through moralis, html, css, js — github: https://github.com/arvind3157/DEX
- For the frontend, we’ll have the wallet, some code to connect that and then finally a Moralis 1inch plugin thing which we can use to exchange the coins.
- For the blockchain part, we’ll write a smart contract, connect it with the frontend, and see how the overall thing works.
- We’ll look at a more complex example after this through react and more.
Build a DEX — Moralis + React
- Simple metamask — for authentication: https://github.com/MoralisWeb3/vanilla-boilerplate/blob/main/index.html
- We’ll see how react can make things much better for us. It’s much easier to read after you have something more complex.
- https://github.com/MoralisWeb3/react-moralis
- We can wrap our react app with Moralis — makes everything easier and production ready
- We’ll look at many examples and understand as we make our way to more complex examples.
Speed run ethereum — examples
- https://speedrunethereum.com/
- We’ll go through the codebase of some examples here and see how can we fast track our projects through some boilerplate code.
- There are other things like a notifier — https://docs.blocknative.com/notify, which we’ll understand as well.
- Most examples are hard to build and easy to copy. Once you understand everything, things will be much easier for you.