âWe donât want to reinvent the wheel when building [ethereum] 2.0.â
Speaking to the complementary efforts of developers working on two separate upgrades to the ethereum blockchain â one dubbed ethereum 2.0 and the other dubbed ethereum 1x â Raul Jordan insists upgrades to be included in ethereum 1x on a shorter time horizon would have benefits to ongoing research for ethereum 2.0.
Jordan is the co-lead for one of eight different developer teams currently building software clients for ethereum 2.0.
(As background, clients are software implementations usually written in differing programming languages that users deploy to connect to and participate in the ethereum network.)
Maintaining that the âincremental enhancementsâ being proposed within ethereum 1x donât affect the blockchainâs long-term roadmap, Jordan told CoinDesk:
âI think both groups are fairly orthogonal but we must at least be aware of what each is implementing.â
Presently, the technical guidelines also called specifications for both upgrades are still very much in the works.
Having been discussed in earnest among ethereum developers only in the last couple of weeks, ethereum 1x is intended to be an intermediary upgrade that focuses on enhancements to the current ethereum network.
Ethereum 2.0, on the other hand, features a more ambitious agenda that dates back to 2014 and consists of fundamental changes to the blockchain platform.
Known in its early days under project name âSerenity,â the current specifications for ethereum 2.0 can be summarized as a combination of three main components:
And while one of these components â namely ethereumâs implementation of WASM â has the potential of being tested in the earlier roadmap for ethereum 1x, the majority of the work to build out ethereum 2.0 is still ongoing as a separate project.
And that work is being carried out by eight different teams spread out across the globe.
Based in Toronto, ChainSafe Systems is a blockchain research and development startup offering consulting services to a number of different ethereum-based projects including Shyft, Bunz, Aion, and Polymath.
Motivated by a desire to âcontribute to something bigger,â project lead at ChainSafe Mikerah Quintyne-Collins told CoinDesk:
âFor me, developing ethereum 2.0 was my way to make a mark on the future of the internet.â
Called Lodestar, Collins and her team are currently building an ethereum 2.0 client written in Javascript â the primary programming language for web development.
Privately funded and seeking additional support through the Ethereum Foundation grant program, Lodestar according to Collins is envisioned to âbring a whole host of web developers to the [ethereum] ecosystem.â
âAll of these programming languages have their own communities. The whole community might not want to contribute but theyâre big enough that parts of it will want to contribute and build on top of ethereum,â said Collins.
Even suspecting development work to help other blockchain platforms progress, Collins emphasized that in her view ethereum 2.0 is not about ensuring ethereumâs future as âthe main blockchain,â saying:
âItâs not about whoâs going to be the next big thing. Itâs more about trying to make these systems work. Rushing it just so we can catch up with another supposed ethereum killer defeats the purpose of working on this.â
âOur goal is to bring enterprises to the mainnet. We want to do that by creating software that is easier for enterprises to adopt.â
Thatâs Faisal Khan, strategy and business development head for blockchain protocol engineering group, PegaSys.
Fully supported by Consensys â the self-proclaimed âventure production studioâ of ethereum headed by ethereum co-founder Joseph Lubin â PegaSys is building out ethereum 2.0 specifications for an existing ethereum Java client called Pantheon.
Unveiled recently at a gathering of ethereum developers in Prague, Pantheon uses an open-source software license called Apache 2.0 to enable businesses building products on top of the ethereum platform to monetize their intellectual property.
Speaking to CoinDesk, Khan highlighted that extending support for ethereum 2.0 specifications meant close collaboration with Ethereum Foundation researchers and other client development teams.
âThereâs a lot of touch points. Thereâs a weekly call. Thereâs a research forum, ETH Research. Thereâs a Gitter channel. The communication is pretty frequent. Obviously, thereâs crypto Twitter. Itâs pretty rich the conversation between any of the [ethereum] 2.0 teams and the Foundation,â said Khan.
Adding that, ethereum 2.0 would kick-start a new âcycle of network effects, dapp development and user growthâ on the platform, Khan reiterated that the biggest need at present for the project was âmore people involved.â
Launched last October, Harmony is ethereumâs original Java client formerly maintained by a group of independent developers called Ether Camp.
Now called simply the Harmony team, these group of developers were recently awarded $90,000 through the Ethereum Foundation grants program to build out specifications for ethereum 2.0.
Subsidized by the Ethereum Foundation, Harmony is expected to continue running as an alternative Java client to the enterprise-focused Pantheon.
Separate to the Apache 2.0 software licence underpinning Pantheon, Harmony operates under a General Public License (GPL) designed to ensure any implementations of the code remain âfree software and stay free software,â as described in the official GPL guide.
Likening the project to âbuilding a new internet,â Harmony developer Mikhail Kalinin told CoinDesk:
âThe biggest challenges are staying on top of all changes in the research area and following the progress of every part of the work. The scope of it is huge.â
Co-founded by former Ethereum Foundation chief of security officer Jutta Steiner, Parity Technologies is a blockchain infrastructure company responsible for maintaining the second most popular ethereum client on the platform today.
The name of the client called Parity Ethereum is self-proclaimed to be âthe fastest and most advanced ethereum client.â
As detailed on the official Wiki page, Parity Ethereum is programmed in Rust and built for âmission-critical use,â meaning fast synchronization speeds and maximum operation uptimes.
Speaking to renewed efforts to build a ethereum 2.0 client within the organization, Head of Public Affairs for Parity Peter Mauric explained ethereum 2.0 was really the âproduction-readyâ version of the ethereum blockchain.
He told CoinDesk:
âBroadly speaking, I believe that ethereum as it exists today is very much in beta ⦠Ethereum 2.0 is going from this experimental project that Vitalik launched just a few years ago to a more production ready blockchain protocol.â
Building out the first implementation of ethereum 2.0 in programming language Go, Prysmatic Labs launched this January with the goal of helping the ethereum blockchain reach scalability.
Speaking about the endeavour, team lead at Prysmatic Labs Raul Jordan told CoinDesk:
âEthereum 2.0 is a system that is scalable to the needs of a global computerâ¦What this means is that it will be able to handle the load of real world necessitiesâ¦Anything from something simple to a completely immense financial system built on top of it.â
Named Prysm, the ethereum 2.0 client will act as a counterpart to the blockchainâs current most popular client implementation also written in Go called Geth.
Not seeing client development as a competitive process, Jordan highlighted that multiple different client implementations is a great necessity on the ethereum blockchain.
âThe reason is that when youâre working on a blockchain like this, you want as much decentralization of implementations. So for example if the ethereum blockchain is running on Prysm and thereâs a bug in Prysm, everyone can just switch to [another client]. You have options,â said Jordan.
Still, likening the endeavour to building âa public good,â Jordan highlighted support for development work was largely by donation from both the Ethereum Foundation and other private donors.
Receiving roughly $1 million in support to date, Jordan told CoinDesk one of the biggest challenges of building out an ethereum 2.0 client was making sure work corresponded âclosely with the research.â
He explained:
âThere are new ideas coming out every week, every day, and weâre basically building on a ever changing specifications⦠So I think one of the biggest challenges has really been multitasking between developing and also making sure that the research is good and we evaluate options moving forward.â
Founded in 2016, Sigma Prime is an information security and blockchain technology consulting company.
Recently awarded a $150,000 grant from the Ethereum Foundation, the company is building an ethereum 2.0 client called Lighthouse written in programming language Rust.
Being the second client implementation in Rust next to Parity, co-founder of Sigma Prime Paul Hauner told CoinDesk that he didnât expect there to be âany fundamental differencesâ between the two products.
Emphasizing that a duplication of work was actually âreally desired in a blockchain,â Hauner explained:
âSoftware has bugs. So, if everybody runs the same client and thereâs a bug, everyone goes down. If thereâs this diversity of clients, theyâre most likely going to have different bugs. One client goes down thatâs fine. The rest of the network still stays up.â
And speaking to the importance of the ethereum 2.0 upgrade in general, Hauner added that not only would users notice âa huge increase in transactions in per secondâ but also significant environmental gains under a proof-of-stake consensus protocol.
âPersonally, I feel people are going to use it and itâs going to work. In terms of the actual technology, I donât have any concerns about is it feasible. Is it bulletproof at this point in time? Absolutely not. It hasnât been built,â said Hauner.
A messaging platform and mobile browser specifically designed to engage users on the ethereum blockchain, Status unveiled this August active development for an ethereum 2.0 client called Nimbus written in programming language Nim.
Funded in part by a $500,000 grant from the Ethereum Foundation, the goal of the project as highlighted on the official website is âto drive mass adoption of ethereumâ by optimizing Nimbus for performance on âresource-restricted devices.â
As such, leveraging the lightweight capabilities of running Nim code, Nimbus is expected to be ethereumâs first mobile client connecting smartphones devices and other handheld electronics to the blockchain platform.
With eight core contributors to the project, Status highlighted in a blog post a few months ago that it is looking for additional developer support.
âWe are entirely open source and encourage contribution from those who want to get involved,â wrote head of research development at Status Jacek Sieka.
In addition, speaking to CoinDesk, Sieka added that he foresaw development work for ethereum 2.0 being rolled out in multiple stages, with a suspected test network for one of the first components called the beacon chain coming some time in the next year.
âThat being said research is ongoing and any timelines are usually in flux but from an end user perspective, a year, two years is a reasonable timeline to expect for [ethereum 2.0] to become generally useful,â said Sieka.
Last but not least, Trinity is a current ethereum client written in programming language Python.
Championed to be the new standard Python implementation for ethereum, Trinity features upgraded code to the now dormant PyEthApp originally authored by founder of ethereum Vitalik Buterin.
Having launched this year in a preliminary alpha phase, Trinity is comprised of six developers including Merriam all except one of whom are contracted to work by the Ethereum Foundation.
Expected to build support for ethereum 2.0 specifications as well, lead architect for Trinity Piper Merriam highlighted developing âat the boundary between research and implementationâ was what he did best.
âI like the application of theory more than the theory. Protocol research is neat but implementing the protocols is more inline with what Iâm good at,â said Merriam.
Adding that the work was really âonly just getting started,â Merriam likened the process of ethereum 2.0 client development as putting together the pieces of âa puzzle.â
A puzzle requiring many hands, the collective work of all eight teams are expected to mutually reinforce each other and secure the future of the ethereum blockchain.
Merriam told CoinDesk:
âBy having many implementations of any protocol ⦠we can derive confidence that the written definition of the protocol is accurate [and] that the individual clients are correct.â
Metal working image via Shutterstock