“Why would you want every apartment in a building to have its own kitchen? How inefficient! Everyone could use a central one and save tons of space.”
So says Adam Krellenstein, CTO and Co-Founder of Symbiont and Co-Founder of Counterparty. Addressing, with a simple metaphor, one of the main claim by some developers.
Blockchains are inefficient, they say, because all of the 10,000 nodes have to replicate the same exact data. A centralized database would be far more efficient, they argue, because the resources would be limited to just one, rather than 1 x 10,000.
That’s a very narrow point, and from that narrow point they generalize by stating blockchains are inefficient. However, we think the opposite is the case. We think blockchains are the most efficient technology invented so far for one reason: it automates labor.
In the traditional financial system you don’t have just one centralized database, you have many centralized databases that keep their own records, yet don’t really “talk” to each other.
The “talking” is done by humans, or accountants, through a process of reconciliation, which can be described as:
“Reconciliation is an accounting process that uses two sets of records to ensure figures are correct and in agreement.
It confirms whether the money leaving an account matches the amount that’s been spent, ensuring the two are balanced at the end of the recording period.
The purpose of reconciliation is to provide consistency and accuracy in financial accounts.”
If we focus on this very limited aspect to make a general point, each bank has to employ many individuals to engage in the reconciliation process, with clearing houses themselves better called reconciliation houses.
This “replication,” therefore, is also very much found in the traditional system, but instead of all being done by the code itself, or the nodes, it is done by humans.
Labor is very expensive and very slow, while servers or hardware is very cheap by comparison and very fast. The average wage in these circumstances, for example, is say $50,000 a year. Estimates suggest for $50,000 a year one node can process some 7 million transactions per second, settling pretty much instantly, spendable across the globe, with ~zero ability of fraud at the network level.
If we have, say, 10,000 nodes, then to run the entire monetary system, including Visa, PayPal, central banks, commercial banks, clearing houses, and so on, costs only half a billion per year in hardware.
That’s far less than the running costs for just one of these financial institutions. If we take ancillary costs, such as the bank bailouts of 2008, then the trillions spent on that would probably pay for a century of hardware.
Blockchains, therefore, are not technically inefficient, but some have placed a political or an ideological requirement which artificially makes them inefficient for their own networks.
That requirement being that an individual must be able to run a node on their own laptop so that the network doesn’t become corporatized.
Yet the reality is that if blockchain technology does power the entire world, it would not be laptops running the network because even now no one bothers with running a node unless they are coding for the network or are running a business that relies on that network.
Specialization of labor necessarily means that the vast majority won’t care how the network works, just that it does work. They won’t care who runs the nodes either, just that they are sufficiently dispersed so that collusion can’t make up the rules.
Here is the current world as far as public blockchains are concerned. First, there’s a developers class who maintains and develops the code. They are very specialized, a niche within a niche, and even in that niche you have a super niche which you could say has sufficient expertise.
The rest have to rely on the above, and specifically have to rely on their willingness to inform the public if something happens.
Obviously in the absolute sense you don’t “have to” rely on them, you can gain the expertise yourself, just as you don’t “have to” rely on your doctor, you can become a doctor yourself.
So there is trust here, and of course there is human involvement or specialized labor, but it is dispersed trust in an open source community and you can always just not upgrade your node.
So let’s move out of the developers to the nodes. It does not matter who is running a node, a developer, a miners, a business, a university, some guy in his basement. What matters, as far as the vast majority is concerned, is that whoever is running it tells everyone else if something happens.
Because if the developers say nothing and if the node operators say nothing, then has anything really happened? If say 2 billion coins are printed, and they all say nothing, then would anyone know?
So let us suppose 2 billion coins are printed. A node operator tells the public. It’s probably headline news. 70% of nodes, however, want to continue with this 2 billion (or whatever x event). The rest are against it.
What happens now is a fork, but one party has to fork off. The forking off party has to code the new fork. Here is where the cost of running a node does matter, because if it costs say a million dollars, then very few can perform such fork, but if it costs $50,000?
And let’s qualify this cost more generally because the node itself is only a small part of it. First of all, the coder has to gather support for the fork, that costs plenty, if in nothing else then in time. Second of all, exchanges have to acknowledge it. Third, people will have to care enough to want it, and so on.
Let’s imagine all of the above happens but in a world where corporations, businesses, governments, universities, and perhaps well-off individuals, run the nodes.
To keep the network decentralized all we’d need here is one person to say something has happened, and if a sufficient percentage disagrees with it, then we need them to be able to afford forking off.
In a world where the entire financial system runs on the blockchain, can one really argue $50,000 would not be found for a node to fork off, or even $5 million?
It cost a bit more than that for Bitcoin Cash to fork off due to its nature of mining difficulty, so some miners had to spend that much to bring it to life.
Thus there is no reason to think in a world run say on ethereum – where there is ~0 costs as far as mining in such situations to get the network running – that such pocket money, when considering the scale, would not easily be available.
And if it isn’t available, then whatever the x event is not worth forking over. So even politically or ideologically this artificial inefficiency is not justified.
When we take off this political aspect, then technically there is really no limitation save for hardware costs. So if we are talking of, say, a record of documents, would there really be an argument over a fork?
The point there, and really the point of blockchains in general, including money blockchains, is to automatically verify that the rules are being followed, and if they aren’t your node tells you.
What happens after that then becomes a social matter. Because the node can of course ignore this breach of rules, and acts as if nothing happened, but if this is the only node doing so, then it ignoring the rules is irrelevant as the world moves on with the new rules.
If the human operator of the node disagrees with this rule breach, then if it isn’t a controversial breach they all disagree with it so the breach didn’t really happen. But if it is controversial, the node in effect becomes a very secondary thing.
That is a lot of words to basically say that blockchains are just a technology, a tool to automate certain functions, not a universe of machines that run governments or hospitals or whatever thing.
Humans here will still be needed, but rather than say having a room full of people doing computational functions you have a computer that does it all far more efficiently.
You still have to tell the computer what you want it to do, and if some disagree with what you tell the computer, then that becomes a social matter. And when it becomes a social matter, then $50,000 is really not even pocket change.
But it’s a nice argument that when taken on its own sounds persuasive because you can say you don’t need one 50k, you need one thousand 50ks.
Yet its a very narrow argument that completely ignores practical reality. Including the reality that there are probably 100 million bitcoin users yet just 10,000 nodes.
Or the reality that we have to trust these node operators to make the right decision if one does not want to fork off, and as we have seen with the blocksize debate that matter of trust is very much a social one which is unlikely to be any different if it is 10,000 individuals or 10,000 businesses.
Or the reality that Snowden risked his life to blow the whistle on global surveillance, but nothing could be really done. Yet if it was blockchain related, the barrier to such whistleblowing would be very low, if not almost 0, and people could have just forked off.
Are we really saying some $50,000 would have not been found for the fork? Or are we saying that we need no trust at all, including the trust of these 10,000 operators who have to tell us something has happened? Because if we’re saying the latter then we’re saying nothing as that is how it currently works.
So, if some are arguing that we can not have the many benefits of blockchain technology, including peer to peer money or tokenized art, because it costs a little bit to run a node, then the most apt description for them would be luddites.
Ethereum of course is doing sharding which will make it even more efficient at the hardware level, but the network could have easily handled 10 million transactions even now. Just as it could handle far more if this idea that businesses are not made of individuals or that individuals can’t get together to fork $50,000 was not there.
Yet it is in some corners, but speculative beliefs of some individuals have no bearings on technological facts. So it is perhaps for each to decide for themselves just how efficient is an immutable record in a digital network that allows for wide global participation.
Especially when we consider historical records, or when we consider transparency, verification, and so on, as well as its code nature which automates plenty, but of course not everything. Because specialized labor would still be needed, but it would be used far more efficiently.