My Week 2 @ Polygon Fellowship
Hey folks, thanks for tuning in! I weekly post about my experience at Polygon Fellowship and this week was all about smart contracts. I have a lot to unpack, so let' begin.
Week 2: Study material ๐
I will start will this week's study material, since it will cover a lot about fundamentals of Smart Contract Development, and will be required if you want to level up with me ๐.
Smart Contracts
The first thing covered in the study material was Smart Contracts. I have used this term alot in this post, without ever defining it. So, as ethereum.org defines it,
A "smart contract" is simply a program that runs on the Ethereum blockchain. It's a collection of code (its functions) and data (its state) that resides at a specific address on the Ethereum blockchain.
You can learn more about them here.
Solidity
Solidity is an object-oriented, high-level language for implementing smart contracts. directed us to the first three Crypto Zombies courses, and I heartily suggest this one as well. It will cover everything required to build your first DApp. I have also created notes while learning Solidity that are available on Gumroad for free!
Other things covered in this week material -
Real world Applications
There are a lot of real world applications of Web3 and smart contracts including finance, gaming, property ownership etc. I found this amazing article which covers a lot of these applications in detail.
Traits of Smart Contract
I also learned the basic traits of smart contract through this weeks study material. These traits include Transparency, Simplicity and Immutability. Once again if you want to learn more about them I am attaching a further read here.
EOAs vs Contract Accounts
One of the most important things I learned from this week's study material was the difference between EOAs and Contract Accounts. So, an EOA is an Eternally Owned Account which is managed by a human user while Contract Accounts are managed by their underlying smart contract code. So does EVM treats them differently? Nope. These two types of accounts can do basically the same things and are treated as same by EVM.
Session with qedk
On Tuesday we had a smart contract code along with qedk who is an engineer at Polygon. This session was jammed with information. It was assumed that we knew how to setup our dev environment since it was covered in the week 1 and we coded a Soulbound Token. Honestly, I had no idea what a Soulbound token is, but I found a really awesome article about it, which you can read here. I also found an article about coding it, which can be accessed here
Week 2's Assignments
Coding a deadman's switch
The first assignment was to code a deadman switch. Basically if a user looses his account access, funds are lost. A deadman switch sends all the tokens to a specified address if the address is not active. More on deadman switch here.
Bridging ERC-20 Token
Bridging your existing Ethereum smart contract to the Polygon PoS commit chain allows network users to move their assets based on your contract between an Ethereum network and a Polygon PoS commit chain. A full tutorial can be found here.