First published on VOICE in November 2020 -> Check it out here.
“Software is eating the world.”
The now infamous quote verbalised how technology companies were disrupting the traditional players by moving more and more products and services online. Technology had reached a point where software and the tools required to build, were available and affordable.
Technology had lowered the barrier of entry for software startups to enter verticals which were previously not feasible. Software was good enough to challenge the well-established incumbents and was ready to take a stranglehold on the global economy.
As we shift to the present day, close to ten years from the original piece in the Wall Street Journal, software has unquestionably begun eating the world as predicted. This trend accelerated in 2020 as the pandemic poured fuel on what was previously a slow-burning fire. Digital has exploded as stock prices of big tech are once again approaching all-time highs. At this point in history, it isn’t easy to see such a trend abating anytime soon.
As a long time Information Technology Engineer and Strategist, I have seen this theme repeating itself over and over.
In 2013, while working for an online hotel bookings company, I ran across a small company, Arista Networks, who were differentiating through software known as EOS (not the EOS Blockchain). The Extensible Operating System stationed a database at the centre of the architecture, maintaining the locally derived state which could reload to hardware at any time. Processes on the device, could fail, restart or upgrade with virtually zero impact to network availability and performance. Such a change was inconceivable. Up until this point, upgrades or failures invariably resulted in downtime and nights spent at the office burning the midnight oil. The hardware was no longer the differentiator; it was software improving life for network engineers everywhere.
In 2014, working in the infrastructure space, I learned of a software company, Nutanix, who sold a product which eventually became Software-Defined Storage (SDS) or HyperConverged Infrastructure (HCI). Anyone working in IT understands the quintessential nature of storage to a business. Losing data is one of the most challenging and time-consuming problems to resolve. So much so, that before the invention of SDS, storage was the domain of reassuringly expensive hardware and nothing else would ever qualify to run mission-critical workloads.
Fast forward just a few years, the SDS market is growing at approximately 25% CAGR (2020-2025). The flexibility of software-defined storage will continue to fuel growth. Software solutions enable more convenient and affordable access to storage through a unified interface, driving down complexity and simplifying operating environments.
Software now underpins critical systems everywhere, and previous risks are now considered an acceptable practice.
As we move forward into 2021, blockchain technology has the potential to do what networking and storage software did in the previous decade. Software solutions overcame complexity, simplifying operating environments. Blockchain technology or blockchain software can achieve something similar in the coming years.
It’s common to see people on Twitter arguing the validity of blockchain in a centralised environment. “Why would you run a blockchain when you can use a standard database?”. “Blockchains owned by one company make no sense at all and have no value”. I could go on and on, but you get the picture.
For someone who has worked with enterprise applications for around 20 years, I understand the sentiment. It’s hard for people to see the benefits when they are not blatantly visible. Every day IT people run into problems which blockchain infrastructure would quickly solve.
Let’s do a thought experiment. Assume you’re an IT Architect and I’m a new application owner. I pose what sounds like a simple question:
“Where should I deploy my new application database?”
As the experienced IT Architect, you go straight into question mode:
- Which data centre or cloud?
- What database management system? MSSQL, Oracle, MSSQL?
- Does the database need a license?
- How does back up and recover work?
- Disaster recovery (DR)?
- High availability (HA)?
- What happens when it stops?
- Business continuity process (BCP)?
- Who’s going to look after it, pay for it, care for it?
- What about security?
- How to ensure consistency and integrity? The transaction logs…?
- Why are we only thinking about this now…?
A straightforward question spawns even more. Solving these challenges can be a lengthy endeavour and often take weeks, if not months.
Let’s think back to the blockchain as private infrastructure. How does it change the equation? Many of these questions are auto answered when deploying to a well-designed chain. From the developers perspective, DR, BCP and HA are not so relevant. Blockchains are inherently secure, and with robust code audits, the security risk for applications is relatively low. Internally decentralising your private chain between clouds and datacentres helps to avoid any data locality or network partitioning issues.
Now think forward to the power of software and the ability to upgrade the infrastructure with almost zero disruption to accommodate additional performance and scalability. It’s common for software to improve over time. Take, for example, the 12x speed increase between EOSIO 1.0 and 2.0. Or the transactional throughput improvements projected for Ethereum 2.0.
Private blockchain software running within a business is not intended for direct customer access.
Blockchain, when viewed as software infrastructure, is about improving internal efficiency and driving effective business process—uplifting security and standardising companies software delivery lifecycles, bringing much-needed consistency, auditability and determinism.
The power of software is remarkable. When talking of blockchain software, it’s only just getting started.