What is a DApp?


Let’s first breakdown what the current model of an application is.  Many people think of apps on their phones or types of software that they use for work.  A software application is a software that is built for a specific goal. The vast majority of applications are run on computer systems that are run by and operated by a single central organization or entity.  It is from this central point that all individual units of information and flows of data originate.  While there can be multiple users on one side, they are entirely dependent on the central authority to send and receive information.  For example, almost all mainstream services operate in this way including Google, Facebook and Amazon. 

The birth of Ethereum in 2015 using the code solidity was built in order to run ‘smart contracts’. Smart contracts are computer programs stored and executed on the blockchain that have predetermined conditions written into the code that when met, trigger outcomes.  They rely only on the conditions coded in and once deployed are self-executing.  They are regarded as trustless (not dependent on trusting anyone to carry anything out), autonomous, decentralized, transparent and usually unmodifiable.  

With the Ethereum blockchain and its smart contract capabilities came the boom of decentralized applications, or dapps, running on Ethereum’s network of computers (also called a distributed network).  Some define a dapp merely as an application that does not have a single point of failure (as opposed to centralized applications), while others believe there are a few conditions that have to be met. These conditions were listed out in a 2014 report titled, “The General Theory of Decentralized Applications, Dapps.” These conditions include the dapp needing to be open-sourced, the dapp requiring a cryptocurrency or token to operate on the dapp and these tokens are given to ‘contributors’ of the dapp, and lastly that the data is publicly stored on a blockchain. 

Most often dapps use smart contracts to act as the ‘logic’ of the central authority by executing commands and enforcing rules, thus removing third parties and attaining the ‘decentralized’ status.  For example, someone can use a dapp to take out a loan, and the smart contract will send funds automatically to the end-user only once the conditions are met such as the appropriate information and collateral being received. 

Dapps are by no means a new invention, in fact, they have been around since the dawn of the internet. Some popular ones include BitTorrent, Limewire and Napster.  The rise of Ethereum however, has given engineers an infrastructure base and a supportive ecosystem to build more of these decentralized applications.  Most dapps aim to have the user-friendly components of current centralized applications, but the back-end of a decentralized network to lower transaction fees, share profits with consumers, and keep individual’s data more private.  Basically, the end-user ideally shouldn’t even know the difference between a dapp or an application they currently use from an experience standpoint. While many dapps are in their early stages of development, they have the potential to change the way every user interacts on the web and offer a lot more in terms of features. 


Previous
Previous

Intro to Tokenomics

Next
Next

Different Types of Blockchains