Sure by now you would have seen many Youtube videos saying blockchain/Web3 is the “future” and had a overwhelming feeling of how to start with this so called blockchain technology!
Well in this article lets see what all you need to learn to become a blockchain developer and which all tech stack to learn in order to become a blockchain developer.
lesss gooooo
Blockchain
First thing you need to learn in blockchain is well blockchain (cool right)!
well by blockchain I mean on which chain are you going to develop your applications on.
there are plenty to start with, The infamous Bitcoin, developers favourite Ethereum, super fast Solana. Most of the big projects on crypto are built on Ethereum cause its developer friendly and provides wide range of features to ship your application. Well talking about ethereum features itself would require a separate series!
Development Environment
So after lot of dilemma you finally chose your favorite chain to begin with now you need a development environment on which you can write, test, deploy your smart contracts (A “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. In short its a piece of code that says blockchain what to do).blockchain only listens to a smart contract and works based on code defined in it (CODE IS LAW).
You need to learn solidity (a smart contract language)
every smart contract is written in solidity.
And as for the development environments there is two most popular ones
Hardhat and Truffle
Theses are used to compile test and deploy your smart contract either to test nets or to the mainnets. Both comes with rich feature for easy development of smart contracts. Which one to start with? Well go to google search of pros and cons for both then toss a coin and choose. So simple
Next up
File storage
As you know the sole meaning of blockchain is DECENTRALIZATION and so where do you store you data, certainly not on chain as its too costly and not a viable option, so we use a decentralized storage providers like IPFS (InterPlanetary File System) it is a peer-peer hypermedia protocol for storing and sharing data (More info here)
An Alternative to IPFS is Filecoin a decentralized protocol which enables anyone to rent out spare storage space on their computer. Likewise, anyone can buy storage on the network.
Indexing and Querying
Well, we need some sort of a tool to help sort through blockchain data. Going through the Ethereum ledger block by block, for example, would be painstakingly slow and a very time-consuming way of finding relevant information. So, undeniably, a better approach is needed.
This is why we use something called The Graph (Not the graph that you look on the trading platforms and cry cause its red), its a protocol used for indexing the blockchain data. Sometimes its also refered as “Google of blockchain”.
5.Oracles
Now lets say you need to create a application like Binance/Coinbase but Decentralized (Binance is centralized). How you will get the latest prices of every crypto asset? well using same way binance gets its data?
not really because your application is decentralized now you cant connect to outer world! (two crying emojis). Blockchain has a limitation that they cannot inherently interact with data and systems existing outside their native blockchain environment, so anything outside our environment is not accessible. This is why blockchain require additional piece of infrastructure known as an “oracle” to bridge the two environments.
And most used oracle provider is ChainLink.
6.Identity
Most important thing to connect to a blockchain is that you need to have a wallet which is used to store manage and trade your cryptocurrencies and need to have an account on the chain you are trying to access. Wallet is like your identity in web3 space as you obviously cant use google login here.
Each wallet has an account associated with it and when you access a blockchain application its your accounts that's talking to blockchain in your behalf.
Some of the wallet providers:
MetaMask, wallet connect, crypto.com, phantom and solana wallet adapter (for solana chain).
7.Client
Ok you created your smart contract and deployed to mainnet, now what?
how to you access the operations on your client side (frontend application)
Web3js and Ethers are JavaScript libraries that enable frontend apps to interact with the Ethereum blockchain, including smart contracts. You can use either one of these.
I guess that's it. This article aimed to just give you overview of all the tech used for blockchain application, hope it served its purpose!!!
Thanks for reading…
