Blockchain Apps: Moving from the Jungle to the Zoo

In a previous blog post, I made the somewhat exaggerated, but audacious statement that the advent of blockchain technology would prompt developers to rewrite just about everything in favor of blockchain-based architectures.

The reality is that decentralized apps are not for everything, and not everything fits a decentralized app paradigm. However, there are lots of applications that do fit the blockchain distributed paradigm, and that presents a good amount of opportunities for developers, creators, and visionaries.

So, I’m going to take a step back and start referring to Blockchain Apps, instead of decentralized apps because the blockchain is the common denominator, not decentralization. Decentralization can have degrees of subjectivity, and although it is a noble goal that I fully support, it might arrive in a stepwise, gradual manner. Therefore, decentralized apps are a subset of blockchain apps.

In this post, I'm going to describe and classify Blockchain Apps via a Blockchain-agnostic lens for two reasons: 1) to avoid the Blockchain multiplicity debate, and 2) to make the point that (most of) these types of applications should be possible, no matter which Blockchain, sidechain or other decentralized consensus model is chosen.

First let’s define what decentralization is, and what types of Apps fit the blockchain paradigm. Then, I'll offer a simple, yet user-centric, generalized categorization of blockchain applications. It is the result of my own synthesis, and it is partially informed by David Johnston’s seminal paper defining the general theory of Decentralized Applications, Dapps, by Ethereum’s vision, and my regular interactions with developers and actors in this space, notably Vitalik Buterin.

Decentralization vs. Decentralized Organizations

It’s important to separate the characteristics of Decentralization vs. those of a Decentralized Autonomous Organization (DAO’s) in the context of blockchain applications. A DAO merges the political/governance principles of decentralization with the systems/architectural constructs of the blockchain decentralized consensus principles.

Decentralization:

  • There is no center.
  • Virtual governance and trust are distributed natively into the network.
  • Users have a voice that counts permanently, not just when it’s voting time.
  • Users own their personal data, and they can take it anywhere if needed.
  • Users are protected from central abuse, failures or control.
  • Decisions are based on decentralized consensus.
  • Transaction costs are low, or at least lower than center-led alternatives.
  • No single entity controls a majority stake in ownership, trust or governance.

Decentralized Autonomous Organizations:

In addition to the Decentralization characteristics above;

  • The DAO issues its own currency and intrinsically ties it to its own performance and operations.
  • The “autonomous” part is the highest hurdle and milestone to achieve; it means that the creators aren’t needed once the DAO is up and running.
  • Users stake is linked to “tokens” representing ownership, which is earned by performing some work on the network that is rewarded by these tokens, or by buying such tokens.
  • Every user contributes to the whole DAO’s well being, and helps to increase its value by virtue of their usage of the DAO services, as that is the DAO’s most native and atomic unit of value.
  • Transferring value is cryptographically secured and cannot be randomly enacted between parties that aren’t cryptographically trusted.
  • Key records are cryptographically stored in a public blockchain that adheres to a decentralized consensus protocol.

What kinds of Apps are suited for the Blockchain?

This comment by Vitalik Buterin depicts the criteria really well:

"Blockchains are useful for decentralized consensus on databases that update themselves according to non-commutative (ie. order-dependent) state transition functions."

I will leave up to you to interpret this general classification, and if your imagination is running wild, that’s great, because you will therefore find many applications that fit the blockchain paradigm within your own world.

So, how do we classify the types of decentralized Apps that we might see which fit the blockchain paradigm?

The below graph and tables illustrate these classifications, and I will narrate them, sequentially.

Screen Shot 2014-12-30 at 9.05.16 PM

The currency related segment targets money transfers, payments, tips, or funding applications The end-user typically goes to an exchange or uses their own wallet to conduct such transactions, benefiting from transaction cost reductions, speeds in settlements, and freedom from central intermediaries. Today’s exchanges are centralized, but it’s likely we’ll see another generation of decentralized trusted exchanges. And although the current Bitcoin wallets today are "dumb" wallets, they could become smarter, via an ability to launch smart contracts.

Pegged services to the blockchain represent an interesting segment, because these Apps utilize the blockchain’s atomic unit which is a “value store” capability, but they also build on top of that with their unique off-chain services. For e.g. decentralized identity or decentralized ownership is a horizontal blockchain service, but it can be applied to any other vertical segment, such as for videos, music, or photography, just to name a few simple examples.

Smart contracts are small programs or scripts that run on a blockchain and govern legal or contractual terms on their own. They represent a simple form of decentralization. They will become available in a variety of application areas such as for wagers, family trusts, escrow, time stamping, proofs of work delivery, etc. In essence, they are about moving certain assets or value from one owner to another, based on some condition or event, between people or things. Smart contracts represent an “intermediate state” between parties, and we will trust these smart programs to verify and take action based on the logic behind these state changes.

Legal issues aside, a Distributed Autonomous Organization is “kind of” incorporated on the blockchain, because its governance is very dependent on the end-users who are part-owners, part-users, and part-nodes on that decentralized network. Key aspects of a DAO are that each user is also a “worker”, and by virtue of their "work", they contribute to the value appreciation of the DAO via their collective participation or activity levels. Arguably, Bitcoin itself is the “uber DAO”.

Category

Protocol User

Frequency

Benefits

Examples

Currency

Exchanges, payment processors, miners, wallets.

Sporadic

Cost, speed.

CoinbaseChangeTip*any wallet**any exchange*

Pegged Services

Web Business

Chronic

Openness, flexibility, new business models, network effects, empowered users.

OneNameMineSwarmStreamiumOpenBazaarAssembly

Smart Contracts

Contracts Service Provider, Web apps, or end-user with self-service tools.

Episodic

Autonomy, cost, speed, irrefutability.

Mist (by Ethereum)SmartContractSecure Asset Exchange

Decentralized Autonomous Organizations

DAO itself

Habitual

User protection, user voice, user governance, transparency, self-regulation, sovereignty.

La’ZoozStorjMaidSafeOpenGardenBitnation

There may be more categories perhaps…but that’s how I'm seeing them today. The examples given are only a sample.

Users Have Only Two Questions: What and Why?

For each segment, there’s a simple question in a user’s mind: “What is the benefit to me?”, and “Why should I participate?”. Blockchain App providers should be focused on answering these questions clearly and via compelling arguments.

Some kind of common vocabulary and understanding from both sides of the equation;- developers and end-users, will help market adoption. I’m afraid that technical superiority or arrogance alone will not help.

This was a market-centric view, not a technology stack view. For the sake of end-users, I'm proposing that we remain focused on these categories of applications as a way to focus our attention on what needs to happen for a successful evolution and adoption of blockchain-based apps.

This also serves a dual purpose. First, to motivate the Blockchain & Bitcoin developers to rise above their jargon. Second, it's a message that, as end-users, if we are to be exposed to these new cryptography “animals”, we prefer the experience of a zoo-like environment where the animals are identified and mostly caged, docile or restricted, versus a jungle environment that is full of surprises, adventure, and unexpected uncertainty, which are annoying factors that make it a lot more difficult to appreciate, let alone be tempted to explore for the average consumer.

Although innovation and early markets typically start as messy creatures, maybe it's time to put some order into the current cryptography jungle.