You’ve used the DappStarter website or the DappStarter CLI and our system created a GitHub repo with the source code for your first Dapp - Congratulations! Now it’s time to get to work, but before we do, we need to ensure you’ve got all the tools you need to properly work with your first decentralized app.
Note: From the Ethereum Perspective
With DappStarter you have a lot of options to select from and we’ll keep adding more! The selections you make can affect the subsequent choices you have. That is to say, once you pick a blockchain, you’ll only see the available languages for that blockchain. This blog is written from the perspective of a developer having chosen the Ethereum blockchain.
In order to develop and build your Dapp, the following software prerequisites must be installed:
If you haven’t, follow the instructions at the above links to get the software you need installed.
Solidity, Truffle, & Ganache
Web 2.0 to Web 3.0 - Mentally Connecting the Dots
Let’s draw some rough parallels from a web 2.0 developer’s perspective…
If you’ve ever used Apache, nginx, IIS, or GWS you can think of Ethereum, EOS, Harmony, Neo, Stellar, and Hyperledger in the same context. They are similar to web servers that host specific platforms. Keep in mind that everything in web 3.0 is decentralized.
If you’ve ever developed on Express, Django, Rails, Spring, or .NET then you can consider Truffle, Fabric, Quorum, Burrow, Sawtooth, Enterprise Ethereum as similar technologies, they are frameworks.
The End Result
And at the end of the day, web 2.0 developers build web applications. You can view a web application as being similar to a Smart Contract, which is what web 3.0 developers build.
Ultimately, web applications target specific web platforms. Developers code applications in languages that are supported by their chosen web platform. Said differently, a compiler or interpreter exists to transform code so it can run on the respective web platform. Developers use web frameworks to not have to do a lot of grunt-work.
Let’s bring it all home with an example from the .NET world. Web 2.0 developers build web applications programming in C# for IIS using .NET. In contrast, web 3.0 developers build decentralized web applications programming in Solidity for Ethereum using Truffle.
Keep Rocking Out!
We hope these analogies help you understand the blockchain development stack a little better. Once you’ve got all of these tools installed you’re ready to rock. Keep learning more in our next entry where we review blockchains & languages.