Climbing higher

Progress Report:

Challenge 2: 🏵 Token Vendor

  • The challenged made me dive deeper into transfer of tokens across contracts.

  • The most new and interesting part was understanding approval flows, as to how tokens can be used to redeem a commodity like an NFT or even Eth.

  • How to check the total eth balance of a contract: address(this).balance

  • Learnt about and used transfer and transferFrom functions and understood the different between the two.

  • Understood the concept of ownership and its transfer to another contract, so as to enable further inter-contract transfers.

Challenge 3: 🎲 Dice Game

  • Learnt about block-hashes and why blocks by default don’t support randomness.

  • Read up on and used the keccak256 hash function to create a randomisation mechanism.

  • Understood the concept of sending ether along with function calls if that function is payable, for example sending 0.002 eth while calling rollDice .

Link to assignments:

Challenge 2: 🏵 Token Vendor

https://jittery-eggs.surge.sh/

https://goerli.etherscan.io/address/0x135cb207b6453c94da602e8a777d1b634f61b3b4

Challenge 3: 🎲 Dice Game

https://devilish-sofa.surge.sh/

https://goerli.etherscan.io/address/0x99019Dac70C60Ac8c8f2F37Fd70D6A6538737DD8

Questions & Feedback:

My experience with this week involved less spent time on coding and way more hours on trying to understand the underlying concepts. I did end up doing multiple rejected submission this week, and had to handle a lot more edge cases to get my submissions passed.

Overall, this week did bring about a steeper learning curve as compared to week 1, which was something which I was certainly looking forward to.

I’m even more hyped about week 3 now, WAGMI.

post image