Painfully strict logic, hard forks
Since the Ethereum Foundation announced it’s intentions about doing a hard fork (actually Vitalik Buterin mentioned it after minutes into the incident as proved by chat logs) I have had very strong feelings.
As someone that has been interested in crypto since almost it’s inception but without being a wealthy investor the thing that attracted me is it’s core principles.
Believing in code as in believing in math and truth.
Immutability speaks to my heart .
Applying strict logic and no emotions in a number of situations can shed light about the hard fork and whether it was right to do or not. I will give some analogies here .
Is a 51% attack an “attack”? (talking about Bitcoin here). When is it an attack and when is it a majority vote? Who decides when we call it an attack and when it’s an accepted hard fork?
Was the DAO contract the law? If yes was it stealing? Who decided to call it stealing? How can you differentiate? Only by the intentions of the writers of the contracts stated on Twitter for example?
Is the Hard Forked Ethereum a result of majority and democratic decision? When 5% of the total stakeholders voted and some whales apparently from the Foundation had 25% of say in this vote? (numbers approximated from what I read online, if you have hard facts please comment and I will update). The Ethereum Foundation didn’t give any choice. They gave a directive “look, some of our friends fucked up and we lost money too. Let’s bail ourselves out because we can. We have the software ready and let’s be happy together. Otherwise you know, we write the software so if we stop your money will lose its value”.
As a coder, I like to also apply a strict logic in life.
IF 51% is an attack AND IF DAO incident was theft THEN ETH HARD FORK is a COUP.
IF 51% is how decentralization works AND IF DAO code is law(as was stated) THEN ETH Hard Fork is democratic.
But then of course… there would be no hard fork because the theft wouldn’t be theft but just normal function calling.
I hope people start use more strict logic.
Either every call of the function returns the same result OR it is broken.
I upvoted You