Don't start with Blockchain
There’s an old joke about an Irish farmer working a remote field. A traveler shouts from the edge of the road asking, “Hey! How does one get to Dublin?” The farmer replies, “Well first off, I wouldn’t start here.” This reminds me a lot of blockchain conversations. They’re often inverted. If you begin any blockchain project with the question, “how can I use blockchain,” well, I wouldn’t start there. At my day job, I rely on two questions on whether blockchain (aka, Distributed Ledger Technology, or DLT) is worth investigating as a solution to a particular problem or opportunity.
The first question: Is there a need for trust between multiple untrusting parties? If the answer is no, skip blockchain. Even if you have a write-only dataset, such as internal financial transaction data, you’re going to be much happier leveraging one of many non-blockchain, distributed immutable ledger options, like Amazon’s QLDB. The cost and complexity of a blockchain solution only balances out when you have data that multiple independent parties share the burden of writing into. Financial transaction data in an open marketplace has many agents in play, and might be a good fit for a DLT. Furthermore, the decision to use blockchain (and their runtime engine application code, which we call smart contracts) as a trusted third party between multiple agents raises other issues. Since the DLT ensures compliance to a set of transactional rules, who gets to define the rules?
I sat in on a World Economic Forum working group for blockchain based supply chains, and surprisingly little time was spent discussing the technology. We largely deliberated on governance frameworks for blockchain consortiums. When something goes wrong, such as accidental transactions, who is liable and is some entity capable of rolling them back? The beauty of paper and legal contracts is that humans get to act as sanity checks against mishaps. We would never expect a consumer to pay $1 million for a car because they fat-fingered a decimal point in the wrong place. Blockchains by their nature have no such do-over capabilities, a source of their strength, but sometimes you just need to fix a glitch. These questions and more come down to governance. Do consortium members vote directly on rule changes like a fully-democratic DAO (Distributed Autonomous Organization), or does management of the smart contracts fall on a subset of representatives?
The second question to ask is: Is there a benefit for a distributed network topology (assuming question one is true)? This is a pretty technical way of saying, is there enough value in distributing your data across the world to offset the cost of doing so? Sometimes there is. For example, say you wish to create a multi-nation distributed ledger for encoding customs data, the ability for each country to manage their own pieces of the blockchain on local soil is a better proposition for small countries than hosting their data in an overseas cloud provider.
These two simple questions (“Do I need a trusted third party?” And, “Is DLT a useful topology?”) go a long way to filtering out poor use-cases for blockchain, and lets you focus on the scenarios where blockchain might be a good fit. Just don’t start with, “I need blockchain.”