7 ms·
What is Ethereum?
- fleitz 11y agoEther is law, but the example contract says nothing about websites, nor has any provisions to enforce the transfer of said site. I think it's more appropriate to say that ethereum is naive
- detaro 11y agoNot without further integrations, but there are proposals for blockchain-based decentral name resolution etc. Nothing you could directly use right now without a lot of effort around it, but I'm glad they are exploring that space.
- boombip 11y agoYeah what if the website isn't finished? Does the seller still get paid? I really wonder how they plan on solving conditional logic that depends on programmatic sources. What happens if you want to change the contract? How do you revoke the previous one? I suppose this would have to be done in a manner that involves both parties, some sort of two part signing process. What if there's a bug in the contract? The contract then becomes ambiguous and you're left with the same problem.
- zaphar 11y agoIf we are being fair here neither does a traditional contract. The enforcement of a that contract falls to person (i.e Policeperson, Bailiff). The benefit of etherscript in theory at least is that the wording of the contract is unambiguous, with the caveat that there may still be some areas where ambiguity is unavoidable. Which means that in the case of a website a digital bailiff could enforce the transfer. This is a clear benefit in some sense at least. How many times have you read about a court case and been bewildered about how someone could possibly be arguing over something that should be clear cut. For contracts like a website domain transfer this sounds at least initially doable. What etherscript will have trouble handling is establishing what actually happened. It will undoubtedly be very good at specifying what the outcome of a sequence of events should be but as soon as it hits the real world the problem of establishing what that sequence of events was will still require some form of investigation and enforcement mechanism composed of people and thus there will still be an unavoidable amount of ambiguity there.
- fleitz 11y agoThe debate in law is usually about what the words mean rather than what words appear in the contract. (Of course there are always issues where contracts have been lost, etc)
- paulsutter 11y agoI'd be a lot more interested to see statistics on adoption, and actual use cases by real people.
- lukateake 11y agoStats: https://stats.ethdev.com/ https://stats.ethdev.com/ Transactions go live on Monday, if I remember correctly.
- deleted 11y ago[deleted]
- bernardvds 11y agoWho is behind this? I'm interested in talking to them.
- lukateake 11y agohttps://angel.co/ethereum-1 https://angel.co/ethereum-1
- deleted 11y ago[deleted]
- deanstag 11y ago"You might even imagine a nation defined not by geography but by the rules and benefits of citizenship. Imagine that people of the future could opt-in to the virtual nation that suits them best." . I wonder if we will ever get there . But its eye opening just to think about it.
- gus_massa 11y agoIt may sound good but this doesn't make sense in the real word. Who decides what happens when two persons of two nations have conflicting rights? Some extreme examples, you may also combine them: -- Nation A: Copyright is forever. (Because 1000 years is not enough for Mickey Mouse.) Nation B: No copyright at all. Nation C: Only Copyleft software. -- Nation M: No taxes Nation N: Basic Income for everyone -- Nation X: Death squads (but only for "bad" people) Nation Y: No incarcerations, only voluntary "rehab" camps Nation Z: No incarcerations, only "voluntary" rehab camps -- The current solution is that each nation has a territory and tanks. With some simplifications, inside each nation there are clear rules and when there is a conflict between nations the one that has more tanks is right. Perhaps this is not the best method, but a virtual nation world will need a realistic method to solve conflicts.
- jsprogrammer 11y agoThey are already called corporations.
- lisper 11y agoI have proposed this idea in the past as a solution to the problem of stateless prople. If it ever does happen, I want it to be called the Peoples Republic of Hackistan :-)
- 616c 11y agoI am sure I have brought it up here before, but I will again. Here it goes. My father is an intellectual property attorney. Among colorful clients was a very active entrepeneur/inventor. One year he insisted the future was a digital nation. You see how people drool or get excited even with 1/4-of-the-way-there e-Estonia system? He was talking about this years ago, when I was finishing high school and starting college. My father even drafted letters to the UN on his behalf pitching the notion of offciail recognition, and he was laughed off completely. Mark my words, if govts still antagonize their people and an alternative of this form exists, a vocal minority will popularize the notion. As an American, I cannot wait.
- detaro 11y agoThis is one of the clearest and understandable-without-prior-knowledge descriptions of the project I've seen so far, can anyone familiar with the details weigh in on how accurate it is? EDIT: not-so-happy sibling comment: https://news.ycombinator.com/item?id=9987351 https://news.ycombinator.com/item?id=9987351
- koudi 11y agoDefinitely interesting, but how does it help with this? > even if you "win", you have the problem of collecting.
- lytedev 11y agoI think because the actual procedure is included in the script, so "collection" takes place automatically in the code when it's processed.
- swehner 11y agoMight work in some areas, but not the ones mentioned.
- INTPenis 11y agoThis will never be unbreakable because no complex system is unbreakable. The reason contracts are messy is because they're a system that has vulnerabilities. Lawyers are just hackers with different tools and training. So moving to another system, equally complex or dynamic, will not solve anything in the long run. A system that must support contracts between humans would be dynamic enough to allow for vulnerabilities that will eventually be discovered. In fact I find it laughable that these guys are trying to replace a legal system with a computer system. When computer systems get hacked all the time.
- crucialfelix 11y agoSkilled programmers will be hired to write these contracts in a complex and verbose way such that the other party is unable to understand it and may not be able to afford to hire programmers to analyze it. They will then be taken advantage of. So pretty much the same as the current legal and financial system.
- gweinberg 11y agoMaybe. Nobody is going to sign a contract he can't understand if he get the same goods and services from somebody else with a contract he can understand.
- crucialfelix 11y agoPeople do exactly that all the time.
- joosters 11y agoThe example contract is very vague and seemingly pointless. The stated problem is 'if the buyer pays before 1st April, then they own the website'. Fair enough, but usually you'd just deal with this without any kind of contract in place. We don't need contracts for simple cases of 'buyer pays money, gets purchase.' A contract would only be interesting in the example if it was structured as an option: The buyer has promised to pay for the item by 1st April, and in return, you have promised that you won't sell the item to someone else before then. How would this be handled? How would be example contract react if you set 'WEBSITE_ADMIN' to someone else prior to the purchase? Does the example contract mean that WEBSITE_ADMIN cannot be altered by anyone else? What are the access controls to this storage slot WEBSITE_ADMIN? Does the seller lose write-access to it after the deal completes? Does the buyer gain read access? If not, what's to stop anyone changing this value and breaking the deal?
- heliumcraft 11y agoHere is a framework that allows you to easily try this in practice: https://github.com/iurimatias/embark-framework https://github.com/iurimatias/embark-framework
- kordless 11y agoThe data for WEBSITE_ADMIN is set inside the Ethereum network. I think the term 'website' is tripping people up here. It's actually better defined as 'site with data' which can be accessed via the Ethereum APIs. If you are interested in playing around with the API calls, there is a Docker image for it. I put together a hosted version of this as well, so you don't have install anything to play with it: https://github.com/giantswarm/swarm-ethereum https://github.com/giantswarm/swarm-ethereum
- joosters 11y agoAre you saying that Ethereum is a web hosting platform?
- natrius 11y agoEthereum is not a web hosting platform. It is not similar to Amazon's EC2 or anything like that. Conceptually, it is a single global computer that anyone can access. It's not the same kind of computer you're familiar with, though. Programs on this computer can't be changed, and nothing can write to the program's storage except for the program itself. You don't have to trust a service provider to maintain their guarantees: it is impossible to break a guarantee. These characteristics are useful for writing programs that coordinate interactions between humans. They're also useful for letting devices publish and access information about the world long after their manufacturers go out of business. Entirely new kinds of software can be built to coordinate social and financial systems.
- knz42 11y agoThis explanation subtly forgets to explain which agent is responsible for executing the contract-programs. Obviously you don't want the contract to be processed (and the money spent) two or more times at its deadline. Who is doing the processing and ensuring the execution only occurs once?
- chriswarbo 11y agoAs far as I understand, it's a distributed consensus system. Scripts don't perform their effects in the "real world"; instead, they append values to a blockchain. External systems can inspect the most recent values in the blockchain and act accordingly. This is how bank accounts work, conceptually. Many programming courses use bank accounts as examples of race conditions in concurrent systems, eg. User withdraws £10 from ATM User receives £1000 salary Balance --------------------------- -------------------------- ------- ATM looks up balance (£100) Bank looks up balance (£100) £100 ATM subtracts £10 from value (£90) Bank adds £1000 to value (£1100) £100 ATM dispenses £10 note Bank sets balance to value (£1100) £1100 ATM sets balance to value (£90) £90 This race condition has blown away the user's salary! However, this is a terrible example, since it is nothing like the actual operation of a bank account! An account is exactly that: an account (log) of what has happened: Debits Credits ------ ------- ATM withdraws £10 Salary adds £1000 The balance is exactly that: the balance of (difference between) the credits and debits. The balance is derived from the account as needed, taking new entries into account as they get added. Blockchains are a way to keep such accounts, in a consistent way without giving any one entity control over updates. For example, the article's Web site ownership system might keep an account with entries like this: User A transfers example.com to User B User B sets example.com IP to 123.123.123.123 When contracts are executed, they can inspect the latest values on the blockchain and append alterations. For example, if user B sets up a contract to transfer ownership of example.com to user C, one of the pre-conditions is that user B owns the domain. Hence after execution we get: User A transfers example.com to User B User B sets example.com IP to 123.123.123.123 User B transfers example.com to User C Anyone can execute the same contract on their local copy of the blockchain to get the same result, hence everyone can reach a consensus about what the new blockchain should contain. The contract also can't be run twice in a row, because the resulting blockchain says that User C owns the domain, and hence user B doesn't have permission to transfer it. The same thing happens to any currency which B and C might transfer in exchange for the domain. To actually use such a value, we can imagine a DNS-like system which resolves names by looking up the latest IP address from the blockchain; in the same way that an ATM displays our current balance by looking at the credits/debits in the account. All of this can also be cached, of course; provided we either trust the cache to provide the right value, or that we don't care enough about the value to verify it ourselves (eg. transactions between third parties which do not affect us).
- termain 11y agoLooks like someone is trying to bring about the Diamond Age.
- fizx 11y agoIt will be hard enough to get widespread social adoption of either blockchain currency or contracts written in programming languages without making them tied to each other. A better choice for an initial compile target for EtherScript would simply be English.
- rout39574 11y agoEnglish is ridiculously colonized by obfuscators already. Think about the Clinton I debates on what the meaning of 'is' is. I think those same obfuscators will be happy to emigrate to any new linguistic country in which their skills can be put to use, but I think the Etherium folks are fantasizing that they can make contracts non-ambiguous. Good luck trying. I think the problem comes in that the contracts must eventually have impact in human minds. However you slice it, there's still an interpretation step. Efforts to make those interpretations unambiguous will be opposed.
- TheMagicHorsey 11y agoThis is a terrible description of Ethereum and trivializes what it is. The interesting parts of a contract are not the deadline and the transfer of funds. Even an escrow service can provide those functions. The interesting parts of the contract are the conditions of the transfer of funds, and how those are evaluated prior to effectuating the transfer, and how the obligations are enforced after the transfer. What makes Ethereum interesting is that it creates a public, decentralized infrastructure for standardized outsourcing of third-party verifiers for each conditional precursor of a contract, and each subsequent obligation. A contract can specify a set of payments and deadlines, as in OPs example, but it can also specify Boolean inputs from trusted third-party institutions that provide various named state inputs into the contract. For example, you could have an input that is Boolean, which says, "Website transferred from Seller to Buyer: Verified by Verisign: True/False", etc. Those conditions can be part of the verification process. AND even more excitingly, small micro payments can be made part of the contract, to the third-party verifiers, as part of the contract itself. I am kind of sick of people who don't understand what the value of smart contracts is, messing up other people's perception of what it is. I award OP zero points, and may god have mercy on his soul.
- detaro 11y agoInteresting additional context, thank you. If you know a better introduction to the topic, please link&submit it. From what I've seen in other discussions about Ethereum, people are kind of sick of not finding an understandable description about what it actually does except making the world a better place ;)
- joosters 11y agoI agree, I think the website is failing because it doesn't touch on a key topic, one that you mention: How does Ethereum handle non-blockchain items? It's easy to see how a blockchain might handle money payments (using its own money system, that is), but far less clear how you can encode contracts for real-world items. Like the example website, for instance. Just because a blockchain entry states 'x' doesn't give it any legal weight, and certainly doesn't transfer real world possessions or ownership. As you mention, one of the key features is verifiers. Say I am selling a website. We need to ensure that the money transfer happens only once I have control of the site. (and presumably, that the site has been built and is complete). We need a trusted party to check that this is so, and the ethereum contract needs to have this verifier written in to it.
- pathdependent 11y agoIt's very cool that you know exactly what is going to happen. Or, at least, you could simulate exactly what should happen. And, if there was some repository of contracts, you could simulate the effects of the system. Such higher-order possibilities are so opaque most of the time. But, I'm not sure ambiguity is a bad thing. Or, at least, there is a dose-specific effect. A lot of ambiguity is bad, but so is none. The flexible Goldilocks Zone is the least fragile -- to society that is, not to law.
- serve_yay 11y agoSo it's a currency, a contract system, a new form of law, a distributed computing system... I think I need to lie down. These explainers I keep reading are not helping. Can anyone tell me whether this is some giant boondoggle circlejerk, or something that is really going to be used widely and perhaps lead to things changing?
- zorked 11y agoIs this going to be widely used? No. It's early technology. Will a successor of this idea change things? Yes.
- dcosson 11y agoPresumably smart contracts would very often depend on input external to the system - for example, imagine a will that says if Person A dies, Person B inherits the millions of dollars worth of Ether at a particular address that Person A owns. Somebody (or some other system) has to be in charge of the input to the Ethereum system to tell it that Person A has died. This seems like a huge single point of failure that doesn't exist with current contracts, if it gets hacked then the money gets transferred irreversibly and that's that. Trying to build a smart contract with any kind of "real world" dependency like this seems equivalent to using a crypto system with an extra key that the government controls, there's a single point of failure that could compromise the whole system.
- szx 11y agoWhile I generally agree with your point, it seems to me like that specific scenario could be solved with a dead man's switch contract. Not ideal, but still better than other cases. I got the impression that the answer you'd get from the Ethereum team is: at the worst case, this is just as bad/good as the current system - i.e. real world effects have to be mediated by an executing authority, same as a real world contract. They would add (and I agree) that smart contracts still have advantages, even in this case.
- dcosson 11y agoYou're right, the dead man's switch is interesting here. I wasn't thinking about the ability to reference a fairly precise point in the future via block number instead of an external input to the system. Don't get me wrong, I'm pretty excited about smart contracts. It just seems like there are a lot of things that we don't think much about currently because our current system is generally pretty forgiving in its fuzziness, but that could have big consequences (and introduce new incentives to act badly) in the world of script-controlled, irreversible contracts.
- deleted 11y ago[deleted]
- natrius 11y agoYou can decentralize the reporting of an individual's death using Schelling point consensus, which is what we use to decide Augur's prediction markets on Ethereum. In brief, we distribute a token to a "reporters." At the appropriate time, reporters submit their decisions about events. Reporters who deviate from the consensus lose some of their token balance, which is redistributed to the honest reporters. If an event is ambiguous, reporters report that fact itself instead of guessing at what everyone else will report. Oracles will be fine for some use cases. Schelling consensus works for others. There are many ways to get real world information into Ethereum, and many ways to reflect how well real world actors adhere to their commitments.
- mannykannot 11y agoI have not seen any clear explanation of how these networks of interacting contracts will be verified, so you know they will work the way you intend. Anyone with any knowledge of the formal verification of software written in Turing-complete languages knows that it is difficult, and it is something that not even many programmers know how to do. Until I see a plausible answer to this question, I have to regard the sort of future presented here as a flight of fantasy.
- kang 11y agoBitcoin transactions are scripts that execute sequentially and are very restrictive. Ethereum instead took bitcoin and replaced that scripting language with a turing-complete language. Now, consider the conditional operator in the given example. "If a transaction occurs.." is the condition. ONLY the conditional of transaction types can be verified by the program because it is inherent in the network. For every other conditional, for example, "if team A wins.." the program has to consult a third-party. These are known as 'oracles' in ethereum lingo. Now since we are trusting a third-party, why can't we simply use bitcoin and even let the decision script be hosted on the third party? For the program to be able to take decision on a real-life event, only the occurring of a transaction is the type of event it does not need a third-party for. And trusting is all the problem there is. * Bitcoin's script not being turing-complete is a feature because it specializes the use-case. Theoretically, if ethereum allows a turing-complete language to be executed, a code could be written to hack the system itself. Ethereum handles this by executing in a virtual environment. Thus ethereum is essentially a abstraction on bitcoin and introduction of a new currency token (ether) is unnecessary. * The vision of ethereum is very desirable. Although Ethereum does not make it possible I want such a system to exist. My limited understanding is that for a system to exist, we need an algorithm to be able exchange private keys between two parties without trusting each other. We need a homomorphic secret sharing but without a dealer. In a Blakley scheme, both parties chose their own planes; we need the intersection of planes, the line, to be our private key and for everyone to be able to know the public key for the same without the private key being known to anyone. Does anyone know of such an algorithm, because solving this problem will also truly decentralise cryptocurrencies like email.
- bachback 11y agoYes, the problem is about not what happens on one machine, but N machines globally. That is a system that scales linearly and does not use proof-of-work. One needs to solve the Byzantine General Problem in a more general way than Bitcoin does.
- chriswarbo 11y ago> Now since we are trusting a third-party, why can't we simply use bitcoin and even let the decision script be hosted on the third party? One reason which springs to mind immediately: the entity running the script always has complete control, whilst we may choose to grant limited control to third parties. For example, we might define a set of separate, potentially independent, verification conditions, and perform some action when 2/3 of those conditions are met. Manipulating such a contract would require collusion by many of those third-parties; and it would also make contracts more robust against technical problems.
- natch 11y agoIn the samples there is an unbreakable marriage contract where divorce is only possible if both parties agree. Scary.
- burritofanatic 11y agoWhat is really interesting is when parties sue each other in court over Ethereum contracts. Courts will always be involved.
- vezzy-fnord 11y agoIsn't fuzziness a feature of most legal codes? Treating the law like an absolute immutable contract sounds anathema to a healthy judicial system. I'm not sure why some technologists have such a fascination with legalism. I'm not against the idea of digital government and having laws be distributed under a free documentation license with the ability for citizens to discuss and amend laws. A standard version control and issue tracker model sounds much more appropriate, however. Perhaps even just email and diffs, so as to have a barrier to entry.
- ris 11y agoYes, there are some things that make me uneasy about this attitude of Ethereum being used as a kind of law. The problem is, traditional law has a some room for the idea of something being "reasonable" or not. I fear it would be quite easy for an disreputable dealer to draw up contracts in code in an obfuscated way, perhaps having hidden subversive behaviour, or clauses that behave in a way different from how a brief inspection would suggest. This is of course possible in standard law too, hiding clauses in impenetrable legalese. However, in standard law (as far as I know), such tricks don't tend to stand up in court as the behaviour is considered "unreasonable". Ethereum, being self-enforcing, gives no recourse to victims of tricksters. It's all set in stone.
- bachback 11y agoGood observation. There is a continuum in legal language between expressive power in the natural language and the legal formal language. "Absolute immutable contracts" are however very desirable in many cases where people interact with or through machines. Consider that modern computers, in terms of the hardware are extremely deterministic on a macro level, but a lot of the software is fuzzy (UI).
- davidgerard 11y agoIf there is a market for these, why don't they exist already?
- gweinberg 11y agoNo, it's a defect. It's probably futile attempting to write "perfect" law, and probably for the best that jurists look to the law's intent rather than always trying to apply the law literally. But how can it be a good thing if people honestly do not and cannot know what is and is not legal?
- oafitupa 11y agohttp://intheoreum.org http://intheoreum.org
- deleted 11y ago[deleted]
- quinndupont 11y agoFor a less instrumental account, my article with Bill Maurer might be of interest: http://kingsreview.co.uk/magazine/blog/2015/06/23/ledgers-and-law-in-the-blockchain/#top http://kingsreview.co.uk/magazine/blog/2015/06/23/ledgers-an... It interrogates the intersections between law and contracts as it pertains to the shift from Bitcoin to Ethereum.
- logicrime 11y agoThis convinced me to not waste another second on Ethereum. It serves a self-defeating purpose, and I think it's diametric to the hacker ethos. Bitcoin is neat because it can't be controlled, nobody can tax it or pose fees on it. It's free market at it's very best. The bitcoin protocol is weak, but luckily developers are strengthening it all the time. Laws as a general concept are diametric to human nature, and they should be avoided whenever possible, especially in regards to social realms like bartering and contracting and the like.
- HuntStuffs 11y agoThis seems like a neat idea and seems quite ambitious. I guess I'm jaded from all the other crypto-currency and I just can't get excited about this. I fear that this will be the only time I ever hear of Ethereum again, this moment when I read this article.
- chrischen 11y agoSuch a system needs integration with subjective variable sources. For example let's say the website also needs to meet some basic code quality level. They could agree to give a third party exclusive access to set some "quality check" variable. If that's implemented it can be a great way to codify all sorts of legal docs and laws since a lot of legal stuff requires human interpretation at the time of execution.
- jmcmichael 11y agoThe event calculus could be used to specify the behavior of the agents instantiated by ethereum smart contracts. This formalized description of the smart contract (e.g. a legal system) could then be used to verify its actual behavior in the wild.
- anaolykarpov 11y agoI wonder how such things as "the tyranny of the majority" will be handled, because if you make a poll at a gang rape, 9 out of ten will vote to continue the rape.
- what-no-tests 11y agohttps://imgflip.com/i/oz3mz https://imgflip.com/i/oz3mz
- kelvin0 11y agoI wonder if it is possible to pass an actual law which would render digital 'contracts' illegal. So all lawyers become coders/analysts? I find the idea interesting, but in reality this is never going to go further than an academic or research project ...
- ZenoArrow 11y agoPerhaps I'm wrong, but the simplest explanation of Ethereum appears to be that it's a way of specifying and sharing contracts. I think the whole digital currency thing muddies the waters. People, myself included, hear the word currency and think of something we earn and spend, but then you hear about all the other uses of Ethereum and wonder what that has to do with money. What I've just realised by reading this article is that contracts are what Ethereum is all about, the currency aspect is just one of the many use cases. Laws are another example of a contract. The base class is contracts, everything else is a subclass on top of that.
- iMark 11y agoWhat's a contract? (Playing devil's advocate a little) (edit: for the sake of pedantry, assume I did indeed mean contract)
- ZenoArrow 11y agoAssuming you meant contract, I'd say it was a formal agreement between two or more parties. Will that do?
- iMark 11y agoNot really, no. I actually have a decent understanding of what's involved regarding Ethereum, but assume for a moment that I don't. Statements like "a formal agreement between two or more parties" are of little use to someone starting from ground zero.
- ZenoArrow 11y agoI can try to put it in plain English if you think it'll be confusing to a newcomer. Before I try, let's explore how Ethereum is described by those who develop it. The home page seems as good a place as any. https://www.ethereum.org/ https://www.ethereum.org/ Here's what the first paragraph on the homepage describes Ethereum as... "Ethereum is a decentralized platform that runs smart contracts: applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third party interference." So even the Ethereum developers describe the core use as contracts. It doesn't strike me as a controversial idea. How would you describe Ethereum?
- davidgerard 11y agoSmart contracts are one of the worst ideas ever conceived. Nobody actually wants smart contracts, for excellent and obvious reasons. Nerds think they're a good idea because they'll sort out all the annoying grey areas in social human interaction. Dr. Strangelove is literally about an unstoppable smart contract going wrong. No business actually wants smart contracts - they always, always want the option of lawyering out of a bad deal. Or stopping it if the government gets pissed off and says it will penalise you to a crisp if you proceed with that smart-arse contract you just put on the blockchain. No consumer wants smart contracts, for the same reason "no chargebacks" is a loser. You always want a human to be able to fix the problem. The only use I can think of for smart contracts is for businesses to screw over customers who have no other option, c.f. mandatory arbitration clauses. Note how the standard example of a smart contract is a car that stops working if your payment fails. Or the Internet fails. Unstoppably. Immune to human intercession, circumstances, etc. (Such locked cars already exist, only bought by people who have no other choice.)
- EGreg 11y agoIt comes down to prior restraint. With most laws, there is the possibility of breaking them and maybe you have to face the consequences. With this stuff, you won't be able to use the stuff for what it wasn't designed for. Stronger guarantees. It's like a car that slows down in a construction zone, and is unable to go any faster, instead of cops giving tickets. Like the 90 year old engineer guy behind the Venus project says in his interviews. That can be useful. Not for everything, but for a whole lot. The current DRM stuff works like this.
- heckerhut 11y agoThe author falls into many traps of the law vs code debate. There is a big difference between wet and dry code, as Nick Szabo, the original inventor of 'smart contracts' put it. Admittedly, it is very stimulating to entertain thoughts in the direction the author takes his description. But in the end it is not a fruitful approach to understand ethereum and other smart contract systems. Law has an open texture. It is deliberately broad and ambiguous to allow specific real life events to be subsumed under the conditions of a given regulation. Legal provisions do not have to be formulated in a natural language. They can be expressed in pictures or even in (pseudo) programming code. What is important is who (or what) parses and interprets the code. Wet code, i.e. legal provisions, are interpreted by humans. Nothing else can (currently) understand the "actual meaning" of a legal provision. Dry code is the opposite in that it is not interpreted by humans but by machines. Smart contracts - the official (but historically inaccurate) name of those programms that are hosted and executed on the ethereum distributed virtual machine - are written in dry code. Ethereum is a 'rich and trusted' execution environment for software. 'Rich' because the ethereum virtual machine has access to a whole bunch of data that carries deep meaning to specific individuals and human society in general (or rather might some day). Trusted because the code execution is performed in a way that is extremely reliable. Whatever the competing interests behind the outcome of a specific computation may be, influence over the network may only be gained through computational resources (and at a later point probably stake/ether) which - in the real world - means economic resources. The achilles heel of a network such as ethereum (and bitcoin) is that "the crypto-economy" needs to stay causally disconnected from the other economy, that uses blockchains as a tool to run trusted fiduciary code (currency, insurance, identity, reputation). "Law vs Code" is a very interesting talk to be had but there is no room for a "doomsday argument". Both are separate but intertwined domains. A fruitful approach to understanding the relationship between code and law may be Luhmann's system theory. [further reading] https://en.wikipedia.org/wiki/Niklas_Luhmann https://en.wikipedia.org/wiki/Niklas_Luhmann https://medium.com/@heckerhut/smart-contracts-platforms-and-intermediaries-c3d30f5182a6 https://medium.com/@heckerhut/smart-contracts-platforms-and-...