4 ms·
One of the problems with Ethereum smart contracts is they are trying to do something that is basically impossible. A contract is an explicit set of rules as to
by woodandsteel 9y ago
One of the problems with Ethereum smart contracts is they are trying to do something that is basically impossible.
A contract is an explicit set of rules as to what the involved parties are supposed to do in every relevant situation that could arise. The problem is that in the real world it is very often simply impossible to anticipate every possible relevant situation. That is because the real world is so complicated, and we lack much of the needed information about what might happen in the future.
The consequence is that in business, unanticipated situations arise all the time where the signed contract either calls for something that would lead at least one party to suffer, or it is not at all clear what should be done.
%99 of the time, the involved parties simply decide informally what to do. 1% of the time one side sues, and in most of these cases the lawyers settle before trial. And if it goes to trial, the judge decides on things like intent and fairness that can't be clearly specified in a contract.
It is just not possible for smart contract coders to solve this problem that experienced business people can't. And let me add that this is similar to the problem with bugs. A bug arises when commands and/or data are encountered by the program that the coder had not anticipated, and so the program does something other than what is intended. It is the same basic problem of not being able to anticipate all possible situations, and so this is why all programs have bugs.
- tylerhou 9y agoThe Nobel Prize in Economics was awarded in 2016 to Oliver Hart, who made contributions to contract theory, and more specifically, the incompleteness of contracts. NPR's Planet Money has a good introduction: http://www.npr.org/sections/money/2016/11/18/502475485/episode-736-messy-nobel http://www.npr.org/sections/money/2016/11/18/502475485/episo...
- vit05 9y agoYou are thinking about contracts in a limited and restricted way. The economy today is about contracts, everything involves an agreement between two parties. It is not always necessary thousands of signed pages, sometimes they are simple things. There are thousands of standardized contracts that are signed by thousands of people and only a small percentage of them end up in conflict. "IF-WHEN-THEN"
- Joeboy 9y ago> There are thousands of standardized contracts that are signed by thousands of people and only a small percentage of them end up in conflict But how many contracts are there where nothing can be disputed? That seems to me to be the case where a smart contract could be useful. If you're relying on the parties to be honest and compliant then you've gained nothing by having a smart contract, afaics. All you've done is introduced some extra mess into the existing tangle of legal and informal incentives and disincentives. I'm open to suggestions but I'm not sure many such use cases exist. To the extent they do (eg. provably fair casinos), I'm not sure they provide anything compelling over existing dumb alternatives.
- woodandsteel 9y agoI was thinking of serious business contracts, and for ongoing relations, like Firm A agrees to deliver 1,000 widgets every month to firm B. If you talk to an experienced business person, they will have a hundred stories about how something unexpected happened in such cases, or large, complex business deals. >There are thousands of standardized contracts that are signed by thousands of people and only a small percentage of them end up in conflict. That's because, as I explain, when something happens the contract did not anticipate, the involved parties almost always work things out informally For simple things done in large numbers, smart contracts might makes sense. Except if many people are using the same contract, it is more attractive to hackers to try to find a bug.