Just wanted to share a few thoughts that came to mind after reading Ira's article. The notion that the attacker did nothing wrong is disingenuous he obviously moved money away from the control of the rightful owners by using a weakness of the smart contract and these people are now affected. Having said that, the reason why it is controversial is a weakness of Ethereum, this idea of autonomy that they sold is biting them in the ass.
The concept of contracting smart or not is by definition broader than just a payment network like in the case of Bitcoin where the integrity of the ledger is paramount. Contracts in general need governance, is rare to find a contract that does not have an arbitration clause, but the Ethereum platform did not include any sort of arbitration method in their protocol and did not establish this method in the contract when it was created. Now that the contract breaks there is a void as to how to proceed and they are waking up to the reality that their idea of autonomy in contracting is flawed, so from that perspective the people that favor the attacker as the rightful owner of the coins under the Ethereum protocol have a point because you can't change the rules ex post facto.
The point is the Ethereum protocol as it exists with its pretense of code autonomy and without a pre-established method of arbitration for breaking contracts is not adequate for many real life contracting situations. I don't think the censorship resistance of a network comes from being automated, in my opinion it comes from being decentralized. When you have people that operate nodes of the network all over the globe and that are located in many different jurisdictions it makes it harder to attack or coerce, so a large enough network of people distributed across the globe, using a pre-established decision making process should be able to come to an objective consensus over an issue.
But there was no arbitration mechanism pre-established on The Dao contract when it was created, so trying to introduce one ex-post facto makes the system look inadequate and weak and gives the attacker a point. I still think the humanitarian thing to do is to get these people their money even if it damages the Ethereum project forever.
They should not have taken that kind of money to begin with that was really irresponsible and now that they lost the money they can't just tell the people fuck you. They should get the people their ether and then let the chips fall where they may even if it kills the project forever. The only other alternative I see is they could catch the attackers and get them to return the money, that could also be a solution.