Since the blockchain has shown its potential in DeFi sector there is a huge demand for blockchain developers right now and everyone wanting to switch to this technology. As I am a developer myself and working on Blockchain development for 3 years I want to share the best possible ways to start with Ethereum development.
The first thing to consider for any beginner is "Blockchain development" and "DApp development" are two different things.
The first one refers to building an actual Blockchain itself which involves setting up some hardware i.e. Nodes, developing a consensus algorithms that will govern the system and much more, while the second thing is just to develop applications using that particuar blockchain. Let me explain you this in a simpler way, Its just like this - development of Android OS and building Apps on it are two different things.
I am discussing here how to start with DApp development on Ethereum Blockchain means you will be able to build any applications using Ethereum blockchain and not the blockchain itself.
We will first discuss the flow chart of how the process goes and then the languages, frameworks, tools required to start.
We will start with Smart Contracts. The backbone of Ethereum DApp is Smart Contract. The Smart Contract is just a set of instructions written in code and stored on Ethereum blockchain which decides the entire DApp working. At this point of time Smart Contracts are written in solidity programming language. Once you have developed a Smart Contract then you will have to deploy it on Ethereum blockchain. Until now there is no need to use any framework or full stack developement tool. You can simply develop a smart contract and play with it using Remix IDE. We will discuss more about how to start with solidity and Remix in later parts of this guide.
Once you have developed the smart contract you can use any tool to deploy it on Ethereum blockchain like truffle, hardhat or Remix IDE itself, you can bypass learning truffle for beginning. Once you are comfortable with DApp development flow you can then start learning truffle and master it.
Now the tricky part comes, here you have developed a smart contract and deployed it on Ethereum blockchain but what now ? How user can interact with this smart contract, this is where full stack web development comes into picture.
You will have to connect to this smart contract and read,write data on Ethereum blockchain with a complete user interface and here you need a web3 provider. A web3 provider connects your web app with Ethereum blockchain. there are may web3 providers like Infura, Alchemy, etc but the most used is Metamask since its a also a wallet.
Until now you must have understood that deploying and developing a smart contract has nothing to do with web development.
The following Images will clear your further confusion :
We will discuss how to connect with the deployed smart contract on Ethereum blockchain and build a user interface for our DApp.
You can take a full course on building a ethereum DApp on DApp World