3 ms·
> Really the things crypto people need to fear is a bug like the one that let someone make an extra billion bitcoin happening again. No one writes perfect softw
by saghm 3y ago
> Really the things crypto people need to fear is a bug like the one that let someone make an extra billion bitcoin happening again. No one writes perfect software, it's just a matter of time and then all trust will be broken.
This is why the idea of "smart contracts" seems so crazy to me. As many flaws as there are in human-based contract systems, the fact that contracts aren't an incontrovertible source of truth isn't one of them. This isn't even the classic mistake of trying to solve a social problem with a technical solution; this is creating an entirely _new_ social problem that doesn't exist with a technical "solution" to one that doesn't fix any issues that do already exist.
- npoc 3y agoThere's different levels of "smart". Every bitcoin transaction is a smart contract: "I unequivocally agree to give you this much of my bitcoin" A slightly smarter one would be "I unequivocally agree to give you this much of my bitcoin on 1/1/2030"
- saghm 3y agoMy point is that human-based contract systems don't suffer from needing to think of every possible edge case up front in order to be legally enforceable; courts make rulings based on stuff like "what would a reasonable person would infer in this case?" all the time, and in some cases, unreasonable contracts aren't even enforceable at all even if they technically are logically sound.
- npoc 3y agoYes, I understand, but legally enforced contracts can be both a blessing and a curse. Contracts where no nanny state/tyrannical state can intervene on a mutual agreement between two people have their own value. > human-based contract systems don't suffer from needing to think of every possible edge case up front This isn't always a good thing. As smart contracts are in a form enforceable by computation, they could be put through a series of automated checks to help ensure all edge cases have been considered.
- idiotsecant 3y agoCode can be used to do very important things. In those cases you KISS and you check your code, sometimes mes formally and mathematically. Then you put it online and you wait. When you do those things the probability of a major bug existing over time converges to zero.