All great things must first wear terrifying and monstrous masks in order to inscribe themselves on the hearts of humanity.
Cryptocurrencies have finally entered into the collective consciousness of the world. Thousands of crypto projects have been launched in the past year alone.
However, most of these are based on adapting classic business models to the new economic model. Very few are actually working on improving the underlying technology of the distributed ledger. In order to have mass adoption, that technology is in dire need of improvement.
Right now, there’s a race to develop the robust and scalable architecture of all digital money, and even more, the way ownership of resources of any kind is defined.
Almost all the teams that are doing this infrastructure work seem to fall in one of two categories: the engineers, that have experience in writing software and the academics, that are creating new building blocks.
It’s my firm conviction that any team working on something this complicated needs to be the best of both worlds: being able to profoundly understand and design the advanced algorithms and data structures involved, while also being able to implement them to the best standards of security and performance.
Finding people with even one of these qualities is rare, yet I’ve been extremely lucky to have assembled a team of highly proficient individuals exhibiting both. These are some of the finest people with which I think I’ll ever have a chance to work with.
We were brought together by our mutual passion of competitive programming, a form of sport in which coders compete to solve incredibly complex algorithmic puzzles as quickly as possible, while writing software that’s efficient in CPU and memory usage. Together we built csacademy.com, which we hope to see grow over the next 10 years.
The luck of a good background to tackle the problem
When I first heard about Bitcoin (around 2010), it sounded like a really cool idea. I was very skeptical though — seeing it as an initial implementation — which would surely be replaced by later generation solutions. It is unscalable and Proof-of-Work is a huge waste of resources that uses more electricity than most nations.
2017 came along, and no other decentralized currency had emerged to replace Bitcoin. So I ended up attending a blockchain convention to learn more about the latest developments. While there, I discovered that despite the presenters and attendees being smart and enthusiastic, I’d yet to come across a truly scalable decentralized solution.
Within a couple hours of thinking about the general problem of maintaining a decentralized ledger, I had come up with the general structure of the Blitz consensus protocol. As far as I know, this is the first decentralized ledger consensus protocol that is within a constant factor of the theoretical lower bound.
I was lucky, since a lot of things actually fell into place from my past experience; it was mostly an unconscious construction. I had worked as a software engineer several massively scalable systems. For instance, I have been a core developer for Full Tilt Poker, maintaing a system with 200,000 simultaneously connected active users, and had developed an intuition of real world software efficiency.
I was also lucky with my experience of founding, working on, and running CS Academy since my background in competitive programming helped prepare me to seamlessly working with advanced algorithms and data structures. Honestly, there are few areas of software development where one would need highly advanced algorithms and data structures. I never expected to use a persistent segment tree for any real-world problem, for instance, yet I immediately recognized that this data structure can be used to efficiently sync the state between two nodes in a network for instance.
The work so far
In the past two months we’ve focused on implementing a prototype of the Blitz protocol, and the results are incredibly promising. We’ve managed to run a global network of 32 nodes, being able to process over 13,000 transactions per second (TPS), while exceeding 30,000 TPS on a local network. For reference, Bitcoin runs at ~3 TPS and Ethereum at ~12 TPS, so we’re already processing ~1000x as many transactions as the market leaders while maintaining true decentralization.
We’re very excited to see the code grow every day, increasing stability and seeing how each new improvement is reflected in higher scalability. We hope to have the code ready in a few months for public scrutiny.
The road ahead
We’re incredibly excited to work on the Blink network, given how we’re more confident each day that we’re developing the best solution so far.
We know that there’s no easy answer to how to develop the next big cryptocurrency. It takes deep understanding of advanced algorithms and data structures, a practical sense of use cases it needs to handle, a very efficient implementation, a slick user experience, and also business acumen to actually achieve mass adoption.
It’s incredibly daunting, yet the challenges that are barely at the limit of what’s achievable are the best ones to have.