Commercial building blocks
Why smart contracts are useless and how to fix that
It’s a bold claim that smart contracts are useless, so let me start off by justifying it with a thought experiment, the crypto rapture: Imagine that one day all blockchain technology and knowledge suddenly vanished, and whatever funds people had in cryptoassets were magically returned to them at market price, deposited to their bank accounts or simply appeared in their pockets. Who would have suffered from this, and to what extent? People that use cryptocurrencies to avoid hyperinflation would, but that’s Bitcoin’s use-case. There are people out there depending on cryptocurrencies for remittance, but again, that’s what Bitcoin is for. I believe it’s safe to argue that among all the inconvenience that this would have caused, only a tiny portion would have been owed to the disappearance of smart contracts, if any. If you can’t come up with a good reason why such an event would have been catastrophic due to smart contracts no longer being available, smart contracts are still useless at the time you’re reading this.
To further the point, imagine the same thing happening, but with the Internet. Any service that requires complex coordination, such as air travel or banking, would have become completely inaccessible to the general public. If this happened while you were on vacation abroad, it would have rendered you homeless. Take it one step further and imagine that all computers ceased to work. Walking and cycling would have become the only available methods of transportation for many of us, and that would have been the least of our problems. In contrast, the world computer has utterly failed to work itself into any part of our lives that we deem essential, and we’d hardly notice its absence.
Bitcoin combined existing technologies in a way that the sum exceeded the parts in an unprecedented way, and that is why many people find it extremely satisfying from an intellectual point of view. However, the real reason for its success was that it was timed perfectly, and Nakamoto was uniquely aware of this. Why Bitcoin was built was declared so clearly in the whitepaper, and the message “The Times 03/Jan/2009 Chancellor on brink of second bailout for banks.” embedded in the genesis block was so on the nose that it was impossible to miss the point. Then, why was Ethereum built, and more importantly, why now?
Smart contracts are a dated concept, and the technologies that comprise Ethereum are as mundane as the ones that do Bitcoin. Even though I wholeheartedly agree that running a virtual machine on a blockchain is an incredibly neat idea, it’s rational to assume that the actual reason Ethereum caught on was because it addressed a contemporary crisis of global relevance, just as its predecessor. Even though this crisis mainly existed in the collective unconsciousness back in 2014, we all have somewhat of an idea of what it is now. Without attempting an exact definition — which would be unavoidably political — let us just keep in mind that smart contracts have a greater reason to be while investigating why they are useless at the moment.
It is typically well-understood what Bitcoin is for: Alice buys coffee from Bob, sends him 1 BTC. 1 BTC=1 BTC and no one can stop Alice from sending that 1 BTC to Bob. Alice and Bob are centralized off-chain agents, yet we don’t find this off-putting. Bitcoin provides the decentralized and trustless medium where value can be transacted, yet the transacting agents being centralized (EOAs) or decentralized (multisigs) are equally acceptable. In fact, the majority of Bitcoin use-cases involve individuals or centralized organizations transacting.
Bitcoin introduced decentralized monetary policy-making and a permissionless payment network. Similarly, Ethereum introduced a trustless computational medium where business logic can be run permissionlessly. This medium is primarily for centralized off-chain agents to use, similar to how Bitcoin is primarily for Alice and Bob. A company and a government providing centralized services over a smart contract platform, and a developer living in their mom’s basement combining these trustlessly to build the next unicorn that anyone with a mobile phone can use and invest into is what shouldn’t be possible normally, and what smart contracts enable.
You are probably familiar with the concept that DeFi projects are financial building blocks that can be combined in a myriad of ways. However, since smart contracts are currently useless, by the principle of inclusion, so are DeFi projects. A lending platform is useful if a farmer can use their land as collateral, borrow money to produce crops, sell the crops and pay their loan back with the revenue they generated. Alternatively, one can borrow tokens by using some other tokens as collateral, use the borrowed tokens to buy some other tokens and make money out of all this, but this use-case is not useful in the sense that its disappearance wouldn’t have been particularly bothersome.
Composability is the most powerful aspect of smart contracts, yet the resulting use-cases will only be useful if some of the building blocks are services that are provided by real world businesses. Furthermore, these commercial building blocks will be amplified by the existing DeFi blocks, and enable DeFi to facilitate useful use-cases, and not only novel ways of gambling. If we revisit the crypto rapture thought experiment, real world business processes being embedded into smart contracts will cause the disappearance of smart contracts to be paralyzing, which indicates that it is the solution to the uselessness problem.
It can be argued that DAOs natively exist on-chain, ready to be used as commercial building blocks. However, similar to how most Bitcoin users are individuals and centralized organizations, most potential commercial building blocks out there belong to traditional meatspace organizations that will not become DAOs soon, or likely ever. Then, we’ll have to build the commercial building blocks out of these.
Businesses and governments use APIs to provide their data and services in a programmatic way over the Internet. The most frictionless approach to making these services available on-chain is integrating the APIs to smart contract platforms directly, with no middlemen. We have coined the term first-party oracle for this architecture, and discuss the concept at length in the API3 whitepaper. Then, first-party oracles should not only be thought of as a superior alternative to third-party oracles, but also as the best way of creating these building blocks that will enable useful smart contracts.
In the last year, a lot of smart contract platform projects have been trying to solve the scalability problem. Any success towards this will increase the throughput of useless transactions, followed by the chain being congested at its new limits. The current trend is for smart contract platforms to deploy multi-hundred million dollar ecosystem funds to capture a larger market share of the useless use-cases.
The financial speculation around smart contracts is based on the fact that none of them is useful, the ones that will become useful will be very valuable, so people want to get first dibs on the ones that will become useful. However, instead of working on making their project become one of the ones that are useful, teams are strictly focused on facilitating the speculation. Since a useless thing won’t become useful spontaneously, the collapse of such an unchecked positive feedback loop is guaranteed.
The path forward is simple: Keep doing what you’re doing, but also make commercial building blocks available and introduce them into use-cases that you want to make useful. The first dApps that are useful, the real world businesses that power them and the smart contract platforms that host them will have gotten from zero to one, and gained an advantage difficult to beat. Emergence of useful smart contracts is an unforeseen yet inevitable gold rush, which is why we’re working with a constant sense of urgency on building the picks and shovels for it.