On Bitcoin, Part 4:
At a technological level it is easy to get excited about Bitcoin and the ecosystem around it. The financial dynamics of Bitcoin mean that its infrastructure is largely paying, incentivising and building itself. From the perspective of a systems architect it is an infrastructure that delivers eternal, inviolable trust on demand. Cost is based on a pay per use model at a fraction of the cost of any other system or public blockchain that tries to deliver the same kind of value. Scale is provided by the 2nd layer protocols, such as Lightning and æternity.
Of these, æternity is perhaps the most underestimated. Its nodes are based on Erlang, a programming language originally developed for the telecommunication sector with a focus on concurrency, reliability and scalability. It also has an excellent security profile. Hyperchains allow running æternity blockchain networks as side chains to Bitcoin with guarantees and trust provided by Bitcoin itself.
The technology of æternity base guarantees robustness and performance to serve virtually any use case: WhatsApp scaled to its current size thanks to Erlang. Wherever large numbers of users or services must be able to communicate with each other reliably, quickly, and without downtime, Erlang is a very solid choice.
The third component in the magic mixture for truly decentralised infrastructures is the Interplanetary File System (IPFS) — a decentralised, Content Addressable Storage (CAS) network. Like æternity nodes, IPFS nodes can attach to the public network, or etablish a private network of their own. Store anything into IPFS on any node, and all nodes on the network will be able to access that information. IPFS takes care to distribute the data to the nodes that require it.
The combination of a full Bitcoin node with IPFS and Lightning/æternity can run on a Raspberry Pi with a cheap consumer grade hard disk. After sycnchronising against the network it is fully capable of verifying all data for itself — or any other node on the network. The window in which data can potentially be compromised is very short, between minutes and hours, based on the setup, and after it has passed it is virtually impossible to tamper with any data undetected.
Keeping random number of nodes with different connectivity, bandwidth and hardware synchronised is a hard software engineering problem. Especially if those nodes are under the full control of the individual users. Making sure their data can be trusted is even harder.
This “BILA” (Bitcoin, IPFS, Lightning/Æternity) stack is a universally applicable solution to these challenges with a security and trust level that is above that of even the largest internet companies. It is the decentralisation equivalent of the “LAMP” (Linux, Apache, MySQL, PHP/Perl/Python) stack that largely enabled today’s web.
Software freedom for consumers?
The BILA stack also provides all the required elements for solving the challenge of delivering consumer grade software and solutions to billions of people that deliver software freedom in a decentralised, privacy and security oriented way that is also financially sound. Because something this important cannot depend on charity. It is structurally unsound and prone to collapse as soon as key people are no longer willing to exploit themselves.
Building, maintaining, supporting software for consumers is extremely hard. It needs professionals who deserve to be able to build lives, start families, have children. For this, they need sufficient security to not fear for the future of their kids each day. Without a solid economic basis, these people cannot afford to work on this except as a hobby in whatever spare time they may be able to take away from their kids.
There isn’t a consumer oriented software freedom company in the world that has managed to achieve this at scale. Canonical might come closest, but that’s mostly a marketing vehicle to drive demand for their consultancy business, hence the joke that “Canonical is a consulting company with a GNU/Linux distribution attached.” The reasons have a lot to do with the cost of marketing, sales and support staff in a consumer market. To fund these infrastructures, margins need to be high.
The BILA stack has all the required capabilities to build commercial incentives and exchange into the fabric of the solutions themselves. What we see today from projects like the “Basic Attention Token” is a pretty simplistic start, but it gives the Brave browser an economic model that provides an incentive to its users while allowing the company to keep working on a browser for everyone with a focus on privacy and the decentralised web.
Security solutions could employ proof of update as an incentive for their participants, there can be proof of contribution, marketing, supporting your neighbour, writing documentation all the way to “can’t contribute in kind right now, happy to pay for my tokens” as a model of engaging and growing its community while keeping the people building the techology on robust ground. Don’t like traditional company setups? Make your users your “shareholders” and let them vote on the CEO each year.
There is a whole dimension of innovation for software freedom to unlock which can give it the competitive edge and viral scaling to build all the critical functions of a future internet that serves everyone with control, privacy and security.
But what about INSERT PROJECT HERE?
Undoubtedly there are a lot of smart people working on a lot of exciting technologies. And many of them have rational reasons why they believe to be better than Bitcoin. But there are good reasons to be sceptical whether they will actually deliver more value than the BILA stack.
Engineers are optimists, otherwise they would have chosen a different profession. And almost any engineer — especially engineers at the beginning of their career — believe they can do something better. “How hard can it be?” are famous last words in our profession. As a result they would rather build their own than use what is already there, and proven to work. This is known as the “Not Invented Here” syndrome.
What people easily forget in these situations is that the existing, working solution has a head start. That head start translates into people having invested time, money, brain space into the existing solution. Unless what you come up with is radically different and at least ten times better, these people are unlikely to switch over to the new solution. It happens, but it is rare.
To reach this point, the new solution will try to layer on more features and capabilities in its race to outperform the proven. Because doing more is far easier than doing the same thing fundamentally better. But more features result in higher complexity, greater attack surface, and more unforeseen results.
The BILA stack can do everything — and often more — that its proposed alternatives can do. There is nothing on the horizon that does 10x more, or is 10x better. In fact, many of the proposed alternatives are far more complex and thus more fragile. The design principle of “one layer for one function, which it does well” has proven itself over the past decades to build robust, scalable and secure systems. And while IPFS is also used by other blockchain solutions, the ecosystem of a BILA stack is at least as large, often larger, than that of its alternatives.
So while architectural decisions always involve a lot of detail and consideration and there may be particular reasons to prefer one stack over another, a BILA stack seems like the sane default choice for at least 80% of the use cases.
This article is part four of a series of six articles exploring my personal take on Bitcoin, including its relevance, technical properties, environmental impact, social relevance and significance for software freedom. Articles will be published every couple of days. Here is a list of what has been published so far:
- On Bitcoin, Part 1: Can Software Freedom succeed without Bitcoin?
- On Bitcoin, Part 2: Centralised Trust drives Centralisation
- On Bitcoin, Part 3: Money, banks, and other financial intermediaries
- On Bitcoin, Part 4: New Opportunities (this article)
- On Bitcoin, Part 5: The boiling oceans
- On Bitcoin, Part 6: The (mood) swings
- On Bitcoin, Wrapping Up: Where next?
Links to follow-on articles will be added here as the series progresses.
Follow me to be notified when the next one comes out.