f(x): The road ahead
Pundi X has always been a community project. We have lived the mission of making sure the community comes first and we are constantly learning from discussions on social media and in real-life meetings.
Though I must admit there is a lot of noise, there are also gems in those discussions. One is a question I found constantly lingering in my head: “Has blockchain changed the world as the Internet did in the ’90s, and the automobile in the ‘20s?”. Many might argue that it has — it has given rise to so many projects with so much potential, such as ours, if I may say so. But can blockchain ever be what the Internet was to the world?
Can blockchain be what the internet was?
The advent of Internet totally changed every layer of the world. The Internet created a communication layer so robust that TCP/IP became the standard, and companies like Cisco and IBM built the pipelines and the machines that ran these protocols. The Internet also created an information mechanism so fast that Amazon could essentially wipe out all the brick-and-mortar bookstores, as Google and Facebook have done to newspapers. With the Internet, the behemoths of Apple, Google and Facebook came to rule over traditional companies. Can blockchain be the next Internet?
I see the blockchain revolution coming in three phrases. Bitcoin showed the world what digital currency is. Ethereum showed us how to build decentralized assets, essentially the thousands of altcoins we know. The third phase is what so many blockchain companies are trying to do now: 1) to bring the performance of blockchain to a whole new level (transaction speed, throughput, sharding etc; and 2) to change the course of traditional industries — including the Internet and others.
Any new technology that wishes to change the old has to have a 10X improvement. Whether it’s ten times faster, or ten times cheaper. Floppy discs, VHS, optic cables have proven the 10X equation in their attempt to change the standard.
10X for speed
Visa can run 7,000–20,000 transactions-per-second (“TPS”). Any blockchain that offers small multiples of speed improvement is unlikely to displaced a tried-and-tested system like Visa. A 10X increase means 200,000 TPS has to be achieved for any company to revamp a legacy system into blockchain. There are several blockchains out there that are trying to do this; in fact, many claim a significant improvement. Many blockchains are claiming a 10X improvement over Visa, at least on paper.
If we launch a blockchain, we have to make sure we are comparable if not faster, at 10X it is at least 200,000 TPS, not just on paper, but in real application.
Can we do much more than 200,000 TPS? Let’s analyze: Sharding is a process of dividing a global network into pieces of a local network. Each local network would then take charge of two-thirds consensus so that a particular transaction is verified in the local network and then broadcast to the global network. This is one of the best methods blockchain companies are working on to increase speed. We are one of them and we believe a 10X increase to current offerings is possible. Why? Because sharding depends heavily on the availability of nodes. Confirmation processes increase by an order of magnitude when you increase node counts. If a blockchain has 21 nodes and takes 1 second to confirm, then 210 nodes (a ten times increase in node numbers) will take much more than 10 seconds to verify. Unless a mathematician has proven that there is a better way than the Byzantine General Problem, it is safe to assume that whenever you increase your nodes, confirmation time slows down significantly. Therefore, to Ethereum’s defence, even though Ethereum has a 20 TPS speed, it is working with many more nodes than other blockchains. A 20 TPS solution with 20,000 nodes is better than a 200 TPS solutions with only 21 nodes.
Let’s take a hypothetical: assume all blockchain companies can only do, say, 1 TPS. If each company breaks their network into two, all of these companies can do 2 TPS (1 TPS for one network). Assume we need at least 20 nodes each in a local network, thus for all the companies to achieve 2 TPS they need to have at least 40 nodes. We will be able to speed up the number of transactions by a big multiple because of the XPOS nodes we have. If we want to make a speedy transaction in an imaginary city called City of Z, we need a lot of devices to shard and make the transaction really fast. We can do it because we have a lot of nodes across the streets of City of Z, one for every store that has an XPOS. Can a blockchain which rents servers in a server farm in this city have more nodes and devices than us? The answer is a resounding “no”.
If we were to launch a blockchain mainnet it has to be at 10X of what other mainnets can provide.
10X for scalability
Scalability in a restaurant means how fast can you serve your meals, the faster you can scale, the more business you can have. Therefore, companies like McDonald’s spend a lot of effort shortening the time between ordering and checkout to serve its customers. Scalability in blockchain is similar: it depends on the code (how fast can the burgers be flipped) and also nodes (how many cashiers can confirm the order). So whose code is the best? We will only know when proven. And what about nodes? The blockchain with the largest nodes will prevail. Currently Ethereum has the most nodes, but maybe not for long.
With our plan to roll out 100,000 XPOS in three years, we will be able to scale up transaction numbers significantly as the number of XPOS devices increases.
10X for consensus
Consensus is a big deal. As we know from real-life politics, the bigger the crowd, the slower the consensus. If a smaller crowd can decide for the bigger crowd, like in a parliament, then consensus can be speeded up. But how do we choose the wisdom of the smaller crowd?
A consensus process cannot always be in the select hands of a few. Of all the 100,000 XPOS we have in City of Z, we will randomly choose, say, 1% of the nodes: a set of random XPOS agree on the two-third consensus. Very importantly, the consensus process has to break geographic boundaries. If a blockchain has over 10,000 nodes they are also in a good position to reach consensus easily and globally like Ethereum. But there is a catch. The nodes cannot collude. An effective way to prevent collusion is to bring in nodes from different locations (or via a different autonomous system when a person does a tracert / traceroute command). We believe Ethereum is so far the only blockchain with a real global reach of nodes, the rest are centralized in a local geography which makes consensus less ideal. With a diverse area of large volume of nodes, it will create speed with real decentralization.
10X for openness
The experience of working with W3C taught me about openness. The greatest strength about W3C was not about speed, but its openness. It brought the biggest technology companies to the table. Consensus was reached because of openness, and with it W3C successfully made HTML5 and others the underlying technologies that powered everything.
Blockchain is an open platform and decentralized. With this in mind, we are building the infrastructure to serve all the public chains. For example, developers can submit their wallet app or payment app for inclusion on the Pundi X open platform. XPOS retailers can download the update and expand their crypto payment offering to their consumers. Another hypothetical example is that the mayor in City of Z wants to implement a smart ticketing system for the city. What the developer team needs to do is to upload the smart contract into the blockchain and get merchants in City of Z to download the smart contract and voila the whole city now has a smart ticketing system.
Anything and everything should be on the blockchain, perhaps even the code for the blockchain.
Every piece of disruptive technology has to present a total shift in paradigm, and while blockchain has shown the doors of that paradigm, everyday people will need to see a true benefit to alter their deep-rooted behavior.
We are not there yet, but we hope to be part of the revolution.