and business model implications for software companies
In this thought experiment post, we:
- Outline my views on blockchains and related philosophy on capitalism incentives.
- Identify what I believe is a crucial design flaw of blockchains.
- Establish why it could make sense to decouple tokens from blockchains and what that even means.
- Conclude with some evolutionary opportunities that could subsequently arise for software company business models if this decoupling happens.
As with all highly complex topics, my views on blockchains are relatively nuanced. At the highest levels, there are two types of blockchain: public and private. Our focus is on programmable public blockchains like Solana, and Ethereum. While private/enterprise blockchains address a few of the issues we identify, they are not the focus of this piece for a range of reasons, principally because the "Web3/crypto" world is being built on public blockchains, not private ones.
While I'm excited about the potential of blockchain usage in many industries, I simply cannot yet go "all in" until seeing a viable solution that addresses the following issue.
For many years now, I've believed that blockchains (in their current form) incorporate a kind of "architectural design flaw" since they inseparably and tightly couple (bundle) two specific things:
1) a Monetary Token (aka "digital asset layer," of which there are many different types, from the base digital monetary currency — or Layers 0 to 1— to the programmable tokens on top, ala NFTs — or Layers 2 to N),
2) a Distributed Consensus Ledger (governing how transactions get written and propagated on an immutable decentralized database — for simplicity, referring to both the consensus algorithm and the data storage mechanisms/structures involved).
Perhaps the main commonality of all blockchains is that they fundamentally aspire to replace, upgrade or redefine (or all of the above) traditional fiat currencies.
From Bitcoin’s unveiling in 2008 up until Ethereum surfaced in 2013, blockchain technology was focused exclusively on introducing a new form of digital currency (store of value and medium of exchange)…but from 2013 onwards, since the release of the Ethereum blockchain, the scope of that ambition expanded dramatically.
Ethereum's launch marked a moment of great scope expansion beyond Bitcoin's more narrow vision of simply providing a digital censorship-resistant and decentralized form of money… towards also bolting-on a programmable computing layer with its own currency and monetary primitives built-in! Enter the EVM, the Solidity programming language, and all the tools associated with building arbitrarily complex computational applications on top of this new Ethereum blockchain environment.
Nearly all blockchains that emerged after Ethereum subsequently promoted a similar architecture — one that made it possible not just to replace fiat money, but also build any kind of software application and digital experience on top of a blockchain with “native support” for monetary primitives, thanks to the token and cryptocurrency layers available in the same “software stack”.
And as a result of this "scope expansion," the world of blockchains went from trying to solve one huge problem (trusted, decentralized money) to solving two huge problems (trusted, decentralized money AND computation).
Today, cryptocurrencies are so far perceivably inseparable from blockchains, and I'm not sure they would achieve their stated objectives otherwise.
Having said all of this, to be clear, I'm wholly supportive of "cryptocurrency" as a full replacement for fiat currency—our global macro and micro financial systems are certainly in dire need of wholesale upgrades and redesigns for many of the reasons cited in the Bitcoin paper itself. Relegated exclusively to the world of "money," yes, blockchains absolutely hold a tremendous level of promise in their current form.
However, suppose you apply that same exact form to everything else—as the fundamental basis for how we reimagine what software experiences will look like across SaaS, consumer apps, and the web itself—for this future, I don’t believe the right software infrastructure abstractions have emerged just yet.
Onwards below, I hope the ideas espoused will inspire people far more capable and smarter than I to implement the "right" approach.
In capitalism, which I view as the greatest force for positive change humanity has ever invented since the Dutch East India Company was created exactly 420 years ago, I believe there are fundamentally and exactly two loosely-coupled dynamics that drive entrepreneurs and the world of business to successfully operate the way they have for several centuries:
Extrinsic incentives: People doing things to avoid some punishment (being poor), or to achieve a monetary reward (being rich).
Intrinsic incentives: People do things to achieve an inner reward by producing a public good or reaching a level of mastery in, for example, playing a particular musical instrument, possessing a specific athletic skill (priceless), or to achieve higher degrees of relatedness to their fellow human being (existing).
Of course, both types of incentives can certainly co-exist at different levels depending on the situation.
However, I believe that if the business world were exclusively built on an architecture that tightly (vs. loosely) coupled these two types of incentives, we would be required to devolve toward a "one size fits all" monetization/business model for all capitalistic endeavors – significantly limiting how we agree on and measure the true value of our innovations.
This leads me to another philosophical principle worth emphasizing in this context: I believe all businesses and entrepreneurs should have the freedom to choose (arbitrarily, through experimentation, driven by market exploration and/or customer input) precisely how they monetize a given product or service—in an evolutionary manner...By example, COSS companies are very special and powerful in that they can evolutionarily iterate their business models thanks to the benefit of their core technology (value creation source) being loosely-coupled to their company (value capture source).
Back to blockchains — I believe that "Web2" companies are being forced to choose a binary switch path to transform into "Web3" companies by building all products and services on a given blockchain.
If this direction continues, we will very likely see a dramatic bifurcation of these two worlds and frustratingly heated levels of condescension and polarity (as already seen in mainstream Twitter conversation) instead of more inclusive, flexible, and incremental pathways of experimentation.
Let's go back to Intrinsic and Extrinsic incentives for a second. I believe these two types of behavioral stimulants are extremely critical to recognize in these discussions, and yet are so seldom acknowledged— let alone observed as critical areas for revealing alignment or the lack thereof.
Simply put, I believe that extrinsic incentives cause value capture (which I think is always measurably quantitative: profits, revenue, market caps, etc.)… whereas intrinsic incentives cause value creation(which I conversely believe is always immeasurably qualitative: open-source, art, music, science, public goods, etc).
Technology systems that strive to drive category-agnostic change and progress in the world must therefore design accordingly and loosely-couple these two dynamics, not tightly-couple them. Otherwise, their impact will be relegated to only a few use cases (money, finance, speculation, etc.) as we have seen so clearly in the world of blockchains given how they are adopted today.
So, how can we decouple tokens from blockchains?
Blockchains are fundamentally pieces of software, nothing else. Like all software, they require hardware to run and humans to coordinate around that hardware in specific ways so the software may run as intended.
For this reason, it should be achievable to loosely-couple tokens to blockchains by creating entirely new types of blockchains and redefining the very notion of what a blockchain is supposed to do entirely — instead of accepting the status quo and encouraging the ever-expanding universe of over-engineered and overly-complex blockchain abstractions (the wide space of projects that aim to build "chain agnostic" layers on top of the existing set of blockchains: examples include projects like Polygon, Arbitrum, StarkNet, etc.)…
This is a software design problem, albeit a controversial and structurally disruptive one. New "token/cryptocurrency agnostic" blockchains that natively support awareness of many tokens and digital currencies could focus on doing one thing and doing it well.
I strongly encourage the world's software creators and founders in both non-crypto and crypto camps to explore this problem space.
In developing an early draft of this post, I posted a tweet that spurred a great series of responses from my friend Ryan Hurst, a product manager at Google, who has worked closely with the team who designed and launched the Trillian project. Ryan then pointed me to the Biscuit project. More details below:
Trillian: A Merkle-tree based (the data structure that underpins almost all blockchains) data store built and maintained by sharp engineers at Google and applied to some meaty problems in the areas of certificate transparency and software supply chain security.
Biscuit: A delegated, decentralized, capabilities-based authorization token (not cryptocurrency token, but cryptography token — big difference).
In combination, these two projects could serve as a promising initial playground to explore building new types of token-agnostic blockchains.
Additionally, in this world of “token-less” / “token-agnostic” / “non-monetary” blockchain-esque technologies, there are a class of tools that have made a great deal of progress already with different focus areas – notably all built on top of the aforementioned Trillian project:
Implications for software companies
Today, if a software company wants to wholesale replace the way it handles software subscription licensing (SaaS) or cloud services (margins on raw compute/storage/network costs) towards this brave new Web3 future, the only widely accepted option would be to write smart contracts on Ethereum or something like it. That same company would then be tied to the underlying L0/1 currency dynamics of that particular blockchain.
But what if not all your customers were comfortable owning/being exposed to a part of that underlying and highly opinionated currency or architecture? Customers also benefit from freedom of choice.
Software companies that are highly successful have the ability to take payment from their customers in many fiat currencies thanks to a stable and mature global banking infrastructure — notwithstanding all its deep flaws.
If software companies could instead access a thin and elegant software layer to unlock the freedom of choice for how they implement a given "blockchain-Esque" monetization scheme — in the same way their business models are decoupled from the way their products are developed (using/building either open source or proprietary software, for example) — a "Web3" future could develop far more elegantly, evolutionarily (vs. revolutionarily) and even less chaotically.
Orthogonal to this is the immense level of inertia of the $4-500B+ in annual spending that customers pay software companies of all shapes and sizes for their products and services.
It's important to remember that the "software industry" (add up SaaS, cloud, consumer internet, apps, etc.) is a technology market category valued at $15 Trillion. "Crypto" (aggregate value of the NFT asset class, all L1 currencies and all blockchain tokens overall) is valued at around $2 Trillion, and not due to customer spend or purchase of products/services, but due to speculative trading and holding of digital currency assets.
It seems, to me, that the real untapped opportunity for blockchain tech is to shift as much of the real, customer-saturated software industry over to "crypto" as frictionlessly and pragmatically as possible.
In the same way that HashiCorp has brilliantly unlocked a multi-cloud and heterogeneous future by popularizing purpose-built open source tools which enable builders and enterprises to evolutionarily modernize their applications, we need similarly brilliant engineers and founders to do the same for this brave new world of blockchains which holds so much promise for all.
With kind thanks to the following friends who have given feedback and reviewed early drafts of this post: Heather Meeker, Ryan Hurst, Geoffroy Couprie, Praveen Akkiraju, Philipp Koellinger, Deepak Prabhakara, Mayank Chhabra, Christopher Nguyen, Didier Lopes, Bruce Perens, Joe Eagan and Jessie Navarro.