
Ethereum is Doomed (2016) - petethomas
https://nakamotoinstitute.org/mempool/ethereum-is-doomed/
======
this_user
The issue with smart contracts is that the people behind the idea don't seem
to understand that the issue with traditional contracts does not lie in the
parts that a clearly defined, but in those that are not. These are the parts
where the legal system comes into play in order to reach a decision on grey
areas like that.

The other problem is the obvious issue that smart contracts make the implicit
assumption that we are able to write bug-free code. Evidently, that is not the
case.

There clearly needs to be some sort of mechanism to sort out issues that may
arise from this. But in practice Ethereum has replaced an imperfect but robust
mechanism in the form of the legal system with one guy, who is accountable to
no one, making discretionary decisions with no guidelines to bind him.

~~~
hanniabu
The platform has more far reaching use-cases than being used to replace legal
contracts, and written contracts can have "bugs" just as smart contracts can.

~~~
TomVDB
Do these far reaching use-cases matter in practice?

> ... written contracts can have "bugs" just as smart contracts can.

The onus on smart contracts is to come up with use cases where they are
superior to written contract, not to find examples where they are equally
flawed.

~~~
hanniabu
The purpose is to remove the middleman to have an autonomous outcome and by
that they have succeeded. However, just as contracts have evolved over time
after iterations have been found to have "bugs", I'm sure these will as well.

~~~
root_axis
It does not cut out middlemen it only renames them to "oracle".

------
viach
This article judges Ethereum as a potentially useful tool and author proves
such a tool has no advertised usefulness in it so it's doomed.

I think this is wrong approach. Ethereum and most of the altcoins are not
tools aimed to solve a problem. They are gambling machines. What matters for
them is marketing, charismatic leader and wide audience (developers). Ethereum
has all of these.

------
Nursie
>Because the code of the DAO is a legally-binding contract, how can you argue
so as to convince a judge that some behavior of the program is really a bug?

Is it? I know that some people intend the code to be law, but I suspect
if/when this butts up against the real legal system, we'll see a variety of
different interpretations.

Just because someone left their window open doesn't mean you get to take all
their stuff.

~~~
hanniabu
I'd imagine it'd follow the same rules of a faulty traditional legal contract.
If the wording of the contract is wrong in a traditional contract, are
exploitations valid? Does the decision depend on context?

~~~
300bps
Real legal contracts are invalidated all the time for not meeting the basic
requirements of a contract:

[https://www.nolo.com/legal-encyclopedia/contracts-
basics-333...](https://www.nolo.com/legal-encyclopedia/contracts-
basics-33367.html)

~~~
howard941
There's an equitable remedy for that, a quasi contract, yielding quantum
meruit damages if it's any good.

[https://legaldictionary.net/quasi-
contract/](https://legaldictionary.net/quasi-contract/)

------
woah
This article has aged badly. There is currently a huge amount of money in
intricate smart contracts on Ethereum, not being hacked.

For example, there is $250,000,000 worth of Ether in the MakerDAO contract,
collateralizing around $70,000,000 in DAI, a decentralized stablecoin that has
maintained its peg to the dollar during a 90% price drop of the underlying
asset, Ether.

This blog post reads like someone in 1992 using some obscure hypothetical FTP
server bug to argue that secure computer networks are by definition
impossible.

------
atomical
> The legal implications of this hack are more interesting than the hack
> itself. Because the code of the DAO is a legally-binding contract, how can
> you argue so as to convince a judge that some behavior of the program is
> really a bug? The DAO provides nothing other than its own code to specify
> how it is supposed to work. For example, there is no specification in a
> formal language, or proofs as to its correctness. If the Ethereum team knew
> how to test software, they might have produced something like that, which
> also could have provided corroborating evidence that any bug was unintended.

You could say the same about many hacks that involve money and assets. Judge,
the software let me in! That was the original intention of the programmers!

To get away with something like this you're going to have to convince a judge
or jury that exploiting a bug in a software program entitles you to a huge
payout. I suspect this might fall under unjust enrichment.

~~~
Lab3301
> You could say the same about many hacks that involve money and assets.
> Judge, the software let me in! That was the original intention of the
> programmers!

The difference being that ethereum smart contracts are supposed to be
autonomous, hence "The Code is the Contract".

If you need or rely on outside parties then why not just have a standard
contract?

~~~
hanniabu
They are autonomous, but sometimes have unintentional outcomes. Same goes for
written contracts. Sometimes they're poorly written/worded and loopholes are
found.

------
mrdoops
Tends to take 12 years for a programming language with traction to really take
hold. Maybe 4-6 years for the language to reach maturity so long as it was
well-designed and implemented; given early adopter feedback is present. Smart
Contracts are best served with a well-typed, highly safe, and formally
verifiable language feature set. You need confidence that the smart contract
will operate without error once deployed. Implementation-wise I expect the
ideal smart contract language will have a robust typing system with functional
programming defaults where state is largely immutable and highly explicit.
Probably some variation of an ML language.

~~~
root_axis
Such languages won't make it far because the software they produce isn't
really useful in industry or business. Whether or not there may be some future
application for "dApps", currently none exist so there isn't much incentive
for learning a dApp language (except pure curiosity about the platform) when
you could learn a language that can produce useful software (e.g. Kotlin,
Rust, Golang, C# etc)

~~~
mrdoops
I disagree a smart contract language is without value to business - but I
agree it's speculative and unclear at the moment. The best we can do is look
at cloud platform and programming language maturation/adoption to get a feel
for what a decentralized app platform will take in time and engineering
effort.

The idea being we're a few years at least before language and infrastructure
can be mature enough to have value for most users beyond earliest of adopters.
The other languages you've mentioned are much further along than any "dApp"
platform at what they do. Decentralized application platforms like Ethereum
are a new space with new requirements but, as far as I can tell, necessitate a
new language to satisfy unique requirements. The hot-take is that Solidity is
probably going to take some big changes to make it much further. I've not been
impressed with it.

~~~
root_axis
It is useless at this time. There are no legal businesses that are now
possible that weren't before the advent of cryptocurrency and criminal
businesses still existed in the cash-only world (although they are easier to
facilitate with cryptocurrency).

> _we 're a few years at least before language and infrastructure can be
> mature enough to have value for most users beyond earliest of adopters_

There isn't really a clear explanation of why that would be the case. The
bottom line is that smart contracts require a trusted oracle to feed data into
the system, at that point, the advantages over a centralized system are
essentially zero. There is no reason why anyone except enthusiasts, tinkerers
and criminals would get involved.

------
holoduke
Noone needs etherium or any other crypto tech. Only gamblers, believers and
anarchists. There is not a single usecase besides gambling where crypto would
be a good replacement for something existing. Cars did replace horses, because
they were fsster and bigger. With crypto there is this theoretical dream of
having a certain solution running completely decentralised, without an
authority abusing it. That's not a commercial solution.

~~~
rkachowski
> Noone needs etherium or any other crypto tech

There's a huge difference between something being necessary and something
being useful. I'm in no way an evangelist, but I can at least imagine some
interesting applications of blockchain.

------
DATACOMMANDER
This comment itself isn’t useful, so I expected to be down voted, but I was
just wondering if there’s anyone out there—who doesn’t have an ax to grind—who
can comment on the practicality of Ethereum. Is anyone using it to do
something useful that couldn’t be done (or couldn’t be done nearly as well)
otherwise?

~~~
mimixco
It sounds like it could be practical, but in practice, it can't. You can't
just go around having everyone run code they can't audit. That's insane. It
also causes terrible slowdowns in the network which is why they can't scale.

------
mimixco
The idea of a "world computer" where everyone runs everyone else's code and
branches to code they cannot see was a security nightmare and a mistake from
Day 1.

Satoshi left out Turing-completeness from Bitcoin for this exact reason.

------
KasianFranks
Anybody have rust removal for my pick? May need some for my shovel too.
Getting blockchain confused with a capital raising trading vehicle is the
wrong move.

------
decentralised
Ethereum will have a new upgrade on the 16th of January and is well on its way
towards the 2.0 vision of a PoS consensus, sharded chain and eWasm / EVM
execution environment over the coming months and years.

Posting stale criticism (3 years old) about a technology that is still
evolving at this time strikes me as FUD.

