---
title: 2.1 The Evolution of Blockchain 
description: The World of dApps and the Universe of Chains 
---

# 2.1 The World of dApps and the Universe of Chains: The Evolution of ‘blockchain’

[Writing this lecture during the FTX Nuke event, November 9th, 2022, Denver, CO] 

## Introduction

This module introduces the landscape of smart-contract platforms - also known as Layer 1’s. This is what we are referring to, when we speak of ‘blockchains’. But the word ‘blockchain’ we will see, is not a great representative of the reality that is created. Layer-1 blockchains, are smart contract platforms, which are designed to support decentralized applications - or dApps. The dApps can then talk to each other, in such a way that value is moved between dApps on the Layer 1. This effectively creates what we would call, an _ecosystem_. Now before we get too deep into this - and analogies of cities and comparisons of L1s - we are going to take a step back and do a very high conceptual level of ‘what is a blockchain?’ - this is usually the boring part of introducing crypto, but for us, it is only the very, very start. 

## Conceptualizing a Blockchain

A blockchain, is first and foremost, a self-sustaining software system. What do we mean by this? Traditionally, servers and databases stored data in a centralized location maintained by machines. Hence the concept of a ‘data warehouse’ or ‘data center’. With blockchain, we create a system on the internet - in cyberspace - whereby a set of nodes collaborates in maintaining the same ‘state’ of a network. This means that the different nodes must reach _‘Consensus’ _in cyber-space as opposed to a single node simply updating itself running hardware in a data center. When nodes on the network are able to reach consensus, a ‘block’ is created as a reference point of the new state of the network. This block contains batches of transactions from the network, with a hash of the previous block in the chain - thereby creating a link and historicity between past and present. 

_“Blocks are batches of transactions with a hash of the previous block in the chain. This links blocks together (in a chain) because hashes are cryptographically derived from the block data. This prevents fraud, because one change in any block in history would invalidate all the following blocks as all subsequent hashes would change and everyone running the blockchain would notice.”_

At scale, and in real-time, blocks are produced such that they appear to form a ‘chain’, and in this manner, we reach a state whereby a completely digital network - sustained by a number of different nodes - all participating by the same rules of coming to ‘consensus’ about the state of the network, can update that state as more activity is done on top of the network. In earlier terminology, these network participants were referred to as ‘miners’, today, they are often referred to as validators. 

In the event that there is no consensus between different miners or validators on the network, then the network splits into two separate networks - still running - which is known as a ‘Hard Fork’. In this case, a new blockchain is born from the original. When we talk about Ethereum we will see how this very thing happened after the DAO hack in 2015. 

### Consensus

To stay on the topic of consensus - we use this term to refer to the ‘method by which a new block is confirmed on the blockchain.’ In a ‘proof of work’ blockchain, as what Bitcoin is, and what Ethereum used to be - we have a blockchain that requires different nodes to run complex computational algorithms in competition with one another - as a manner of validating the correctness of the state of the chain. Over time, the puzzles become more difficult, and more energy intensive computational machinery is required in order to stay competitive. Hence the energy consumption issue often associated with Bitcoin. 

Entirely different from proof of work, is proof of stake. In a proof of stake system, we change up how ‘validators’ or nodes come to consensus. Instead of solving complex puzzles, using increasingly demanding computation power, we require node operators to lock the native tokens of the network onto the network as ‘collateral’ against acting poorly in maintaining the state of the network. So anyone with a token, can lock their token onto the network, run much lighter software to maintain the state, and contribute to the decentralization of the network. 

In both cases, being successful in state maintenance accords you with a reward - a token of some sort native to the blockchain that you are validating. 

However in the proof of stake model, if you act as a bad actor - if you attempt to sabotage the network, or direct it against the consensus as set by the other validators (by validating blocks differently) - you are at risk of losing a portion of your stake on the network. This is known as getting ‘slashed’. 

Third, there is a nuanced version of proof of stake, known as ‘delegated proof of stake’ or ‘proof of authority’. And this is simply a way of saying that the network limits who is allowed to stake their tokens, to either certain ‘delegated’ validators, or those who have a certain threshold of tokens committed to them. 

This discussion on Consensus, takes us to a broader discussion on the nature of a blockchain as being fundamentally public. What do we mean by this? We mean, that this decentralized network running in cyberspace is a public-permissionless network such that ANYONE willing to purchase the token, or run the necessary software computations, can participate in the maintenance of the network state. 

If the network is permissioned, it means that while it is visible and operating out in the open, only special people can participate in certain state maintenance activities. 

Meanwhile, if the network is private, it means that only certain people can see the network and its operations as a whole. 

| Pick 1 below. | Pick 1 below. |
| --- | --- |
| Public | Permissioned |
| Private | Permissionless |


Now there is one very serious implication of a blockchain being public in its fundamental design. And that has to do with token issuance. 

We said before, that after the complex computation has been solved, or the validators affirm the state of the chain, that a block is produced and a token is issued as a reward. This is two sides of the same coin: From a state maintenance and durability perspective, the token ensures proper mechanism design of the decentralized system. From a financial services perspective, the system ensures the maintenance and programming for a sound monetary economy built around a decentralized system. 

Where is the elephant in the room? 

Well in proof of work chains, like Bitcoin, the network has defined its total supply from the beginning, and increasingly limits issuance as the network evolves over time. That is to say, miners will keep competing, and every couple of years the rewards will ‘Halve’ such that they earn less and less, and less and less is emitted. 

But in proof of stake, we face a somewhat different situation - whereby every time validators come to consensus, tokens are given out and added to the stake of existing delegators. 

What this means is the following: 

#### Public block production = token inflation. 

This is to say, that you cannot - in any manageable way, have a network that is public, and produces blocks - whereby new tokens are not created to incentivize the validators to validate the state of the blockchain. 

Bitcoin has kicked the can down the road, and proposed miners be incentivized by fees on the network - but they have until 2148 to figure this out fully. For proof of stake systems, we will show how different chains attempt to solve this problem in different ways (Specifically ETH and NEAR). 

### Smart Contracts

Self-executing code, and programmability of functions into the blocks of a blockchain. A smart-contract is the programmable function that can be implemented on top of a blockchain. In other words, a smart contract is a program running on top of a blockchain that executes certain functions when pre-conditions are met to facilitate movements of money and information (value or data). At its core, the prospect of self-executing code - is a major innovation in creating permissionless, decentralized systems to handle value. 

### MEV

If we zoom in even closer, we come to the mechanics of controlling what goes into each block, known as [MEV - Maximal Extractable Value](https://ethereum.org/en/developers/docs/mev/). This is a concept to file away but keep in the back of your mind, as it becomes quite relevant for DeFi and finance on blockchains. In short:

_“Maximal extractable value (MEV) refers to the maximum value that can be extracted from block production in excess of the standard block reward and gas fees by including, excluding, and changing the order of transactions in a block.”_

The main idea behind MEV is that certain players can influence what information is put into the next block on the chain, such that multiple activities can be taken on-chain in a short period of time. This definition here is more than anything a pointer to relevant topics that come up very frequently in DeFi. 

[https://twitter.com/SalomonCrypto/status/1592762567952257024?s=20&t=zwJscjBFhMVufKcxkKxwHQ](https://twitter.com/SalomonCrypto/status/1592762567952257024?s=20&t=zwJscjBFhMVufKcxkKxwHQ)

### Virtual Machines

Last but not least, we should allude to and address the concept of a Virtual Machine, and specifically the Ethereum Virtual Machine. Because as we will see, an EVM is the common basis for many other blockchains in the space. A virtual machine is a setup that allows the rules and programmability of a blockchain to be re-implemented in other environments. 

_“Ethereum Virtual Machine (EVM) is designed as the runtime environment for [smart contracts](https://www.geeksforgeeks.org/smart-contracts/) in [Ethereum](https://www.geeksforgeeks.org/introduction-to-ethereum-part-1/). It is sandboxed and isolated from the other parts of the system. This means that any operation on EVM should not affect your data or programs in any way, no matter how many times you call a particular function on it.” ([Geeks](https://www.geeksforgeeks.org/what-is-ethereum-virtual-machine-and-how-it-works/#:~:text=Ethereum%20Virtual%20Machine%20(EVM)%20is,a%20particular%20function%20on%20it.))_

This means that someone could use an EVM to create a clone of Ethereum, with slightly different parameters but still running the core logic and turing-complete programming language of Solidity, to make it easy to recreate smart contracts just as they are done on Ethereum. 

#### Some other fast facts about the EVM: 

* It is the computer that stores data on blockchain, like bitcoin, but it also executes code in smart contracts on the Ethereum network.
* The machine is made to be able to run any kind of Crypto-contract that can be built on Ethereum’s blockchain. It does this by using a programming language called Solidity, which is compiled into the EVM for execution.
* The intention behind writing code on the Ethereum network is to create smart contracts and programs that automatically execute things when certain conditions are met. If a terms or condition is not met, the system can execute it in an “exit” function as well. 

### Summary / Recap: What is the idea behind a smart contract platform? 

Taking what we have said above, we can summarize our understanding of what a blockchain is by saying the following: 

_A Blockchain is a decentralized network of participants, who are collaboratively participating in the maintenance of the state of the network, through the routine generation of blocks of data. These participants form consensus according to the design of the chain, and earn rewards for their participation in the maintenance of the network. These rewards are in the form of a digital token._

What is fascinating, is that these networks are gigantic, self-sustained artifacts of cyberspace. They are quite literally software living on their own in cyberspace, thanks to the active participation of the different network participants. But the underlying value proposition remains the same: The system lives on its own, the system creates its own value, and the individuals move in and out of the system according to its pre-defined rules. 

This is how you should think of a blockchain - as a system of self-executing code living in cyberspace and incentivizing participants with token incentives. 

Every blockchain thus must make certain decisions as it pertains to its fundamental design. And this has led some - notably the Founder and GP of DragonFly Capital - Haseeb Qureshi - to propose the quite fitting analogy of blockchains to cities – one might be able to go so far as countries. What does Haseeb mean? 

## L1 - Blockchains as Cities

The analogy of different L1 blockchain ecosystems as different cities has to do with the fact that each blockchain has to make certain fundamental design decisions that impacts how the blockchain works, and in a similar vein, the types of builders and culture that accrues to that network. 

These decisions can be summarized in the following manner: 

  * **Validation design / Consensus mechanism.** This is usually, Proof of Work, Proof of Stake, Delegated Proof of Stake, Proof of Authority, Proof of History, and so forth. 
  * **Transaction speed**. How quickly can new blocks be processed on-chain, by all of the different validators on the network? 
  * **Crypto-economics.** How many tokens are rewarded to validators, how many total tokens are there on the network, and is there a deflationary mechanism built in? 
  * **Scalability design**. How is the network designed to scale? Sharding, side-chains, rollups, high-throughput machinery, etc. 
  * **Programming languages**. What kinds of programming languages can developers build applications with? 
  * **Other differentiating features**. The account model for users participating on the chain. Automatic fees for developers deploying smart contracts. 

As we will see in the video from Haseeb, the different unique design specs of each L1 blockchain, gives way to an ecosystem that is not dissimilar to a city or a country. There is a currency (L1 token), a programming language (set of languages), certain monetary policies like inflationary or deflationary pressure, and then a host of decentralized applications built on top. 

And this is where we start our discussion of the landscape of L1s, and _The World of Dapps_ vs. _The Universe of Chains_ models of Blockchains. This specifically has to do with the focus on the ‘ecosystem component’ of a blockchain. Once we have a digitally self-sustaining network that is maintained by a suite of decentralized stakeholders - what can you do with it? You can build decentralized applications on top of it, or connect parallel ‘side-chains’ to the mother chain such that an ecosystem can grow around the core L1 chain. 

## The World of Dapps and the Universe of Chains

The idea behind the World of Dapps vs. the Universe of Chains dichotomy is that there is fundamentally two ways of looking at scaling a blockchain: Either the blockchain maintains its state - and by default its fundamental design - in such a way that all dApps build _on top of that chain _to create a world of dapps. Think of this option like a single unified country, or cloud-of-services. Examples of this would be ETH 2.0, NEAR, Solana, and Elrond. 

Or, the L1 chain designs their system in such a way, that another chain - following extremely similar design logic as the mother-chain, is spun up to accommodate specific applications, or to ensure the scalability of the chain into the future. This would be known as a Universe of Chains model. Examples of this would be Polkadot and Cosmos. 

This is an extremely helpful framework to make sense of the L1 landscape, and then by extension the crypto product stack. 

## The Crypto Product Stack

The goal of this lecture has been an initial orientation into what is a blockchain, how that translates into an L1 ecosystem, and then how that is a helpful framework for making sense of what kinds of applications are built in crypto. The final piece we will cover is how to connect the larger product stack to this ecosystem design. 

The first thing to consider is the idea of infrastructure - what is infrastructure? In essence, it is support for access to services, assets, or users inside of an ecosystem. So when we speak of infrastructure we are talking about things like:


* **Bridges** -  between different ecosystems (think of it like highways). 
* **Oracles** -  connecting data from the rest of the internet in the ecosystem. 
* **Storage solutions** -  holding additional data from which can be stored inside of the specific L1 in question. 
* **Indexers** -  for keeping track of participation and activities across ecosystems. 
* **On** - **Ramps** and **Off** - **Ramps** for moving fiat currency into an ecosystem. 
* **Stablecoins** - either native, or from outside as a form of stable money markets. 
* **Custody Platforms** - For bringing in outside investors and institutions. 

If we think analogously of crypto L1s as cities, we can think of this infrastructure as the early banks, schools, hospitals, and grocery stores of this digital frontier. 

Going forward, keep this framework in mind as we evaluate different dApps, ecosystems and products. You should always attempt to orient yourself to the solution by identifying - what L1 is it built on, how is it designed, and what infrastructure does it require? 
