One of my goals this year was to step out of my comfort zone and join hackathons. I can attest that this is a good way to measure skills not only in programming, but also in coming up with ideas and most importantly, executing them.
At the time, my only exposure to Web3 was through my partner, who worked for a startup and helped build their main project. I didn’t fully understand blockchain then (and I still have a lot to learn now), but he explained the concepts well. We had a great project idea that met the requirements of the competition, but a minute to pitch and constantly changing requirements led to us not delivering as well as we'd hoped... Despite that, the experience sparked my interest in Web3, especially smart contracts.
One thing about me is that I need to build something to understand it. I knew I had to code to really grasp what blockchain is and how smart contracts work. So, If you’re like me and don’t retain much from tutorials alone, a good place to start is CryptoZombies.
Finishing the first two chapters helped establish my foundation. You use Solidity to understand concepts such as ownership, optimization, security, etc. I now only go back and forth between chapters I find useful, and I’ve since moved on to SpeedRun Ethereum challenges. This works well if you already know the basics of Solidity and have built projects with Next.js. I found them through the Ethereum website, which is also a useful resource for learning about blockchain and crypto.