Jacob Eliosoff is a computer programmer and former Wall Street quant who runs Calibrated Markets LLC, a cryptocurrency investment firm with holdings in BTC and ETH.
In this opinion piece, Eliosoff discusses why he believes the ethereum community needs to unite around one implementation of the protocol, and why he believes it should be the version that opted for a controversial fork.
The ongoing ethereum classic drama is yet another illustration of the great irony of cryptocurrency – a technology invented as a way to form consensus keeps facing its greatest threat from the inability of its communities to form it.
When there’s a fork, it’s important for the community to choose wisely between the two branches. But it’s also important, often more important, for the community to converge on one branch.
In a case like ethereum, which now has two competing versions, ethereum (ETH) and ethereum classic (ETC), not converging will do more harm than converging on the inferior branch.
We’ve reached the point where there are only two realistic outcomes for ethereum: a bifurcated project, confusing users and developers, or convergence on the ETH chain.
Fork or not?
During the original fork debate, I saw legitimate arguments on both sides, though no clinchers. I wasn’t an investor in The DAO, which struck me as doomed from the start, and saw no need to rescue its backers. Concentrating 4.5% of all ether in the hacker’s hands wasn’t ideal, but didn’t seriously threaten the network either.
The most common anti-fork argument is that fiddling with the ledger sets a bad precedent. This is true. But how bad? It’s not like if this one sticks, we’re all doomed to a future of hard forks any time the FBI asks or one of the admins loses a few coins.
Whichever branch wins out, this fork has been messy enough that no one is keen to go through another one anytime soon.
I agreed with Cornell researcher Emin Gün Sirer and others that ethereum was a young technology still very much at the dress rehearsal stage. Even if you want a future of 100% self-driving cars, you have to expect the occasional manual override early on.
Many questioned the financial incentives of Ethereum Foundation members who had bought into The DAO, but as Alex Van de Sande wrote, they had a vastly larger stake in ethereum’s success than in The DAO. And meanwhile, there was amazingly little coverage of the fact that the hacker had a $60m stake in stopping the fork!
Even now, the hacker’s stake is worth $7m on the old chain, $0 on the forked one. It would be quite a surprise if he or she hadn’t been pushing ETC behind the scenes.
So, you can argue that ethereum creator Vitalik Buterin forced the fork through, or that ETC is a hacker-backed scam. I’m happy to leave these all-too-typical conspiracies to Reddit.
The fact is that there were many smart, sincere people on both sides of the fork debate, and that none of their arguments either way were overwhelming.
Harmful hard forks?
There’s even a sense that July’s fork set a good precedent.
I don’t think anyone disputes that more hard forks will be needed, in both ethereum and bitcoin, better to get the hang of them now while the stakes are low.
And to those who say, ‘Only for technical improvements, never to revert a hack’, I question your imagination.
What if The DAO had attracted not 15%, but 60% of all ether, and the hacker had drained not a third but all of it? What if some malware spread widely across wallets or miners, giving a hacker control of 50+% of all ether? What if a similarly large theft resulted from exploiting a bug not in ethereum itself but in third-party software it’s built on – say a compiler or operating system bug?
Of course, part of the answer is we should make the network robust against these attacks. But part is also, shit happens, and situations may arise where a fundamentalist attitude to hard forks is counterproductive. The bar for non-technical hard forks should be very high, but it will always exist.
Bitcoiners should watch the schadenfreude. Clearly this fork has been a mess, but that’s not due to a hard vs soft fork distinction.
It’s true that a soft fork, once widely adopted, avoids the bifurcation seen here: nodes that refuse to upgrade just see their blocks rejected, rather than spinning off a separate branch. But it’s equally true that a soft fork which is not widely adopted can also result in a bifurcated chain. The reason this doesn’t normally happen isn’t technical, it’s just, ‘Why would anyone want to mine or transact on a minority chain?’
‘Hard forks are dangerous’ would seem to be the wrong conclusion here. In particular, a bitcoin hard fork would probably look very different.
One, it would come with months’ rather than days’ notice (avoiding, eg, Poloniex’s out-of-nowhere decision to list ETC). Two, bitcoin’s miners would be much more likely to settle on one chain or the other as a group.
The real risk comes from forks, hard or soft, that the community is significantly divided about. When an urgent situation demands a decision before the community can reach agreement, the solution is not to avoid forking (that was inevitable, given the level of disagreement), but for the community to debate, listen and settle on a majority chain quickly.
Given how long bitcoiners have been bickering about 1MB, if ethereum can overcome its current split by December, I’d even call this hard fork a success.
Should we stay splintered?
Some say, why not have two chains? Choice! Diversity! I could not disagree more profoundly with this for reasons any active developer of an ethereum-based project will understand. It’s like wanting the choice between Blu-Ray and HD DVD.
There’s certainly some benefit in having different technologies with different approaches, like bitcoin and ethereum. But, being forced to choose between implementations of the same technology is a huge headwind for the community.
It would be painful enough in bitcoin, with every website, service, user and developer having to make sure all parties coordinated on which variant to use. But it’s vastly worse for ethereum, which is trying to build a true ecosystem of stateful, interacting smart contracts.
One of my greatest worries for cryptocurrencies has been that usage would become fragmented across competing implementations this way. Take what we saw in chat protocols over the last 20 years: IRC, ICQ, AIM, MSN Messenger, Gchat, WhatsApp, Viber… Anyone who’s tried, for example, to collect all their chat logs in one place can attest to the frustration caused by this maddening multiplicity. And through it all we had the shining contrasting case of SMTP, the one true email protocol.
Imagine if email were as bifurcated as chat! That’s my nightmare for cryptocoins.
So you can say, ‘The principle behind ETC outweighs the pain of maintaining two ethereum blockchains’. But frankly, anyone who says ‘There is no significant pain in having two chains’ is just not a serious engineer.
How bad is the pain? Well, what’s your goal? If you’re a technophile, more chains is great – better chance of finding one that ticks all your ideological checkboxes. If you’re in it for short-term trading profits (certainly your right), two chains may present some opportunities. And of course for the popcorn-munching, told-ya-so bitcoin crowd, the more ethereum fragments, the better.
My goal is different: I want a tech that’s not just decentralized and censorship-resistant, but widely useful and widely used. For that goal, two chains are a mess.
As Linus Torvalds said of his creation:
“We’re not masturbating around with some research project. We never were. Even when Linux was young, the whole and only point was to make a usable system. It’s why it’s not some crazy drug-induced microkernel or other random crazy thing.”
Beyond two chains
Moving forward takes us from technology to community dynamics.
I do wish the informal vote had been better and sooner publicized, but there was real-time pressure. If a majority had opposed the hard fork, then I (and, per Van de Sande and others, Vitalik & co) would have gone along with it. But in fact, a strong majority favored the fork: even ETC’s first promoter, Arvicco, acknowledged that.
With ETH holding the support of a large majority of the community, the lead developers, and 80+% of both market cap and mining power, ETC becoming dominant is just a fantasy.
The only realistic outcomes here are either two chains persist, inconveniencing users and developers, or ETC fades to <5% and we move on. It’s just a question of how long.
Technologists are prone to overrate the importance of pure technical merit. The greatest tech projects – the moon landings, the Internet, C, Linux, etc – were above all pragmatic, collaborative human organizations. In particular the IETF, the group that brought us the Internet, has been guided by what they call rough consensus: “strongly held objections must be debated until most people are satisfied that these objections are wrong”.
Some ideological or technical objections are certainly worth holding up consensus for: many aren’t. Internal strife has now become the number one obstacle to both bitcoin and ethereum (and cryptocurrencies in general) – not scammers, not governments, not poor scaling: well-intentioned but uncompromising, black-and-white ideologues.
The practical question right now is whether the principled appeal of keeping the unforked chain alive, as a minority branch, outweighs the practical drawbacks of forcing developers and users to juggle two parallel worlds. I have no doubt how this choice would be handled by the IETF (thank God we ended up with only one Internet!), the creators of Unix (which disastrously splintered between AT&T, Sun, BSD, etc), and other engineering role models.
Unfortunately, consensus comes less naturally to the cryptocurrency crowd.
I’m well aware that some believe passionately that the fork went against everything ethereum stands for (I can’t wait to read their thoughtful and constructive comments below). I respect their view, but I don’t hope to convince them.
The ones I’m addressing are the majority who, whatever their fork preference, recognize that there were reasonable arguments for both chains. To those who believe this, I say: help ethereum move on by putting your capital and your mining power where the future is, ETH.
A matter of time
What will happen from here? The most likely outcome is that ETC will continue to bounce around between 5% and 30% of ETH’s price, then fade over the next 3-6 months as projects continue to build on the ETH chain.
Without animosity, this is what I hope for.
If the ETH/ETC split becomes permanent, it will certainly be a drag on ethereum, but probably not a fatal one. But the broader risk is stark. If we keep failing to build the rough consensus that’s served communities like the IETF so well – with the compromising that entails – then the technology we love will never reach a wider public.
We’ll have a Plan 9, not a Linux. And the blame will be not on “centralists” or the “legacy fiat system”, but on our own failure to collaborate.
Rock in the desert image via Shutterstock