Here’s my beginner journey to learn ETH Dev to create DApp!
Contracts are created with Solidity!
The top most line of a Solidity Source File!
Heard about this? It’s basically what was used on C. It almost provided the same functionality here.
Just wanted to give it a start. So started with pragma, just like how a Solidity file starts.
Join me in the learning journey!
Let’s dive in!
If you know these, you can probably start with Ethereum Smart Contracts and create a DApp!
- HTML to create Web pages
- Web Technology basic understanding
- NodeJs to use JS in terminal
- OOPS concept using C++
Essential terminologies you Need to know for Blockchain dev!
Alright, let’s setup the base! Here’s what you need to get foundational in general.
I was always curious about learning new terminologies. There are a lot of us, who wish to learn new tech terms.
Before jumping into the Web3 dev, ensure you have this understanding!
I have explained simple terms with the least technicalities to grasp the insight even with no technical ideas.
- A chain of objects called blocks
- They are linked to one another with a trace of the previous block
- They store some pieces of info
- One major thing to note is: If you make a change to one record, you will need to update all other existing blocks.
- ETH is the short form for Ether
- Ether is a token on the Ethereum blockchain
- You can use this token to transact in any Apps running on Ethereum blockchain
- EVM is the Ethereum Virtual Machine
- It is just like your JVM for Java.
- Just like JVM is responsible for java running bytecode, EVM is responsible for executing contract bytecode.
- You can trigger an EVM container & deploy your DApps
- When you request the EVM to run a piece of code (contract) for you and get a result back, it is called a transaction.
- To make any request, you need to pay ETH in the form of Gas to fulfil your request.
- This is secure because you cannot make changes to a transaction, once it is made.
- Smart Contracts
- They are a runnable piece of code, published on the EVM
- Anyone can request to run that piece of code by paying a fee
- A well-organised group of contracts can make a Decentralised App (DApp)
- The backend code for your applications that you want to host on a decentralised network
- DApp means Decentralised App
- It can have a front end code developed as a usual app and hosted on the blockchain
- This is the Fee you pay for any transactional request
- Any Gas in Ethereum blockchain will be paid using ETH
- A Gas fee is denoted in Gwei
- 0.000000001 Ether = 1 Gwei
- A node is any server that holds the complete blockchain’s data.
- Anyone can run a Node of Ethereum blockchain. You will be paid in ETH
- A client program will run on your node that verifies all transactions in each block.
Code your contract and DApp here
Here? Where? You can find 2 IDEs that I am using to learn the coding of DApp and contracts.
It’s funny when you know what to code, but not where to code!
Here are some of the platforms where you can start coding the Smart contracts and get an overview of how the DApps are deployed and accessed from a Web browser.
There can be other IDEs. But, these are the ones that I have started using.
It’s is quite surprising to me that Visual Studio Code is the professional cross-platform IDE with official Ethereum support.
Have you started coding yet? The power of Web3.0 is quite huge! Equally, the opportunities in it are tremendous!
Do start getting your hands dirty with the tech now!
- Remix – Create Smart Contracts
Before you setup your own local development setup, you can start practicing your basics here.
It’s a web-cased IDE with its test blockchain EVM. This is what I used to start my practicing.
- Superblocks – Create a Full Stack DApp
This is where you set up your FullStack DApp, from the front-end to the back-end.
It is also a web-based IDE with its test blockchain EVM. At this moment, you cannot connect your Wallet here for a real transaction. This is what I used to create my First DApp.
Let’s get more flavoured now
After learning the basics of creating and deploying a Smart Contract using Solidity and Remix, now started with Truffle with Ganache.
Truffle & Ganache
Truffle is a framework, that acts as the development environment for blockchains using the EVM. It comes with a basic set of commands:
To work with Truffle, you should also know Ganache.
Ganache is basically like a sandbox for you to run your own EVM in your local machine. This makes it easy for you to connect and work in your own ETH Network.
It provides with both UI as well as CLI interfaces to view and interact with contracts.
So, you are all set right now to start your development on ETH.
Now, check this article further to start connecting your new or existing Application with Truffle and Ganache
See you there!