What is a Dapp? Understanding Decentralized Applications

Knowmatix   logo temp

Abdulaziz AlYaqout

March 16, 2019

A Decentralized Application, or Dapp for short, is an application that is built on a blockchain platform like Ethereum, Blockstack, Tron, or EOS. Unlike a traditional application that is hosted on centralized servers, a Dapp is hosted on many nodes all across the blockchain’s network. Like the blockchains that they are built on, Dapps have no single point of failure and will continue to run even though some nodes go down in some part of the network.

In the following article, we’re going to explain what Dapps are and why they’re one of the most important developments on the road to our blockchain revolution.

What Are Dapps? And Why Are They Important?

Before you can understand what a Dapp is you first need to understand what an app is. Our modern world is filled with mobile and web-based applications that provide users with convenient ways to do everything from hailing a ride to buying a new wardrobe.

Dapp being coded on a computer

Besides increasing the efficiency of our daily lives, apps have given people an unprecedented level of access to the social networks and other digital services that can now be considered a necessity. While it’s true that the vast majority of these mobile and web-based apps are available for free, they are not without their price.

Today’s app economy is fueled by advertising dollars. Users essentially pay for apps with their personal information and attention. The model has allowed for companies like Facebook and Google to become some of the largest tech giants in the world. The apps of today run on centralized servers that users access to create, share, and consume content. User information, as well as any content users produce, becomes the property of the company who owns the app or platform.

Under the current system, users don’t have control of their data or the content they create. This means that users don’t get to decide who has access to valuable information about their buying habits and content preferences. The system as it stands today is non-transparent and was not built with the user’s best interests in mind. Blockchain technology is changing all this.

How Are Dapps different?

Decentralized applications are built on blockchain platforms and are powered through smart contracts. If a server is the backend of an app, then a smart contract is the backend of a Dapp. Blockchains put the control of personal information back into the hands of the user. Their reliance on smart contracts means algorithms and the terms of the contracts dictate the functionality of the Dapp.

Developing a dapp with a two screen setup

The immutable nature of blockchain ensures that past data cannot be changed or altered by anyone who has access to the Dapp, this fact is what allows a user to know with certainty the promises the Dapp makes will be upheld.     

Users retain their personal data at all times and can completely control who has access to it. The new control that this technology provides the user represents a paradigm shift in the future of the internet called Web 3.0.

How are Dapps built?

As mentioned before, Dapps are built on blockchain platforms like Ethereum and Tron. All Dapp's shares some base elements that we will take a brief moment to explain now.

Programming Language

Currently, the most popular smart contract programming language is Solidity, but there are several other languages currently in development. If you would like to start learning the basics of programming in Solidity, then check out this excellent tutorial. The language will change based on the blockchain platform that it is running on so it’s very important that Dapp developers know what platform they want to target.

Blockchain Platform

Dapps need a blockchain to work. Blockchain platforms are built to host Dapps and smart contacts on their network. All of the Dapps built on one of these platforms share the blockchain of that platform and must follow the infrastructure rules laid down by that specific platform. All that being said, the code of a smart contract makes up only a small percentage of the Dapps overall code.

For example:

If you launch your Dapp on the Ethereum platform, your Dapp will require that users pay Ethereum’s token in order to run it. All transaction fees, speed limitations, and network rules apply. 

Rigorous Testing

Unlike common apps where a development cycle that includes many releases and iterations is normal, Dapp development needs to be much more careful with it’s releases. Because Dapps incorporate immutable portions in the form of smart contracts, many development cycles would be impossible.

Dapps must be tested heavily before they are released because that version will not be updated for awhile. Bugs on a Dapp have the potential to lose user funds which makes them considerably higher stakes than traditional apps.

Conclusion

Dapps are the bridge between users around the world and the incredible capabilities of blockchain technology. Dapp development is markedly different than normal app development when it comes to programing language, development cycles, and testing. The evidence points to Dapps being the major driving force behind the blockchain revolution, even more so than cryptocurrencies already are.

Stay in the know

Get special offers on the latest developments from Knowmatix.

Be the lucky user to earn $1000 bonus now!

Be the lucky user to earn $1000 bonus now!