Getting Started On Blockchain Development
This is not a tutorial on blockchain development. Rather, this article will relay to you what resources you may need to start developing a smart contract. Through our learnings and trials at 2359, we have compiled a list of resources that will save you some time googling and get started on coding in the shortest time possible.
Quick Readings
Getting into blockchain development is different from other platform in a way that it is not technically challenging. However, it requires a lot of domain knowledge and understanding of its core philosophy. Therefore it is important that you read up on the following articles to understand what blockchain is about and the problem it is trying to solve.
How Bitcoin Works Infographic
An easy to understand infographic.What is Ethereum? A Step-by-Step Beginners Guide
Other than ethereum primers, there are also other useful guides about other blockchains.
Online Courses
Our favourite go to course is CryptoZombies. The course introduces you to Solidity, the programming language for creating smart contracts on Ethereum.
There is also a good course on Udemy which we highly recommend, Become a Blockchain Developer with Ethereum and Solidity.
Tools
Now that we are ready for some development action. You should get acquainted with the tools of the trade.
Truffle Framework
A development environment that helps with testing and deploying of smart contracts.Etherscan
A website that allows you to get information on a contract or a transaction.Remix
An online IDE that allows you to compile, run and debug your smart contract.Oracles Combine Solidity
Solidity allows you to reference other smart contracts through the import statement. However there will be times when you need to flatten your smart contract into one single file. For example when you want to verify your smart contract with Etherscan. Oracles Combine Solidity is the tool right for the job.Ganache-cli
Run ganache-cli to create your own local testing environment. It will also provide 10 accounts with 100 ether each to play with by default.
Best Practices and Security
Smart Contract Best Practices
This is a comprehensive document that details the best practices you should employ in developing your smart contractsSecurify
A tool that can help to point out security flaws in your smart contract.
References
Bitcoin: A Peer-to-Peer Electronic Cash System
This is the famous white paper by Satoshi Nakamoto that paved the way to the blockchain explosion.Solidity Documentation
In-depth documentation on Solidity language. It also has a section on security and best practices.