Back in July, Joseph Lubin spoke at the RISE conference in Hong Kong. It was widely reported at the time that Lubin said that because Ethereum's "layer one" protocol was established, 2018 would be the year of layer two, "where we will see real scalability."
The statement seemed a bit off, as it's widely understood that blockchain is still in its infancy and issues with scalability are not solvable with layer two alone. Of course, Joe Lubin doesn't speak for Ethereum – no one does: It's a collaborative project, full of disagreements. Still, judging by the wide reach of his statement, a lot of people took his word as truth.
In any case, over the weekend Vitalik Buterin weighed in on the conversation in a blog post, offering some sage words about the need for continued layer one protocol updates as well as the hazards associated with universalized protocol changes, namely, the potential for centralization, political instability, and stagnation of development.
He pointed to Moxie Marlinspike's defense of Signal's centralized operations as an entry point to the conversation about the difficulty of sustaining competitive technological progress in a decentralized ecosystem. Though he was careful in voicing some healthy skepticism about Marlinspike's incentives, he quoted portions of Marlinspike's essay that argue that due to decentralization, the internet's development has stagnated since the 90s. Buterin quotes Marlinspike:
"It's undeniable that once you federate your protocol, it becomes very difficult to make changes. And right now, at the application level, things that stand still don't fare very well in a world where the ecosystem is moving … So long as federation means stasis while centralization means movement, federated protocols are going to have trouble existing in a software climate that demands movement as it does today."
Buterin argues that a significant chunk of blockchain technological developments are platform-specific and do not require layer one solutions; attempting to make layer one changes for platform-specific needs is inefficient and to be avoided if possible. He points to last year's Byzantium hard fork, which included changes to allow for more affordable zk-SNARK-utilizing applications. However, less than a year later, these changes are already outdated and would require another hard fork to update. The switch from the Ethereum Virtual Machine (EVM) to eWASM should reduce much of this inefficiency and related need for updates, and so serves as a good example of the kind of layer one protocol updates that are still necessary.
However, another reason he favors layer two solutions when possible is that "sometimes there are inevitable tradeoffs, with no single globally optimal solution." For some such instances, he points to Justin Drake's concept of layer two execution engines. A layer two execution engine would allow for the continued default function of the base layer protocol. Only in instances where a contract's function was not possible through the layer one protocol would the layer two execution engine be triggered.
Buterin states that layer two execution engines are already possible: "Different users can use different execution engines, and one can switch from one execution engine to any other, or to the base protocol, fairly quickly." So long as the underlying protocol allows users to quickly and efficiently access data stored on the blockchain, and as long as the underlying virtual machine can (for the most part) solve any reasonable computation problem (Turing-completeness), and as long as it has the most basic sharding functions – layer two solutions can take care of the rest. Though, he also adds that layer one solutions are also desirable, if not outright necessary, to improve transaction processing speed.
In the meantime, all of those layer one requirements are works in progress. While EVM is Turing-complete, its inefficiency has precipitated the ongoing march toward eWASM. As it stands, problems with data availability have created issues with plasma research and implementation. And, though sharding may technically be possible as is, Buterin argues that improvements can and should easily be made to the layer one protocol to better enable it. In other words, base layer protocol changes should be approached with caution, but there are a number of things that still need a lot of work. And, even once those changes are made, occasional updates will still be required as technology improves. Just hopefully not too many, or too often.