You can build for web3 by learning these things!

Alysia Tech
4 min readMay 27, 2022

--

To be honest with you, I did not care about the Blockchain space until 2018 when I learnt that you can create apps that can execute on a Blockchain.

So to help you out, by the end of this post, you will learn about four technologies that you should learn so that you can build apps that run on Blockchains like Celo. Read till the end because I’ll also share a resource that even pays you to learn. Clap for this post, if you like learning how to up-skill as a developer :)

1. Developer Environment — Remix

Remix IDE is the development environment that allows you to write blockchain code, compile and also deploy it to an Ethereum-like Blockchain like Celo. I recommend Remix especially to beginners because it’s a web tool with a friendly, graphical user interface. You can write & deploy code to many blockchains including Ethereum, Polygon and Celo using Remix.

[{Green Screen Background}: To deploy code to a blockchain means that the code is now contained in something called a smart contract. Smart contracts are programs that are stored on the blockchain. The methods on the contract can be invoked either when conditions are met or by another contract or application calling functions on that contract.]

With Remix, there are also tutorials that you can use to get you started but wait till the end to learn about how you can also get paid to learn.

2. Blockchain Programming Language — Solidity

In order to create smart contracts, you have to write code that the virtual machine of the blockchain understands. The virtual machine is a shared state that all nodes on a blockchain share. The smart contract has opcodes that change the state of the blockchain. E.g. Let’s say there’s a smart contract with one operation, ADD, and all nodes that run the blockchain software will execute that operation so that they all have the same state. Solidity is a programming language which can be used to write programs that run on blockchains with use the Ethereum Virtual Machine (EVM) for its state management. Examples of blockchains that use the EVM are Celo, Polygon and well of course, Ethereum.

Writing Solidity code is not difficult per se but if you’re writing applications to be used by many, it’s a good idea to learn about the best practices for gas optimization and security. If you don’t know what gas is, check out this video from Finematics here.

3. Server Side Programming Language — Javascript & Web3.js

Now that you know what’s required to code and deploy your smart contract. Normally when you interact with an application such as a website or mobile app, there is a front-end and a back-end. The back-end is responsible for activities such as retrieving data from another source and performing actions. Developers use languages like Javascript and other libraries to write what we called back-end or server-side code. For blockchain apps, developers can use javascript and a library called Web3.js to write code that can interact with EVM Blockchains and perform actions such as reading data and running methods on a smart contract. For e.g. Let’s say you ran a flight insurance company and you’d like to send money automatically to policyholders when their flight is delayed, the Javascript code would check for delays and then call the method on the smart contract which can transfer cryptocurrency from the smart contract to the policyholder. The server-side code can run on a machine that never turns off or is deployed in the cloud services such as AWS, Heroku and Google App Engine.

4. Front End Programming Language — Javascript & ReactJS

This is the final piece where you get to be creative but essentially you just want to build a front-end so everyday users can interact with your application. You can continue to use Javascript with frameworks like ReactJS or Flutter to build mobile and browser apps that interact with your backend. Technically, you can wrap up the previous step in this step if the server-side code isn’t complex and just requires calling methods.

To put the above into practice I recommend building a small application that includes a smart contract, server-side code and a front end. If you want even more incentive, there is a wonderful tutorial on Dacade which you can follow with takes you through smart contract development and building the front end. You learn and can also earn 100 cUSD (celo’s US Dollar stablecoin) for completing the course and submitting the activity.

If this video helped demystify the blockchain development process then let me know you enjoyed it by liking and leaving a comment letting me know what you’d like to see next.

I’ll definitely also show you programming videos outlining the steps of this so subscribe to follow along!

--

--