Thanks for breaking down what happened so clearly, I’ve learnt a lot from your article.
I think this has been mentioned in other comments, but saying “this was not a flaw in Ethereum or in smart contracts in general. Rather, it was a developer error in a particular contract.” might be true in fact, but it really isn’t true in practise. It’s like saying, when your cash falls out of a wallet with bad stitching, that it’s not the fault of the cash fluttering away on the breeze, it’s the fault of the badly-made billfold. If you hadn’t held cash and instead kept your money safely in a bank account, you wouldn’t have lost it. If you insist on holding crypto currencies and, it seems, ETH in particular, it looks likely that things like this will continue to happen, maybe even to you. It’s immaterial whether the root cause is the currency itself, if its ecosystem is so prone to hacking.
Then there’s the part where you say “In many ways, they are like normal contracts, except they don’t need lawyers or judges to interpret them.” Sadly not true. It doesn’t matter what a contract is written on or with, in the event of a dispute in modern society, the lawyers and judges are going to get involved. Blockchain is not (anywhere near) the golden answer to a utopia free of lawyers and legal system, that it keeps getting propounded as.
Discussion welcome; you’ll find me on Twitter. This stuff is so fascinating and so important that I hope you let me know whether you agree/ disagree.
