Basics of a DApp ("Dee-App", not "Dapp")

I wrote a post a few weeks ago about decentralization as a key theme of the ongoing and intensifying blockchain revolution. That post articulated what I believe to be the most convincing argument for why blockchain technology will almost certainly grow into one of the most foundational technologies of our generation, but it failed to discuss exactly how the blockchain is used in more concrete terms. The complete answer to such a question would take me months to write, but I’d like to offer a glimpse by discussing the basics of a DApp (pronounced “Dee-App”).

To start, DApp stands for “decentralized application.” It is the lifeforce of the blockchain. It is the reason anyone besides applied mathematics majors at Stanford care about the blockchain. It is the general term for pretty much anything that renders the blockchain a useful tool as opposed to a neat science project.

A decentralized application is comparable to a regular app like those on your phone in that it has a user interface, is typically web-based, and provides a service. The difference is that the data stored by DApps is stored within the blockchain and accessed across a decentralized network of computers instead of coming from a centralized data center like those of Google and Facebook.

GNEISS is DApp built on the Ethereum blockchain that allows you to create and manipulate custom crypto assets of any type and form. Bitcoin is a DApp built on its own blockchain that operates as a digital currency. MaidSafe is a DApp that takes your files, breaks them up into little pieces, stores them across a secure blockchain-based distributed network, and then reassembles them when you put in an authenticated request to retrieve them.

According to recent documentation about the nature of DApps, a DApp only qualifies as such if it meets the requirements of the 4 following criteria:

  1. The application must be completely open-source, operate autonomously, and with no entity controlling the token majority. Changes to the application must be adopted by consensus.

  2. Data must be cryptographically stored in a distributed blockchain to avoid central failure points.

  3. The application must use a cryptographic token for access to the application and as reward to network supporters.

  4. The application must generate tokens according to an algorithm that values contributions to the system.

(Quoted from David Johnson’s The General Theory of Decentralized Applications)

DApps are continuing to become more and more popular as people turn to decentralized networks to operate securely in the digital world. Have an idea for a DApp that you’d like help developing? Let us know by commenting below!