People who are new to crypto are very confused when it comes to Ethereum Classic. Why would another currency pick the name Ethereum? If it is Classic, then why is Vitalik not supporting it? The Wikipedia article now covers the history aspect of ETC pretty well, so I don't need to repeat it in full detail. Instead, I would like to focus on the merits of Ethereum Classic, why I think it is worth developing for, and the areas where ETC dev teams should improve if they want the chain to survive.
Why Ethereum Classic matters
Back in 2015 Vitalik and co have raised money to develop a blockchain 2.0 solution - Ethereum. Ethereum was like an improved version of bitcoin - 15 second blocks instead of 15 minutes, with just as much security. But the real killer feature were the smart contracts - ownerless programs that live on the blockchain. In effect, smart contracts turn Ethereum into programmable money, and allow multiple tokens to coexist on the same blockchain.
Another benefit of smart contracts is that once you send money to one in order to participate in it, you don't need a lawyer to collect signatures and police in order to enforce contract's execution. Instead of paper signatures you have digital signatures, and instead of police you have incorruptible blockchain rules. The community even created a powerful buzzword for this phenomenon: Code is law. And yet, as soon as a badly written contract was exploited, Ethereum Foundation chose to take a dangerous route. Instead of respecting the rules of the blockchain that they created, they decided to act as a police force and hard-forked the chain in order to take money away from the clever hacker that exploited the bad contract. Now whenever a big sum of money is lost there is an expectation that Ethereum Foundation will hard fork the chain to rescue the funds. This is a very dangerous precedent for the whole decentralized economy.
At this point in time, there is only one cryptocurrency which is both a smart contract platform and has no use if it's not decentralized. Ethereum Classic is the only decentralized smart contract platform where Code is Law.
And yet, as a smart contract platform ETC sucks compared to Ethereum. Even though the differences between ETH and ETC chains are small, it's the little things that matter, and as a developer I have to admit that while I'm ideologically more aligned with ETC, the forked ETH platform offers me both access to a larger market and way better tools to work with. Let me highlight what tools need to be improved in order to make ETC better.
Of course, the most important thing for a cryptocurrency is the code of the blockchain itself and the mining software. It simply cannot exist without those. The second most important thing is the wallets - there's not much use in a blockchain if the only way to access it is through developer console. Most investors are not literate in coding and frankly they don't need to be, that's what the wallets are for. On Ethereum chain, the project that took up the mantle of making an easy-to-use cryptocurrency wallet is MyEtherWallet.
MEW is a great piece of software, but it is a wallet for blockchain 1.0 functionality. The wallet for the 2.0 world that supports working with dApps and smart contracts is MetaMask. Unfortunately for the Classic community, since January 2017 MetaMask no longer works with ETC chain (because of EIP155 that implements replay attack protection). Some time last year our technical advisor and ETC developer Dexaran took it upon himself to develop ClassicMask. However, making it and maintaining it takes up valuable time and ETC development fund did not see enough value in supporting his efforts, so ClassicMask is now abandoned and doesn't work, sadly. Without functioning ClassicMask it is impossible for us to deploy Saturn Network on Ethereum Classic chain.
Absense of MetaMask-like software is why ETC can't have nice things and is not being used for more smart contracts, even though it could technically support them, and run them for much cheaper and faster than congested Ethereum. Instead of looking for more for-profit projects and taking 9% equity, ETC labs should invest in more infrastructure projects, which are typically loss leaders. In fact, you can read this Reddit thread, where ETC Coop representative u/pyskell demonstrates Coop's position on investing in infrastructure. In fact, we've seen similar response from him before, not being able to tell the difference between MEW and MetaMask and not understanding the frustrations of developers who want to develop for ETC but cannot because without MetaMask their dApps will have no users.
Hopefully u/pyskell and the rest of ETC cooperative will see this message and change their position on supporting infrastructure for ETC developers. We do understand that they are literally keeping the project alive, doing a lot of great work with the community and are awesome people all around, but the sad truth is that if they don't invest in developer infrastructure Ethereum Classic will be abandoned and will die as developers move on to ETH, EOS and Cardano.
As a corollary to my previous post, ETH chain is already moving forward with mobile wallets that support ETH dApps. It makes perfect sense. In 2016 mobile traffic has surpassed desktop, and in 2018 Google has announced that it will switch ranking its search results to be based off mobile versions. It used to be that if you're not on internet you do not exist. Now if you're not on mobile you do not exist, especially in developing economies like SEA and Africa where people don't necessarily have desktops but have Android phones.
Coinbase has noticed this too and has recently acquired Cipher browser. I would expect EOS to release one fairly soon, once their version of web3 specification stabilizes. Having access to Ethereum Classic dApps and tokens in the palm of your hand would be invaluable to the whole ecosystem and will clearly demonstrate all the possibilities of an uncensorable blockchain.
Block explorer quality
On mainnet ETH we've got Etherscan. As a user, all you typically want from a block explorer is to see that a transaction has been accepted by the blockchain. As a developer, you have a different use case for the block explorer. You want to validate your code, so your dApp users can feel safe when executing your smart contracts. For failed transactions, you want to see failure reason. When debugging a smart contract, you want to have access to events. Etherscan is a brilliant piece of software that does all these things and much more. Unfortunately though, they do not run their code against ETC blockchain.
There are three main implementations of a block explorer for Ethereum Classic. They are Gastracker, Etcchain and Classicexplorer.
Gastracker is being funded through donations and is considered to be the de-facto main block explorer for ETC. They do, however, have areas where they need to improve, such as provide code validation, parse and display events, and work on supporting a better interface for displaying tokens. However, without external funding they are never going to get there. Luckily, ETC cooperative has given them at least 5 ETC for enlightening its representatives about how their blockchain works.
To provide a block explorer information, otherwise you’re missing major part of the data, like calls, errors and gas usage.— Gas Tracker (@gastrackerio) May 24, 2018
Donation addr is here https://t.co/hKLMFCAuSw Thank you
The other two block explorers are barely used. Classicexplorer(now dead) is a new player in this area, supported by ChainKorea(Github already deleted), and they are running a slightly modified version of ETCDEV's open source block explorer which is still a work in progress. So is classicexplorer, that doesn't even display a list of transactions for an address.
Etcchain seems to be abandoned, as accessing this website displays a scary warning due to an expired security certificate. Sometimes though it is the only block explorer that works.
I swear I don't have a personal vendetta against u/pyskell and he's only being mentioned in negative light here because he is one of the few people that does a ton of work for the ETC community. However, his expertise is definitely on the community building side and not technical, and that's why I'm being so harsh on him whenever he slips up. Anthony, thank you very much for your work, we count on you to let the board know that we demand better infrastructure!
Merging useful ETH upgrades
Since the original hard fork, ETCDEV has merged a couple of improvements to the ETC chain. However, mainnet Ethereum has also not been lying dormant and has since released the Byzantium hard fork. While not all EIPs should be backmerged in ETC chain, I feel like EIP140, EIP658, EIP196, EIP197, EIP198, EIP211, EIP214 should definitely be considered for an upcoming ETC hard fork. All these EIPs introduce functionality for smart contract developers that allow us to write better, more innovative and safer dApps for you, ETC community.
If Ethereum Classic wants to be treated seriously, it needs better dApps. If you want to have better dApps, you need to invest in developer infrastructure. Once ETC's infrastructure gets to the level at least comparable with Ethereum, ETC will be able to proudly say that it is the best immutable smart contract platform! Until that happens, ETC will remain a convenient way to move value between exchanges with small fees and not much real use.