Practical Tutorial Showing How to Create a Smart Contract and Build it into a dApp
This is a practical course that goes over a fully functional decentralized application (dApp) and how it works.
It goes through a step by step explanation of how the smart contract works, and then shows how the smart contract can become a fully functional dApp. All videos are screencasts similar to the “Overview” video that is available for preview.
This course was created to fill in a gap of learning how to be a blockchain developer. As I was teaching myself, I found that most tutorials and courses online go into generic detail about blockchains, “hello world” contracts or simple smart contracts copied from Ethereum’s website.
I wanted to see explanations of how to write smart contract code for fully functional dApps, what the thought process behind them was, and how to actually turn a smart contract into a dApp.
The problem is that most people building dApps right now are too busy to make courses or videos, because the field is moving so fast.
So this course was created to fill in that gap.
The course is more practical in the sense that it goes through how I actually built this dApp from scratch and I talk about what I learned, what was hard, pitfalls I encountered, things that worked really well, and security features I implemented to make the contract more secure.
A good way to describe what the course would be similar to is you arrive at a new job, and you have to learn how to develop on Solidity, so a Senior Developer takes the code they are currently working on and explains it to you step by step.
Note that this course doesn’t go over things like:
- How to use truffle
- Deploying to testnet
- Using testrpc or metamask
- ERC-20 Tokens
- Deploying with heroku or showing how to use React
I found that these basics have really been covered very well already by videos and documentation on the internet. This course is strictly focused on taking smart contract code and turning it into a dApp. It is designed for someone with a basic knowledge of Solidity (you have read some of the documentation and understand the basic design of the language) and a basic knowledge of web development and blockchains.