This post is part of CoinDesk’s 2019 Year in Review, a collection of 100 op-eds, interviews and takes on the state of blockchain and the world. Ben Edgington advises on Eth2 across ConsenSys. Prior to joining ConsenSys, he was Head of Engineering for Information Systems at Hitachi Europe.
My life would be much easier if I could give you an exact date when Ethereum 2.0 will go live, if I could show you a two-year committed road map or explain precisely how cross-shard transactions will preserve DeFi composability. I’m pretty sure failing to have answers on issues like these would have gotten me fired from my old, corporate job.
But I am completely confident of this: 2020 is Ethereum 2.0’s year of delivery. The signal event will be the genesis of the beacon chain in the early part of the year. With three or four production-ready clients and 500,000 ether staked, this new Proof-of-Stake chain will start completing the first and most challenging phase of Eth2’s delivery.
How can I be so sure of this yet relaxed about not having all the details nailed down? Well, that’s the magic of Ethereum’s development approach. It’s an approach I’ve learned to trust over the 18 months we have been building this. Amid all the market ups and downs and all the competitive uncertainties, this approach continues to deliver. I call it ethereum’s superpower.
Doing things the way they have always been done is not going to change the world. Ethereum’s ambition is to be world-changing. It has to be global, distributed, inclusive and empowering. Unless our development process is equally global, distributed, inclusive and empowering, then Conway’s law – that systems reflect the structures of the organizations that design them – says we’re going to fail.
So, as a developer community, we try to operate as openly as we can, encouraging participation through developer calls, GitHub issues, formal updates, informal updates and many other channels. All are welcome to participate, and many do. We nurture organic growth and are wary of any one party exerting too much control. To an extent, our approach resembles that of Linux, which has come to dominate much of the world’s computing. (Linux doesn’t have much of a roadmap either.)
This is the “bazaar” model of development described by Eric S Raymond in his classic work on open source software. But we’ve taken it further. We’re applying this approach to the development of the Eth2 protocol itself, its very design and the R&D behind it.
The idea is to inspire a broad community around a shared purpose and focus its collective energy on the task. Antoine de Saint-Exupéry put it like this, “If you want to build a ship, don’t drum up the men to gather wood, divide the work and give orders. Instead, teach them to yearn for the vast and endless sea.”
This can look a bit messy. It can be a little chaotic and inefficient. The world can see our dirty laundry, which inevitably invites criticism. A report published in February recommended more “centralization of control” over development. A more recent article identified teams working “with different agendas and different timelines” as a risk area. In response I quote Scott’s Law: Never put order in a system before you understand the structure underneath its chaos.
Ethereum’s superpower is the engagement this approach inspires. By not insisting on being too tidy, we are able to engage a huge community. The sense of a shared endeavor draws in brilliant people who we might never otherwise have found. No fewer than eight independent client teams have delivered working Proof of Stake implementations. Do we need eight implementations? Perhaps not, but the engineering insight and expertise each brings serves to hone and improve the specification way beyond what any single team could achieve, across all areas from security to performance.
Another benefit of having an open, engaged community is getting fast feedback. Our initial scaling design called for 1,024 shard chains. People outside the core protocol team were able to review this and raise concerns about future developer experience that we were able to improve with a redesign. I am convinced that in a more traditional development environment this would have been addressed too late or not at all. We were able to pivot quickly, with very minor impact compared to the benefits gained.
Central to our approach is recognizing good ideas can come from anywhere. It’s fair to say that at the start of 2019, we didn’t have a clear view on how we would layer smart contract execution on top of the shard chains. The design space is large and there were many possible directions to explore. But, true to form, a proposal emerged on a community forum that was picked up by the Quilt team at ConsenSys that is now exploring and implementing the design.
Of course, our approach is not perfect. Some inefficiencies are real. But in our world it is a mistake to optimize for efficiency over engagement. In any case, our approach doesn’t seem to have slowed us down. We are very much on track with our expected development trajectory.
The real proof of our open, organic development approach will come in the first months of 2020. We are on track to go live with ethereum 2.0’s beacon chain, and the transition from Proof-of-Work to Proof-of-Stake will be officially underway – part of the vision of ethereum since its earliest days.
That’s the foundation on which we will continue to work towards massive scalability. I can’t offer you a detailed roadmap. But the brilliance and energy of our ever-growing community makes me confident that by early 2021 we will have a platform fit for one million devs. Why not come and join this extraordinary, future-changing community?