Ethereum, the grandaddy of blockchain platforms, is making big changes to its underlying code. But unfortunately, the platform, which is known to support transparency and openness, is being built by coders in closed-door session.
That rankles some advocates of the platform, as well as reporters trying to cover it. From the start, Ethereum's core developers met to build out the blockchain-based network—which aims to create a global, decentralized "world computer"— in scheduled, public meetings. But at the fourth annual Devcon meeting in early November, developers began to meet behind closed door. Apparently, the idea was to avoid provoking controversy and Twitter trolling, say sources who attended today's meeting.
That closed-door policy is likely to continue indefinitely, the sources say.
It’s no secret that Ethereum, which is at the bleeding edge of blockchain development, is having growing pains. The demand for dapps, and corresponding need for faster transaction speeds, means the platform will need to scale rapidly. But upgrading the legacy system, or moving to a new one, causes disagreement. Engineers, like most groups of highly educated experts, can be a contentious—and sensitive—lot.
In an email responding to Decrypt's request to join the meeting, Ethereum developer and meeting organizer, Lane Rettig said: “The reality is that some of the core folks don't feel comfortable speaking totally candidly when the press is present. I do think that we need to respect that desire and create a safe space for these discussions.”
It's not just the press that wants in; so do other interested parties. Indeed, even Ethereum CEO, Vitalik Buterin is said to be “uncomfortable with institutional private calls” as well as the private forum. Other proponents of complete transparency, who were vocal in last week’s (open) meeting, include Greg Colvin, a core developer of the Ethereum Virtual Machine, and Afri Schoedon, release manager for Parity, which is working with Ethereum.
So what went on behind closed doors today? It appears that the developers are steaming ahead with a sweeping upgrade scheduled to start rolling out, in phases, this summer. But sources who relayed today's minutes spoke cautiously about a number of technical hurdles that must be addressed in the coming months.
The meeting was hardly contentious. For instance, among the most "controversial" of the proposals at the heart of Ethereum 1x: the idea of introducing storage fees, or “rent,” for smart contracts. Such charges would curb pressure on the platform and to make it more efficient, proponents argued.
The rent idea was pitched as a stopgap measure until "sharding" is implemented. (Sharding increases the amount of resources a database can handle by splitting up the data.) But currently, demand for dapps and the related, ever-increasing numbers of transactions, means that a mass of data is weighing the platform down, causing "unbounded state growth." And that means that new computers attempting to join the network are finding it harder to download and maintain the Ethereum blockchain.
A core developer, Alexey Akhunov, heads up the working group that's advancing the rent proposal.
Later, relaying some of the key points of the meeting on Twitter, Rettig said developers made "an impassioned plea for us to save the network from unbounded state growth.” Left unchecked, there's a possibility that transactions could dramatically increase (by 10x some say) with catastrophic results. A tenfold traffic increase, Rettig said, “would cause it to explode and cause the network to shrink to a centralized core of nodes.”
Various implementations of so-called “state rent” concepts will now be tested, and there was agreement on the need for further community engagement and buy-in before moving forward on this, sources said.
Also on the agenda today was a discussion of replacing the Ethereum "virtual machine" with e-WASM, an Ethereum version of Web Assembly, an execution environment for the web. This would enable developers to code in multiple programming languages, instead of having to rely on Solidity, which is how developers currently write Ethereum code.
However, according to sources at the meeting, little progress was made on that today due to questions surrounding the best approach to minimize disruption. Until that’s decided, the difficulties of updating the Ethereum blockchain using the current system remain, together with the risk of consensus failure.
Finally, discussion also centered on the potential of “chain pruning,” removing superfluous data to free up space. Though that's a no-brainer, the danger lies in users making assumptions about what data users can access.
Testing times ahead
Any proposed changes to the protocol must first be tested in a simulation. So, the group working in this area was pleased to report that Whiteblock, a commercial company, is due to release an open-source version of its software. This will provide an environment with a network of nodes where updates can be tested before it’s decided whether changes are implemented.
According to Rettig’s account, on Twitter, the improvements to Ethereum will occur in a phased manner, rather than in one massive upgrade. (The introduction of state-rent, for instance, itself will occur over six phases.) However, he was careful to balance this with the promise of distinct deadlines. “While the June target is somewhat arbitrary, we do want a sense of urgency. We will meet in January and discuss dates again at that point, but I'm all for deadlines.”
In late January, some of the developer tribe will convene again around the Stanford blockchain conference, in Palo Alto, CA. After that meeting, updates will be issued, sources said, but, in accordance with the Chatham House Rule, those speaking will not be named. The meeting will likely be a closed-door session.