# Understanding Crypto from Zero - Blockchain Computing

By [BARRYcoin](https://paragraph.com/@barrycoin) · 2024-07-05

---

Now that we covered some of the basics in the [first article](https://mirror.xyz/guerakun.eth/pZT9BDTS7jo1p_e6WFRbDcZ5rv3uxwGYn2EWWCNYYxo), let’s explore some more interesting topics that we can add to our arsenal of mental models. We can start with where we are now in the computing phases history and then describe some technical innovations that will bring us to the current phase: _blockchain computing_.

![](https://storage.googleapis.com/papyrus_images/f80e435e5b2d0fa6d6c38106785ea5638cd0e51e070aa9d54152d78e3aa886e7.png)

**Computing Phases**
--------------------

We have gone so far since the mainframe computing days of yore, so to give context to our journey, let’s visit the big picture history of computing, focusing on _what_ machine does the computation and _who_ is using the computer.

*   **Mainframe Computing**, circa 1950, where the cost to compute is really expensive and it’s only used by institutions to do bulk data processing such as census, statistics, and large-scale [transaction processing](https://en.wikipedia.org/wiki/Transaction_processing) . **Companies**: IBM, HP, Hitachi.
    
*   **Personal Computing**, circa 1975, where hobbyist and technicians starts to be able to do simple _switch programming_ and afford these _microcomputers_. The cheap prices are made possible by major advances in [semiconductor](https://en.wikipedia.org/wiki/Semiconductor) technology. Each of these new computers don’t really talk to one another. **Companies**: Apple and MITS for hardware, Microsoft for software, with IBM and HP as incumbents.
    
*   **Interpersonal Computing**, circa 1991, where [World Wide Web](https://en.wikipedia.org/wiki/World_Wide_Web) was just made available to the general public and the PCs are getting so much more powerful, capable of not only text, but graphics and sound. This is also where each of these computers can do a _transfer of Information_ through the Web between them, marking the Web1 era where the information in websites are mainly _read-only_ and _static_. **Companies**: Acer, Dell, Amazon with Apple, IBM, Microsoft as incumbents.
    
*   **Internet and Cloud Computing**, circa 2005, where the computer is getting smaller and mobile, and Internet starts to become accessible to more people than ever. The heavy computation at this era is done in central powerful servers ([the Cloud](https://en.wikipedia.org/wiki/Cloud_computing)), with the users’ computers mainly serving as client asking for service. Companies that are able to hone in this model won big. This era is also called as the Web2 era where websites are able to provide service and content that is _dynamic_ and _read-write_. **Companies**: Google, Facebook, Twitter and Apple, Microsoft, Amazon as incumbents.
    

This brings us to now. We can almost see the evolution pattern with our computing phases that the users are getting more connected, computing powers are getting stronger, and the Internet infrastructure are getting better. But at what cost? It looks like both wealth and political power are getting even more centralized due to this and it’s giving a very asymmetric benefit to only a small part of the society.

**Smart Contracts**
-------------------

With what we built so far with our [Crypto mental model](https://mirror.xyz/guerakun.eth/pZT9BDTS7jo1p_e6WFRbDcZ5rv3uxwGYn2EWWCNYYxo) (let’s imagine it as a big stack with all the properties), what solution can we propose? In summary, we currently have the following mental models in our _crypto stack_:

*   **Blockchain** is a ledger that is public and decentralized, used to denote transaction of its native assets, complete with information such volume and history.
    
*   Blockchain combined with **consensus protocol** enables us to have a method of doing a direct (peer to peer) transaction safely to transfer value without the need of a third party.
    
*   **Cryptocurrency** is the _reward_ given to the validators for doing validations on proposed transactions using the consensus protocol. This is highly programmable and is different from one cryptocurrency to the next.
    
*   **Cryptocurrency** is simply the native asset that is transacted on a blockchain that has the consensus protocol. So as an example, Bitcoin network has BTC, Ethereum has ETH, and Solana has SOL.
    
*   **Trust** is built-in inside a cryptocurrency blockchain due to the consensus protocol.
    
*   **Information** in the blockchain can also be used as **proof of** **ownership** of the native asset.
    

What if we can introduce a new feature, where we ask the computers on the blockchain (in addition to validating the transactions) to do a simple computing task, such as “_once the date hits Friday the 13th, send Freddie Krueger some money_”. Because that’s how we started the **Personal Computing Phase** explained above to begin with (a switchboard that basically tells yes or no, or in computing terms 0 or 1).

Bitcoin’s transaction system are actually capable of this, but as people start thinking about this feature, they are seeing a lot of limitation on UTXO (Bitcoin’s transaction system). The main one is the **Lack of Turing-completeness** - that is to say, while there is a large subset of computation that the Bitcoin scripting language supports, it does not nearly support everything.

`A programming language is called Turing-complete (from the famous mathematician/computer scientist Alan Turing) if it can be used to find an answer to any computational problem (although with no guarantees regarding runtime or memory). This means it can be used to build up literally any feature that is mathematically describable. We are hitting really close the technical realm here but we shouldn’t need to go deeper than this.`

![](https://storage.googleapis.com/papyrus_images/3566cabaec83a0dd124e1eab3f2cbd9765948672e129ce866b875cd5048f840e.png)

So, in 2013, Ethereum [whitepaper](https://ethereum.org/en/whitepaper/) was conceived and Ethereum was launched in 2015. The big idea is to have a cryptocurrency that is barebone, but will be able to support programmable features through its **Turing-complete** programming language called Solidity.

So the programs written in Solidity are called **smart contracts**, but inside it’s not really that _smart_ nor that it’s always a _contract_. It’s just a term. Since then, many other cryptocurrencies follow the same idea and include this functionality to enable decentralized applications (dApps for short) where the _computation_ is done by the blockchain nodes themselves.

**Blockchain Computing**
------------------------

So with our crypto stack able to do computing as well, what does this bring? Well, knowing that our stack is now also supports a **Turing-complete** programming language, this means we can build _almost anything_ as a _program_/_code_.

The first use-case right away is to program a financial system where people can store their money (_cryptocurrency_ in this case), and gets rewarded when other people want to borrow it. This is one of the basic functions of a bank, but as a user we very rarely gets the reward. Another is to create a marketplace, where people can buy any cryptocurrency they want without the need of a centralized exchange. These applications are called **Decentralized Finance** ([DeFi](https://future.a16z.com/cryptos-fourth-wave-defi-poised-for-breakthrough/)) applications.

We can even go one step further. Paraphrasing the Nobel prize winner economist [Douglass North](https://en.wikipedia.org/wiki/Douglass_North),

> “As humans we find ways to lower uncertainty about one another so that we can exchange value”.

He was one of the first to recognize that humans lower uncertainty by utilizing _institutions_.

North defines _institutions_ as "_humanly devised constraints that structure political, economic and social interactions_". Constraints can be devised as **formal** rules (constitutions, laws, property rights) and **informal** restraints (sanctions, taboos, customs, traditions, codes of conduct).

Well now that we see institutions that way, it looks like the formal rules here, are able to be built as a _structured set of smart contracts_ because it will stay the same and is enforceable (if only _natively_, which is _digital_). People say that in blockchain, the [code is law](https://journals.openedition.org/factsreports/4518). Bettina Warburg gave the below TED Talk in 2016, on _“How the blockchain will radically transform the economy”._

This is exactly what is happening in DeFi, where the functions of a centralized institutions like banks are instead replaced by a very elaborate set of rules that is written. The code is all _open-source_ so people can _verify_ if the code is doing what it’s supposed to be, instead of just trusting the institutions to act in our best interest.

In 2020, Chris Dixon from a16z defined Blockchain in their [Crypto Startup School](https://www.youtube.com/watch?v=2wxtiNgXBaU) as [follows](https://a16z.com/wp-content/uploads/2020/05/Chris_Dixon-What_Are_Blockchains_And_What_Are_They_Good_For-1.pdf):

> **Blockchain:** A virtual computer that runs on top of a network of physical computers that provides strong, auditable, game-theoretic guarantees that the code it runs will continue to operate as designed.

Because we have all the building blocks needed to understand this definition, I think this is one the best _mental model_ to understand blockchain: as a virtual computer that enables people to construct any _institutions_ they see fit, to enable a _frictionless_ exchange of _value_.

Internet enables a frictionless exchange of information. If we add cryptocurrency to that stack, we get a frictionless exchange of value and this will bring a big change to how we do things. When a builder sees that they’re able to include money natively in their code, it will bring about a very new sense of liberation.

---

*Originally published on [BARRYcoin](https://paragraph.com/@barrycoin/understanding-crypto-from-zero-blockchain-computing)*
