This course is a complete introduction to decentralized application (Dapp) development on the Ethereum blockchain using the Solidity language and the Truffle build framework.
No need to know anything about the blockchain, you should just have some basic software development experience. Whether you have already written some code for backend, web or mobile applications, it should be enough to become a blockchain developer thanks to this course.
The blockchain is all the rage these days, and there is a lot of theoretical or anticipative talk around it, but this course will help you get your hands dirty with actual code in order to build your first decentralized application. This is the kind of skill that can get you an actual job as a blockchain developer, something that is in skyrocketing demand right now.
Have you ever looked back on the nineties, thinking you would have loved to be a part of the web revolution. Well, stop dreaming: the blockchain is here and it promises to be even bigger than the web or even the mobile revolution.
What we will cover
- We will briefly cover the philosophy of the blockchain, both as a crypto-currency system and as a development platform
- Then we will explain how blockchains work, what are their main components and how its ecosystem is structured
- After that we quickly go over the main cryptographic tools you need to understand
- We continue with a description of the perfect development environment
- And the biggest part of the course is dedicated to guiding you through the iterative creation, development, testing and deployment of the ChainList decentralized application
The tools we use
- Ethereum of course
- The Mist browser
- The Metamask Chrome extension
- The Solidity smart contract language
- The Truffle build and test framework
- Github Pages
- Atom (text editor)
- The Rinkeby test network
All of the videos were shot on a Mac, but we give detailed instructions on how to set up your environment on Linux and Windows, and all the other lessons should work exactly the same, with a few OS-specific adaptations.