DEVELOPER PERSPECTIVE: How to Become a Solidity Blockchain Coding Ninja
Contribution from Jordan – a blockchain developer building on Celo, an EVM-enabled blockchain
This is an expedition, not a self-discovery, but a marathon learning experience in blockchain and emerging technologies. I’ve had my share of surprises, and if you were like me when I started programming, you’d need this advice.
“Never feel bad about failing.”
“Perseverance is the key to becoming a better coder.”
That’s what my grandmother tells me.
As we embark on this marathon to become a blockchain developer, as is the name given to someone who builds on a blockchain, when someone mentions blockchain what first comes to mind , these are cryptocurrencies.
All cryptocurrencies are built on what is known as distributed ledger technology (DLT) and blockchain is the most popular form of it.
Most blockchain-based cryptocurrencies / Ethereum platforms are created using a language known as Solidity – For anyone who wants to learn how to bake grandma’s pie, you need to know recipe.
This also applies to anyone who wants to learn how to create Smart Contracts (ERCs Tokens), dApps (Decentralized Applications) or get into the ICO game.
Learning Solidity is an absolute must!
You must have the basics of one or the other of the two languages above to master Solidity.
SEE ALSO: 65% of all Web 3 developers joined in 2021 – Over 20% joined Ethereum
Understand the differences between web2.0 and web3.0
The second generation of Internet services (Web2) focused on interaction while the third generation of Internet (Web3) is focused on decentralization and semantic learning mainly dominated by web applications and intelligent applications based on AI and ML.
The focus is primarily on community development with a particular focus on empowering individual users.
Building on Web2 vs Web3
Building on web3 is a bit different from the way we normally do database design.
As a back-end developer, you have to forget about the design of the back-end you are using. In web3, this is largely determined by the appearance of your smart contract and the additional tools that need to be added for the user to interact with it.
Building on web2 involves building for mass internet users with an experience they know (which is not the case in web3 i.e. Metaverse) to make it tangible by connecting with a username and password or sometimes an email address.
Building on web3 involves building for crypto-native users with a focus on decentralizing solutions to make it tangible while giving them more control over their data.
What you need to go from a Web2 developer to a Web3 developer
The most important thing to know when switching from a technology to Web3 is to know:
- Blockchain basics
- What you need to work
- What is the purpose of technology
- How it works and protocols used
Web3 has protocols just like we have web2 http protocols. Understanding this is important because it will help you understand what you are going to build.
Once you understand the purpose of the technology, you can get into smart contracts, because that’s how you’ll actually program the blockchain. Learn about the different types of smart contracts, from fungible tokens to non-fungible tokens (NFTs) to the backend of your decentralized application.
For back-end developers, the big change is the design of the back-end which normally connects to a database. You will need to understand how to write your smart contract code as they will be the magic part of your work and your dApps.
For front-end developers, you need to learn how to interface with the blockchain. Just like in web2, a decentralized application consists of two components:
- Front-end (any front-end framework of your choice)
- Back-end (smart contracts)
There are different libraries you can choose to interface with blockchains. For Ethereum and Celo APIs, this includes:
- Ethereum blockchain
- Web 3.js
- Blockchain Celo
- Celo ContractKit
- Envelope Celo Ethers
Note that there are many blockchains and almost all of them have their own way of writing or creating smart contracts.
However, Solidity is the language most used by Ethereum Virtual Machine (EVM) which integrates many blockchains.
Learning solidity will not only serve you on the Ethereum blockchain, but more so in the job market since the solidity developer community is the largest of all blockchains and where when you have bug issues fixed.
Ethereum and EVM-enabled blockchains have a large and growing number of tools to help developers build, test, and deploy their applications.
Some blockchains have a lot of configuration to do, which I think prevents most developers like me from developing on top of these blockchain solutions.
Here are the main development tools you need:
- IPFS – Interplanetary File System is a decentralized storage and file referencing system for Ethereum
- MetaMask – https://metamask.io/
- Remix – http://remix.ethereum.org/
- Ganache – http://truffleframework.com/ganache/
- Web3 – https://github.com/ethereum/web3.js/
- Truffle – https://github.com/trufflesuite/truffle/
- Rinkeby Faucet – https://faucet.rinkeby.io/
- MNP – https://nodejs.org
Here are some definitions and interesting information that will also be useful to you:
- Smart contracts – A computer protocol intended to digitally facilitate, verify or enforce the negotiation or execution of a contract. Smart contracts enable credible transactions without third parties. ERC token standards. ERCs (Ethereum Request for Comments) are technical documents used by smart contract developers at Ethereum. For example, the ERC20, ERC721, ERC223, ERC-777 (and ERC-820) standard
- dApps – A computer application that runs on a distributed computer system. dApps have been popularized by distributed ledger technologies (DLT) such as the Ethereum blockchain, where dApps are often referred to as smart contracts
- CAD – A Decentralized Autonomous Organization (DAO), sometimes called Decentralized Autonomous Company (DAC) or Decentralized Autonomous Non-Profit Organization (DANO) is an organization represented by coded rules in the form of a transparent computer program, controlled by shareholders and not influenced by a central government
- Crypto Games are video games with a fully or partially distributed ledger architecture that run on top of a cryptocurrency/network giving players provable ownership over the virtual. goods they contain. It also allows players to exchange value (Cryptokitties, Cryptoflowers are popular and based on the Ethereum platform).
As blockchain technology continues to evolve, so will its professional opportunities.
Blockchain is here with us to stay, which means blockchain expertise will be in high demand for years to come.
So whether you’re a techie or not, a career in blockchain is an exciting new opportunity worth exploring.
RECOMMENDED READING: [WATCH] Introducing DeFisset.com – A DeFi Asset Tracker by a Ghana-Based Blockchain Developer
Thank you for your support by helping us create content:
BTC address: 3CW75kjLYu7WpELdaqTv722vbobUswVtxT
ERC20 address: 0xBc11cFa590C6CC465248D77d399C3106B881cC0E
SOL address: 9cC65AWFHj848kntcoyiT8av3jiRQEqyTTmBR1GvVUb
follow us on Twitter for the latest posts and updates
Join and interact with our Telegram community
Subscribe to our YouTube channel below for more: