The decision for the hard fork was popular among the Ethereum community.
A small group of people in Russia did not recognize this decision. They believed the hard fork went against everything Ethereum and its platform stood for. Since they came together, their message became widely known within the cryptocurrency communities.
This group is called Ethereum Classic. A community of developers who believe the Ethereum Foundation overstepped their boundaries on the decentralized platform. Their message is clear and has been growing stronger for over a month now. However, we do not who belongs to this community.
We spoke with Arvicco/BitNovosti, owner of bitnovosti.com where the Ethereum Classic movement began, to give us more insight on the new branch:
The most notable difference between ETH and ETC is that Ethereum Classic believes “code is law”. Some people may be teetering on which chain they should commit to, are there other differences you feel they should know about in regard to ETC core values?
First off, people keep repeating that "code is law" mantra without clear understanding of what it's supposed to mean. Some deliberately misinterpret it to mean that "ETC supports thieves and crooks" and similar nonsense. Let's get some things straight. Code is law on the blockchain. In the sense, all executions and transactions are final and immutable. So, from our standpoint that by pushing the DAO hard fork EF broke the "law" in the sense that they imposed an invalid transaction state on the blockchain.
This has nothing to do with contractual or criminal law, or other legal considerations. Stating that "code is law" is similar to acknowledging the laws of physics. The law of gravity says that when I push a piano out of a window, the piano will fall downwards. It does not mean that it's necessarily "legal" for me to push that piano out of that window. And if I do so and the falling piano kills some passer-by, it would be insane for me to argue before the judge that I shouldn't go to jail because I broke no laws of physics.
So, the primal difference between ETC and ETH is that we strongly uphold blockchain immutability and transaction finality as a key principle. We see the blockchain is a truth machine preserving one universally accepted version of history, one immutable sequence of events. While ETH supporters are OK with rewriting the history if it contains "an inconvenient truth" that majority of users would prefer to "just disappear".
This difference may seem scholastic at a first glance, but in fact it makes all the difference in the world. What is the value of the blockchain, if not to reflect the reality, however inconvenient it is? Is there any long-term value in a blockchain "mutable by democratic process"? In fact, I would argue that such system should not be called "blockchain" at all. Some other term such as "mobchain" may be more appropriate.
From a practical viewpoint of a Dapp developers, it is important for them to ask themselves if blockchain immutability, censorship-resistance and transaction finality is important for their application and use case. Or they are OK with possible "irregular state change" of their blockchain happening due to the will of the "majority", "central authority" or some other external factor.
Even if such characteristics are not important for them (even though I would argue that for the [vast] majority of Dapps that REALLY need something like Ethereum blockchain they are), there is no reason for developers to limit their deployment choices to just one chain. With 100% compatibility of Ethereum Classic blockchain, it is trivial for anyone to copy Dapps between chains. If not the original developers, their competitors will, to take advantage of better blockchain characteristics of ETC (and the execution will be order of magnitude cheaper due to token price difference). In fact, with Rootstock and private EVM-based solutions coming into their own, developers should be prepared for the world of Dapps multi-deployments across ETH, ETC, RSK and private chains.
Can you give us a little insight leading up to the development of Ethereum Classic? Was this group having discussions prior to the actual fork date? How/where did everyone come together and who were/are the orchestrating members?
The initiative formed among the contributors and users of bitnovosti.com site, with a critical articles and discussions regarding EF handling of the DAO crisis culminating into forming of the group that initiated Ethereum Classic project about a week before the planned hard fork. Many of the original group members are still active in the ETC community.
Has anyone jumped ship, from ETH to ETC or vice versa?
Not really sure what is being asked. Most of ETC community used to be active members of Ethereum community before the hard fork, if that's what you are asking. Some members of a wider Ethereum community decline to take sides and support both chains, which I think is a prudent thing to do. I'm not aware of anyone who was vocal in support of ETC first, but then decided that hard fork was somehow [alright] or the blockchain principles don't really matter.
Understanding the platform is decentralized, it would still require some authoritative person/group to implement specific elements to the platform. Who is that person(s)?
A decentralized meritocracy of developers, similar to the one currently forming to support ETC core development. Dozens of developers with different skills sets and experience already volunteered to participate in our project: https://github.com/ethereumproject/go-ethereum/issues/1, https://github.com/ethereumproject/volunteer/issues/1. This is quite amazing given that we have no deep pocket foundation to bankroll the development, and the project itself is barely a month old.
We see there are currently 17 members of the Ethereum Classic Project github, do these members comprise the meritocracy of developers you speak of, or are there more? We also see 7 members of the Ethereum Classic github, would you say, that at this point in time, these 7 members are calling the shots (are the core group) and would you cast “WhatIsGravity” or yourself in the leading role as the “Vitalik” of ETC?
We have a Github setup where ethereumproject is a dev org, and ethereumclassic is a marketing/PR org. While membership in ethereumproject implies that the user is part of core development team, membership in ethereumclassic only means that the person is active in ETC marketing/PR/community building or maintenance of our web/media assets. It in no way implies that members of ethereumclassic org are somehow 'calling the shots'. Since our ideal is a decentralized community, we would like to avoid building hierarchies with a Dear Leader on top. So, the very notion of "Vitalik of ETC" is antithetical to everything this community stands for. While Gravity coordinates collaboration of our dev team, and I organize some marketing efforts, we do not hold any formal positions and are fully replaceable if someone comes up who fits better to a specific role.
What is your opinion about the DAO hack? Not the attacker, but the event itself.
It is described by EF as an "extraordinary, one-off event", but one may argue that something like that was inevitable with the way EF and some projects closely associated with the foundation (such as Slocki.it) put strong emphasis on a speed of development at the expense of security. There were multiple alerts to the vulnerabilities of TheDAO code, both from EF developers and outside researchers, but they were all ignored.
Given what we’ve learned, would the ETC community allow a project like the DAO to be developed on the ETC chain?
We believe in a strong separation of concerns, where core developers focus on the platform and have no business meddling on the smart contract layer, whatever happens there. This allows to create a censorship-resistant platform that can be actually trusted - by anyone. That being said, there is a lot of discussion in the ETC development community right now about the way to ensure better security focus of ETC based dapps. One of the possible approaches is to promote the use of a functional smart contract language that is focused on immutability, proven correctness and security guarantees, as opposed to Solidity that is focused on 'ease of use'.
You mention a possible approach is to promote the use of a functional smart contract language different from Solidity. Has the development of this new language begun? Do you know what it might be called?
This issue was recently discussed by Charles Hoskinson in his excellent write-up on Ethereum Classic roadmap (https://steemit.com/ethereum/@charleshosk/thoughts-on-an-ethereum-classic-roadmap). Currently, it's just one of the ideas that may help us the critical issue of smart contract security and proof of correctness. The work on this is yet to start, my hope is that Charles or some of the developers that he is committed to assigning to Classic development will contribute to this.
Are you satisfied with the reception Ethereum Classic has received? Do you believe there is still much more to achieve?
Yes, the attention Ethereum Classic received was unprecedented, both inside the Ethereum community and outside of it. But [it’s] worth mentioning that the project is barely a month old. ETC is only starting to get serious traction, its community and dev team still forming, the issues of decentralized governance structure and funding, development roadmap, branding and other issues structure are being solved as we speak. Of course it has still much more to achieve. We are at the very beginning of a very exciting journey.
Many dApps/developers have committed to the ETH chain. Are you concerned with the lack of developer proclamations at this point? Will this directly affect the chain’s ability to survive?
As mentioned earlier, I see no reason for developers to limit their deployment choices to just one chain. Any proclamations of "eternal allegiance" to any chain mean little in a practical sense. With 100% compatibility of Ethereum Classic blockchain, it is trivial for anyone to copy Dapps between chains. If not the original developers, their competitors will, to take advantage of better blockchain characteristics of ETC. Developers should be prepared for the world of Dapps multi-deployments across ETH, ETC, RSK and private chains.
There has been a lot of vitriol from both sides of the Ethereum chain. ETH and ETC users and developers are bickering constantly on social media and in the forums. Do you personally contribute to any of this? Do you see this behavior fading away or do you believe this continue to carry on for an unforeseeable future?
Both sides voiced their grievances. ETC community was specific in listing some of them in our Declaration of Independence (https://ethereumclassic.github.io/assets/ETC_Declaration_of_Independence.pdf). Unfortunately, some members of ETH community consider the very existence of ETC as a serious threat to ETH. It's not just "bickering". From day one, ETC is under constant attack from pro-EF zealots. Classic pools and other critical community resources are under DDoS attacks pretty much non-stop. Threats of 51% attack were regularly aired. Our forums are regularly subject to heavy (and well-coordinated) trolling and vote-brigading. There is quite a bit of anti-ETC propaganda being spewed publicly by many (but definitely not all) members and associates of the Ethereum Foundation. And they don't mince words. When someone strongly opposes your very existence, and denies your right to stand on your own, it's not easy to remain impassive. So, a certain backlash from ETC community is to be expected in this situation. I don't think such confrontational approach is the best though, and it is definitely not in the best interest of Ethereum community as a whole. ETH zealots need to understand that the source of their problems is not Ethereum Classic – it's the choices that their own community made, and the consequences of these choices that it is now facing. So, attacking ETC will not help, but only makes these problems worse by creating the impression of "Ethereum civil war" to the outside world. Isn't it better to move on and go separate ways at the very minimum, or better still, establish cooperation between two parts of a wider Ethereum community?
What do you see happening when the ETH chain switches to proof of stake? What would you like to see ETC do?
There is pretty much a consensus within ETC community that Ethereum Classic should not hurry into unproven and potentially dangerous transition to PoS. Our dev team is currently working on infamous "difficulty bomb" that was intended to force PoS hardfork, in order to make PoW viable long-term. At the very minimum, we should wait and see (for an extended period) how such transition works out for ETH, giving it the dubious honor of testing unproven concepts on a live system with a billion-dollar capitalization. This will allow us more time and data to decide on a long-term ETC consensus mechanism: staying on PoW, moving to PoS or a hybrid PoW/PoS scheme that is more theoretically sound than pure PoS.
Do you believe there will be a time when you or the ETC community would welcome the idea of working with the Ethereum foundation on projects?
I think [cooperation] is always better than a confrontation. ETC developers are already planning to contribute to upstream development of the open source projects that are critical to both communities (such as client and node software). I already mentioned my belief that Ethereum Dapp ecosystem will inevitably migrate towards multi-deployment framework, so cooperation may not be limited to just core software.