3 ms·
forks are part of the protocol but the vast majority of them are tossed away due to the miner incentives to stick with the most popular chain. a hard fork happe
by rabbyte 9y ago
forks are part of the protocol but the vast majority of them are tossed away due to the miner incentives to stick with the most popular chain. a hard fork happens when there's either a widespread bug that conflicts with older/other clients -OR- when there's a consensus failure in the population using the chain.
in The DAO's case, there was a consensus failure in the population but the majority decided to go along with a recovery. There were good reasons to go either way but most people decided this was an experiment, it's early stage, and a move to PoS would be more difficult with a wealthy attacker. I invested but did not want to fork because I was willing to take on the risks. I lost out but I still stick with the main chain because what matters is where we're going with this not where we are. It was a valuable lesson for the community, devs have heavily stepped up investment in security and stability, I doubt anything like it will happen again as even those who were in favor now understand the damaging effects it can have.
still, if you look at the effects it's pretty interesting. You now have ETC and ETH and the market caps for each have waved to reflect the interest in the two competing ideologies. this means blockchains resolve failure through replication and the social effects that happen after can retroactively decide who the winner is or, as it is in this case, you now have two compatible technologies going different directions. ETC is staying PoW, ETH is moving to PoS, both have different governance attitudes and the split has been mostly amicable. not too bad.
edit- I should note this is also true of Bitcoin. the only reason it hasn't split is because its miner and user culture strictly adhere to immutability. if the population decided immutability didn't matter, it wouldn't. there are points of resistance to push back on the way people are but ultimately these things don't run themselves. they depend heavily on incentives.
- Aaron1011 9y ago> I doubt anything like it will happen again as even those who were in favor now understand the damaging effects it can have. That's one my my main concerns - the hard fork has set an incredibly dangerous precedent. Etherium has shown that it's willing to jettison the idea of 'code as contract' whenever the code ends up doing something 'bad'. In the case of theDAO, 'bad' meant anything from "people losing a lot of money" to "we found a 'bug' in an experiment that still isn't ready".
- rabbyte 9y agoyou have to look at the full precedent though which is that forks can be used to keep a chain nimble and if you do disagree with where the majority goes you can still use the unaffected chain with others who feel the same. I don't mean to downplay, there are very serious effects that come from unforeseen forks and they should be avoided, but the dogmatic view just doesn't hold any weight with me anymore. Bitcoin will fork eventually. It's mostly fear and apprehension that has kept it where it is.
- adamrezich 9y agoThis all makes sense to me as these cryptocurrencies mostly remain experiments with minimal effect on the real world, but what happens if one of them takes off, as they all aim to? Society can't handle its underlying currencies forking and splitting all the time. Why should I trust Ethereum ever again after the DAO hard-fork?
- RexetBlell 9y agoI would argue that today ironically the chance of Ethereum forking again due to a poorly written contract is much lower than it was a year ago. Many lessons were learned and the community is much larger. Also many people who supported the Dao fork, would be against the fork today, because there is no more excuse that "we are early and we don't know how to write secure contract code".
- adamrezich 9y agoThe recursion thing was an interesting loophole, and we now know to avoid it when writing contracts. What if there is another interesting loophole that we haven't yet discovered, and that gets exploited? You say, >Also many people who supported the Dao fork, would be against the fork today, because there is no more excuse that "we are early and we don't know how to write secure contract code". but what you really mean is, we've identified a single "attack vector" and now know to avoid it. And, in the process, we've set a precedent that the discovery of any sufficiently large-scale-affecting (or core developer-affecting?) "attack vector" can potentially result in the software contracts being overridden by human action, i.e. a rollback and hard fork. Thus, I personally see no reason to trust the Ethereum network, even though it's full of really cool ideas and technology.