Ethereum Devcon2 and beyond...
I started my trip to Devcon2 being on the fence with respect to Ethereum as a production ready platform.
The initial plan was to build our solution on top of Ethereum but the hard fork had us on the fence. Not just the fact that the chain forked but the community split was even more worrisome.
The alternative plan was to build the application on top of bitcoin. Move the business logic out of the smart contracts and have only the transactions stored within the bitcoin blockchain. Application specific nuances could be encapsulated using meta-data layer such as colored coins / open asset protocol. And maybe eventually move it to Ethereum in ~2 years
Similar concerns around Ethereum were shared by a few others too.
Both sides of the fork after the DAO exploit had valid concerns.
The fork did break one of the fundamental tenets of blockchains - promise of immutability - that history could not be changed and transactions could not be reversed to go back in time and create an alternate present. Added to it were reasonable arguments around the concept of moral hazard. If smart contracts developers knew that they will be rescued by similar forks there will be no incentive for them to go the extra mile to take adequate measures to prevent such incidents. The folks who wrote DAO should have designed it better and the investors who invested in it should have known better. We also should not have gotten to the state of a ‘too big to fail’ scenario given the ETH exposure DAO had. Also, if the code was the contract then it wasn’t really a hack but making use of a contract loophole.
While the above arguments strongly resonated with me, I could also see the practical arguments for the fork. The entire ecosystem was still in its fledgling stages and while the DAO experiment did get carried away we couldn’t just ignore it in the longer term interests. Also doing this fork doesn’t necessarily imply that hard forks will be a way of life. As the number of applications grow and the level of network decentralizations along with it, the ability and incentive to do the fork dramatically decreases.
Any new paradigm shifts are bound to have the initial hiccups, few steps-forward few steps backward progress etc… Growing pains. It’s not an excuse but reality. The forks, splits, and hacks are in some sense the hardening of Ethereum. And also as someone very aptly put it - the fork was the use of social consensus as an escape latch when none existed.
Fast forward to the conference. The focus was less about looking back but more about forging the path forward taking the lessons of the past. All aspects of security, including creating depth in security, minimizing surface area of attack, better managing of threat vectors, formalized validation of code etc. were indeed a big focus. Approaches to solve various aspects of scalability (state channels, sharding etc.) showed the community wasn’t digging its head in the ground but solving the problems that were gating some of its potency. It was exciting to see the growing focus on developer tooling, progress on proof-of-stake mining, swarm - decentralized storage, and more importantly the growth of a vibrant ecosystem with Ethereum as the center of gravity. IPFS’ decision to build its incentive structure on top of Ethereum was also very positive.
At the end of the day, the ability of the community to get back stronger and more determined after multiple falls was awesome. Strongest swords are the ones that are forged multiple times in fire.
It definitely feels like Ethereum is reaching the tipping point of escape velocity.
While we cannot truly predict the future-- if a one chain to rule them all scenario pans out, or if it will be a constellation of public, private, and consortium chains existing via interoperability. One thing is for sure - decentralization is definitely on its way.
My money is on Ethereum and the vibrant ecosystem around it.
Three cheers to the vanguards of this moment and the awesome community forging it ahead…
I was there and totally agree. The focus on not only the present developments of Ethereum, but those in the medium and long term (3 years out) is awesome. Learn from the past, make changes for the future, and keep moving forward. No software project goes smoothly from the start, and it's how the developers and greater community act when things go wrong that show their true qualities. Long live Ethereum.