DEV Community

Nick Groos
Nick Groos

Posted on

Blockchain with Solidity: What to Learn First

Getting started in a blockchain development environment can feel completely foreign, especially if you are coming from web development.

Here is an overview of some key items I had to learn about in my first few days with Solidity:

Web3

Web3 is a term you will see often. In broad terms, it refers to certain interfaces and tools that make it easy to integrate with crypto wallets (like Metamask) and other blockchain-related functionality. There are a growing number of libraries that expose Web3 functionality in different dev environments.

Metamask

Metamask is currently the standard browser-based wallet to use while learning blockchain development. It has built-in integration with IDE and Testnet environments (more on this below) which makes it easy to acquire and use test Ether.

Gas

  • You have to pay gas (ether) to "change" the blockchain. This includes making a payment transaction, updating the state of a smart contract, or deploying a smart contract.
  • Consider your gas payment to be the transaction fee paid to the miners running the network
  • Your Solidity code should be optimized to reduce gas cost.

Remix and Hardhat

  • Remix is an online IDE for compiling and deploying contracts written in Solidity. It is the quickest way to start working with smart contracts.
  • Hardhat is a framework for doing blockchain development in a local environment. It can also deploy to live and testnet environments.

Testnets and Testnet Faucets

  • Testnets are test blockchain environments. Use them to deploy and test smart contracts without having to spend real crypto on gas.
  • Testnet Faucets will send cryptocurrency to your Metamask wallet which can be used on the Testnet environments.

ERC-20

This is a spec for implementing fungible tokens. Read about it here

ERC-721

This is a spec for implementing non-fungible tokens. Read about it here


I hope this list can save some time for anyone else out there learning Solidity. Let me know in the comments if there is something you think I should add.

Top comments (2)

Collapse
 
pedroomedicina profile image
Pedro Medina

Hi Nick, thank you very much for sharing this,

Can you tell us more about your steps from there?

Collapse
 
groos profile image
Nick Groos

Hi Pedro - From here I recommend getting hands on with the web3.js library, which will expose a lot of baseline features that are necessary in decentralized apps. After that I would say start creating some POC smart contracts using Solidity on Remix.