Thanks for pointing that out, I didn't know that bit of Bitcoin history. I see a big fundamental difference between that chain fork and the ethereum DAO fork. The bitcoin fork was to fix a bug in the bitcoin source code. Without doing that fork, bitcoin would have died. All bitcoin users would have suffered if the fork had not been done. No bitcoin users complained about it.
The ethereum fork was to fix a bug in a smart contract running on top of ethereum. That bug only affected those who were participating in that smart contract (which was code for an investment scheme that a private organization had dreamed up). Lots of ethereum users complained about it.
Yes, I do see some differences. It's true that the situations were not identical. Thanks for your interesting reply.
One important difference is that the amount of money lost in the DAO was MUCH larger than the amount lost by the Bitcoin bug (the Bitcoin bug simply lost the total value of all valid Bitcoins, which I guess was only about $1m at that time in 2010, with few individuals holding substantial amounts). This meant that not much money was at stake and fewer people were affected, so the roll back was less contentious.
:
But there's a VERY important similarity between the two events: They were both existential threats to the respective currency.
That existential threat to Bitcoin was obvious. As you have just said, Bitcoin would have died if they did not quickly invalidate the 'faked' Bitcoins, because the quantity completely dwarfed the true Bitcoin money supply. So it was clearly the right thing to do.
The existential threat of the DAO bug to Ethereum was less clear. There was also more time to decide what to do, because the stolen funds had not yet been released from the smart contract, (and I recall the money could be stalled in the contract almost indefinitely by white hat hackers iteratively exploiting the same bug that had created the problem.)
But the consensus at the time, very early in Ethereum's life, was that Ethereum might die if 15% of the entire currency was in a state of limbo, or in the hands of a malicious hacker. This was compounded by the reputational damage and loss of confidence caused by such a huge disaster that directly impacted thousands of the most active Ethereum users, not just a few Ethereum developers.
:
I pointed out that some Ethereum developers lost substantial amounts in the DAO, so I can accept that personal financial loss probably also biased the decisions of some of them to approve a roll back.
But I personally don't believe that personal loss suffered by some Ethereum developers was a very significant factor in the decision to do a roll back of the DAO event. To explain my reasoning: That is why I mentioned the Parity bug.
The Parity bug was an even larger loss in financial terms, but it only affected a very small number of people, who mostly were Ethereum developers. The lost money was destroyed, not stolen. It did not affect the wider community, so it was not seen as an existential threat to Ethereum. So there was no question of a roll back.
:
Possibly the quite acrimonious argument over the DAO fix, which was bad enough to cause a semi-viable hard fork (creating the ETC currency), was an additional factor discouraging the developers and community from accepting a roll back to fix the Parity bug and later incidents.
Edit: Like you've mentioned, another difference is that the Bitcoin issue was a bug in Bitcoin itself. The Ethereum issues were coding bugs in smart contracts. I'm just making an observation about that, not claiming that one currency is better than the other.
The bitcoin fork was to fix a broken promise. The bug meant that Bitcoin didn't work as promised, the code fix and fork fixed that.
One of Ethereum's promises around smart contracts was, "code is law." The fork broke that promise by circumventing the smart contract code.
It is good that they have never done that again, but they have been making other big changes to the original Ethereum code not to fix bugs and broken promises, but to change the way it works. That, to me, is a concern.
The ethereum fork was to fix a bug in a smart contract running on top of ethereum. That bug only affected those who were participating in that smart contract (which was code for an investment scheme that a private organization had dreamed up). Lots of ethereum users complained about it.
Can you see the difference?