What are Distributed Applications (dApps)?

The advent of the ethereum platform in 2015 has worked to provide a virtual computing infrastructure for running applications on the blockchain. This new form of program is called a distributed application or dApp. Ethereum was the first developer platform for building distributed applications. It was a foundational general-purpose blockchain based platform that is a turing-complete virtual machine, meaning it can run any computer code.

Although ethereum was the first and still the largest platform for building distributed applications there are now others such as Blockstack or EOS all of which provided the underlying infrastructure for building dApps. Our working definition of a dApp is an application that runs on a network in a distributed fashion with participant information securely protected and operations executed in a decentralized fashion across a network of nodes.

dApps use open source code, operate autonomously with data, and records cryptographically stored on a blockchain on a technical level. A dApp is very much similar to a normal web application except unlike with normal web app, where the backend code is running on a centralized server. A dApp has its code running on a distributed peer-to-peer network a dApp can have front-end code and user interfaces written in any language just like a normal app, as such, dApps will often look and feel very much like regular apps and people will soon be using them in the coming decade without even realizing them. Like all apps, dApps perform specific functions whereas bitcoin is the decentralized value exchange a decentralized application aims to achieve functionality beyond transaction the MIDI exchange value.

Many types of dApps are starting to emerge as the underlying technology continues to progress. Already we can see many dApps that present alternatives to the existing popular web applications. Probably the most successful dApp to date is Steemit. Steemit is a blogging and social networking website. On top of the Steemit blockchain database, the general concept is very similar to other blogging websites or social news sites, like Reddit, but the text content is saved in a blockchain. Using a blockchain enables rewarding comments and posts with secure tokens value. In this way, users can earn currencies for their posts and comments.

There are many other examples of dApps but the general concepts can be to any area that requires secure records and benefits from decentralization these applications are automated which means they can operate at very low or even zero cost. Because of their dApps may be used to disrupt the existing platform economy as whole platforms like Uber or Airbnb may eventually be converted into dApps that run automatically without the need for the centralized platform. The advantages of dApps is that they’re fully automated, have superior fault tolerance, and trustless execution. These decentralized apps potentially represent the next generation of computing.