A friend of mine told me he was interested to learn how to make decentralized applications. After having been through part of this journey myself, I can recommend some resources that I personally used. Hopefully it will help answer the question: Where do I start?
So here we go, here's a list of free resources that I found the most helpful for learning how to build decentralized applications on Ethereum:
1 - Mastering Ethereum
This is a book written by crypto OG Andreas Antonopoulos and Gavin Wood, co-creator of Ethereum. It's meant to serve both "as a reference manual and as a cover-to-cover exploration of Ethereum".
It's ideal for developers wanting to learn how Ethereum works from a technical perspective. It starts with the fundamentals (addresses, transaction, gas etc...) up to the inner workings (EVM) and teaches how to build a complete decentralized application with examples.
Originally published at the end of 2018, it is getting outdated though (the Ethereum space has been evolving quite a lot since!). The good news is that a 2nd edition is in the works.
2 - CryptoZombies
This an interactive tutorial that has become a reference recommended by many. It is well-polished and provides a fun introduction to Solidity (and more!).
Plus, you'll get to develop a simplified version of the famous CryptoKitties game. 🐱✨
3 - ETH.Build
Austin Griffith has put out fantastic videos that help understanding how a blockchain works, starting from the ground up. You can learn by watching him, literally manipulating the building blocks of Ethereum thanks to a really awesome sandbox he has developed. Try it out yourself at https://sandbox.eth.build/
4 - EatTheBlocks
EatTheBlocks is a Youtube channel covering a broad range of topics related to Ethereum and DeFi. Although its videos have veered more and more towards news coverage with time, broadening its target audience to not only include developers, the channel still contains very helpful tutorials. Its host, Julian, offers some courses as well.
5 - Tutorials for smart contract development frameworks
As part of the web 3 stack, you should master a framework for developing on Ethereum that will help with compiling your smart contracts, running tests, deploying them, etc...
6 - Scaffold-Eth
Scaffold-eth, also made by Austin Griffith, comes with a lot of handy things out of the box, just as its name suggests. Beyond just smart contracts, it uses React and Hardhat so it's a good playground to practice your skills across the whole web 3 stack thanks to tutorials such as this one.
Then, at some point, it's wise to avoid "the Tutorial trap" and starts developing on your own, without following a tutorial. Scaffold-eth can help there too, as a launchpad to quickly take your idea and build a prototype from it.
7 - ChainShot
Chainshot provides a great interactive tutorial to learn how to build on top of Aave. Though I really liked it and felt like a game, it's the only one that I've completed from them, so I cannot vouch for the rest.
8 - Solidity Docs
Adding to the list, the Solidity docs are obviously the reference when it comes to getting a good grasp on Solidity and its subtleties.
However, they are rightfully exhaustive so they might be a bit intimidating as a place to start.
If you want to get notified of a new post, subscribe here.