To develop decentralized applications on Ethereum or other blockchains, you will need some fundamental skills. You may already have some of these skills. If so, that's great! If you are here though, at least some of this is likely new to you. Here are the essentials of what you need to know.
- How the Blockchain Works
You will need to have a basic understanding of how the blockchain works. What is a private and public key? What is a block and how is it validated? What even is a blockchain. There are some great materials out there for you and we have gathered some of the best below. If books are your thing, you'll prabably want to start with "Mastering Bitcoin." This will give you some interesting history and teach you everything you need to know about Bitcoin.
You can then follow this up with "Mastering Ethereum". As a Dapp developer specifically, you will need to know about smart contracts and the EVM. This will not only teach you about Ethereum but also many of the concepts you will need for developing on other chains.
- Solidity
The "backend" of your decentralized applications will be smart contracts that are deployed onto a blockchain. While there are a few other languages that are being experimented with or are in limited use, Solidity is the go-to language for developing on Ethereum and EVM compatible blockchains. In the training section of this dev-path, there are some excellent tutorials to get you started. Cryptozombies in particular is one of the best introductions to Solidity basics out there.
You don't have to be an expert in Solidity to begin writing smart contracts. In fact, without putting practice in, you'll never become an expert! So get some of the basics under your belt and start coding.
- Basic Web Dev Skills
While the blockchain can function as your backend, you will need to provide users of your app with a way to interact with your contracts. Python and Javascript are the two primary scripting languages used currently for Dapp development. Excellent libraries have been developed for both which allow interaction with the blockchain. You will also need to know some HTML and CSS to build the UI for your Dapp.
This is a little outside the context of this guide. Luckily there are many resources out there to help you learn. Our partner community, Dev.to, is full of amazing resources and a great community as well. If you have a little knowledge already, or want to learn as you go, many of the tutorials linked in our training section also provide some practice with frontend languages.
The above may not seem like much, but it is all you need to join the revolution in web development that is Web3. Once you've gotten some basic experience with the above and built a few simple decentralized applications of your own, you'll be ready to move on to our intermediate and advanced blockchain developer guides.
Title | Content | Link |
---|---|---|
Mastering Bitcoin | Mastering Bitcoin is a book for developers, although the first two chapters cover bitcoin at a level that is also approachable to non-programmers. Anyone with a basic understanding of technology can read the first two chapters to get a great understanding of bitcoin. | https://github.com/bitcoinbook/bitcoinbook |
Mastering Ethereum | Mastering Ethereum is a book for developers, offering a guide to the operation and use of the Ethereum, Ethereum Classic, RootStock (RSK), and other compatible EVM-based open blockchains. | https://github.com/ethereumbook/ethereumbook |
Click the image to view on YouTube.
Click the image to view on YouTube.
About Blockchain, web 3 and somewhat related to Dapp.
Title | Content |
---|---|
The New Creator Economy - DAOs, Community Ownership, and Cryptoeconomics | View |
The Complete Guide to Full Stack Ethereum Development | View |
What It Takes To Be A Blockchain Developer | View |
Create A Simple Dapp with MetaMask Integration | View |
Web3 — A vision for a decentralized web | View |
Title | Content | Length |
---|---|---|
But how does bitcoin actually work? | 26m 20s | |
The INSANE future of Web 3.0 Simply Explained | 13m 16s |