Today I am going to give you 10 project ideas for learning solidity.
The best way to learn Solidity
If you want to become a Blockchain developer, you have to learn Solidity, the programming language for Smart contracts. And the best way to learn Solidity is to build projects.
To build these projects, you can use Remix, an online IDE for Solidity. There is no need to install anything, you just go to the website of Remix, and that’s it.
Which projects to chose? Build lots of small projects, of increasing difficulty. Here are a few ideas.
Project idea 1: SimpleStorage
Description:
- integer variable
- function to modify this variable
- function to read this variable
You will learn:
- basic contract syntax
- declare variable
- declare functions
Project idea 2: Message
Description:
- a mapping of addresses to string
- a function to register a string message:
- each message is associated to an address
You will learn how to store multiple records in a mapping.
Project idea 3: Wallet
Description:
- a function to deposit ether
- a function to allow the owner to withdraw money
You will learn:
- how to send money to a smart contract
- how to send money from a contract to another address
- how to implement access control
Project idea 4: Multisig
Description:
- Wallet controlled by several people
- A function to deposit ether
- A function to do transfers, but only if all parties agree
You will learn how to verify signatures, a very important part of Smart contract development.
Project idea 5: Payment splitter
Description:
- A contract to pay multiple people
- A typical use case is if you run a business and you want to pay your employees
- You will provide a list of addresses, and list of payment amounts, and the contract will do the rest
You will learn about arrays.
Project idea 7: Lottery
Description:
- Anybody can participate in the lottery. You just have to send some money, and your address will be registered by the smart contract
- The admin of the contract can call a special function to determine the winner of the lottery
- Then the winner can call another function to withdraw their winnings
You will learn how to generate on-chain randomness.
Project idea 7: Rock paper scissors
Description:
- The famous game, on-chain
- You have 2 participants
- They play rock paper scissor on the Blockchain
You will learn the commit-reveal scheme, which is very important pattern for smart contracts.
Project idea 8: ICO
Description:
- An ICO is a mechanism to raise money for a token
- It’s like crowdfunding but for a token
- A function to allow investors to buy tokens, during the token sale period
- A function to allow investors to withdraw the tokens they bought, once the token sale period is over
Project idea 9: Prediction market
Description:
- You might have heard of Polymarket, the crypto app that predicted the US election.
- A prediction market Betting platform for real-life event
- To keep it simple, you can only cover binary events, meaning events where you only have 2 potential outcome. Example, who will will the US election, Donald Trump or Kamala Harris?
- Once an event has happened, the outcome is reported to the smart contract by the admin
- Then the winners can withdraw their money
Project idea 10: Orderbook
Description:
- An orderbook is an exchange where people can buy and sell some tokens
- Traders will be able to place limit orders, that will be recorded on chain
- Then, other traders wll be able to place market orders, that will be matched against these limit orders
- This is exactly like centralized exchange operate, except that we do it onchain
This is more challenging that the other project ideas I mentioned, but hopefully by the that time, if you completed the previous projects you will be confident enough to tackle this project
Conclusion
I am building an entire platform based on this concept, the 30 day academy. The 30 day academy is a blockchain academy where you learn blockchain by doing coding challenges. Each course has 30 challenges of increasing difficulty. One challenge per day over 30 days.
This is a platform for people who learn by doing, and not by just consuming passively some learning material.
I am launching the platform on Black Friday, November 29th. For the launch day, the first course is on Solidity, and after that, many other courses will follow.
To register for the Black Friday offer, register with this link.
Alright, that’s it for this video, bye!
Leave a Reply