Well, 2018 was quite a year for the Polkadot project, its key instigator the Web3 Foundation and its engineering home Parity Technologies. With the festive season fast approaching, I’d like to don my cap of “project founder” and give you a quick recap of what we’ve accomplished during that time, where things stand now and what we’re looking forward to in the future.
The Ghost of Christmas Past
Happily, we are not in a position to lament a lack of progress. Indeed the project has been progressing at breakneck speed: a necessity given the tight timeline to which we committed ourselves last year.
Statistics being the greatest lies of all notwithstanding, here are a few numbers: The first early commits went into the Polkadot codebase on November 7th last year (though my first commit wasn’t merged until the second week of 2018), so the project has been under development for almost exactly 13 months. In that time, we have authored (and refactored, polished and rewritten) around 68,000 lines of core code; if you include all the other key components that we wrote like WebAssembly, RPC, cryptographic datastructures, the transaction pool, consensus, networking and Jaco Greeff’s Polkadot.js, then you’re looking at more like 100,000 lines. The core code was introduced with 1,381 separate (squashed) commits, each reviewed by approximately an additional one-and-a-half of the author’s peers before making its way into the codebase.
This code has given rise to our first test net, launched in Spring, known simply as “PoC-1” (proof-of-concept one), which demonstrated all our basic data structures, our groundbreaking WebAssembly-based state-transition execution engine and live governance logic allowing for dynamic on-chain upgradability.
To demonstrate the awesomeness of on-chain upgradability, a few months later we dynamically upgraded the PoC-1 test net to a shiny new PoC-2 test net (“Krumme Lanke”). This upgrade (which happened automatically on the network’s nodes) provided basic support for parachains and upgraded the proof-of-stake consensus algorithm by adding slashing and rewards. Despite initially being voted down by Web3’s own Jack Platts, the proposal passed at a second reading and the actual upgrade itself happened signalling, as far as I know, a world first. As of writing, 31 community validators maintain Krumme Lanke, making it substantially more decentralised than some “blockchains” that hold real value!
We launched a third test net in Autumn, “BBQ Birch”, which was an initial demonstration of our brand new smart-contract runtime module. Taking loose inspiration from “P-Wasm”, our homegrown WebAssembly extension to Ethereum, it is a smart-contract blockchain that allows you to write your smart contracts in any language that compiles to WebAssembly.
To complement this, we also began a research and development project for a new Rust-based EDSL codenamed Fleetwood. Rather than writing a language from the ground-up like many projects (not least Solidity), we instead leveraged the power of Rust and LLVM to quickly create a mature project for building safe, secure, small and speedy smart contracts from readable, testable, often provably correct code. This innovation has already been picked up on by other teams, as Commonwealth Labs announced that they would be launching their own governable smart-contract blockchain Edgeware, based upon some of the early work we did on the concept.
While the technical work was ongoing, our research and community building was also happening. Our top researcher, Al, was busy inventing “Al’s Finality Gadget”, later renamed to GRANDPA. This is our novel consensus algorithm that coordinates a bunch of mostly honest participants so that they can make binding agreements on the content and ordering of blocks of transactions. It’s particularly great because it’s provably secure and combines instant-finality under good conditions with eventual finality under adverse conditions in an elegant and adaptive way that other consensus algorithms do not. This lets us have a populous set of validators (1,000 is our target) without sacrificing transaction latency.
In addition to the consensus algorithm, our researchers have been busy finalising the cryptographic palette with which the Polkadot protocol will be painted and writing up protocol specifications, formalisations and proofs to ensure a healthy multi-client ecosystem.
Over the year the Web3 Foundation has been happy to host two international workshops concerning technologies highly relevant to Polkadot and found them received excellently. We culminated the year with the Web3 Summit, hosted in Autumn, which brought together the wider decentralised web and crypto ecosystem into a single space and included the inaugural Dotcon-0 summit.
Organised and subsidised by the Web3 Foundation, it freed attendees from the commercial forces that typically drive large conferences and brought together like-minded speakers and participants to create an unparalleled dialog. Amongst other things, it featured a show-down between myself and Ethereum-Vlad over on-chain governance that resulted in a room packed so tight there was barely space to swing a crypto-kitty. It was broadly reported to me by the participants as one of, if not the, best events of the year.
As of writing, the combined team working on Polkadot and its various core technologies is at around 100 of the top people in the space. The project’s financials are secure with our estimated runway stretching into the years at our present growth rate. (Both Parity Technologies and the Web3 Foundation are hiring: please see their job boards if you’re interested!)
The wider Polkadot community is ballooning, with numerous projects spanning the globe beginning to explore our stack and many commencing building in earnest. To name just a few of the great teams who are building with us, there is AdEx Network in Bulgaria, ChainX and 万企融 in China, Commonwealth, Agoric, C3 and ChainLink in the US, Katallassos in Switzerland, Ocean, EWF and Asure Network in Germany, UniqX in the UK, iExec in France, Blink in Romania and Polkascan in The Netherlands.
This month will see two major releases: first, the 1.0 beta of our third generation blockchain technology stack, Substrate. With this, you’ll be able to quickly develop, test and deploy a blockchain, safe in the knowledge that, should you wish, you can upgrade it, switch out consensus algorithm and even connect it into the Polkadot network as a parachain or bridged solo-chain when the time comes. If you want to know more, check out the Substrate site.
Second, the release of our third major Polkadot milestone: the “Alexander” test net. This will feature our audit-ready GRANDPA finalisation algorithm, an overhaul to the cryptography and further improved governance logic including lock-voting and delayed-enactment. Our aim is to make this the final test net launch prior to main net, with any further test nets migrated to via the on-chain upgrade mechanism.
With so much done, you might be forgiven for thinking the launch is nigh. In fact, there is one more key milestone to reach: ICMP or, to the uninitiated, Inter-Chain Message Passing. Our research and design is nearing completion and development is scheduled to happen over the first three months of 2019, with a test net incorporating it scheduled to be launched in April. Simultaneously, we will be finalising our “nominated proof-of-stake” scheme and building in parachain consensus into Substrate, allowing Substrate chains to plug in to the global blockchain network that is Polkadot.
After this is done and the key features are in, there’s going to be a period of around six months where we make ourselves (and, we hope, you) comfortable that we’re ready to launch Polkadot 1.0.
With the launch in our sights, we also need to address the final 20% of Polkadot tokens that need to be distributed. I have been asked on multiple occasions if and when any second public sale of genesis DOT allocation might happen, and I’ll tell you now that we do plan to sell a further 10% in a widely open sale format and that once we’ve completed the legal groundwork for this to happen, the Web3 Foundation will set out the plan and timeline.
While scaling up for the sake of it is rarely sensible (demonstrated by those who are licking their wounds as crypto-winter is setting in) we are very much still in the hiring mood. Both Parity Technologies and the Web3 Foundation are looking to roughly double their respective employee counts over 2019, adding dozens of the best and the brightest coders, communicators and operatives to the workforces next year to help make magic happen. If you think that could be you, get in touch!
With that, I wish you a happy, relaxing and peaceful next few weeks and to raise a glass of sherry, eggnog, sake or tea to 2019 and all we hope it can bring.
Gav (Polkadot Founder)