
The Blockchain Application Stack - demianbrener
http://joel.mn/post/103546215249/the-blockchain-application-stack
======
murbard2
There is tremendous value in distributed ledger, but also tremendous empty
hype at the moment. As a rule of thumb, people who tout distributed ledger
based solutions ought to ask themselves the following questions:

\- Can this be replaced by a centralized database?

\- If not why?

\- If security / trust is a factor, what is the exact threat model?

~~~
ThomPete
I think at least on the first on you are asking the wrong question.

The point is not whether it can be replaced by a centralized server the point
is whether it's more powerful open than closed.

Personally i find that any system where everyone can become the the validator
will always be better in the bigger picture than if they can't.

~~~
murbard2
That depends on your threat model, that depends on what you're trying to
achieve. There are very large engineering costs to using this type of
solution, and in many cases, the benefits are much lesser.

~~~
ThomPete
Sure but there are many many cases where the cost is much less.

~~~
murbard2
There are, but I contend that most of what is being hyped makes no sense. What
are the applications that can truly benefit from this model according to you?

~~~
ThomPete
See
[https://news.ycombinator.com/item?id=8659549](https://news.ycombinator.com/item?id=8659549)

Also I think too many are focusing too much on the current state of Bitcoin
instead of thinking about the potential.

The crypto-protocol is a product of 20years of research just the last 2 years
alone we have seen a host of really intersting ways to improve it and make it
less power-consuming.

Sidechains, Stellar and so on we have only just begun to scratch the surface
and so I see no reason to be so negative around people trying to think about
it conceptually.

But each to their own.

~~~
murbard2
> Digital Pokemón Cards. Basically the ability to create digital collectors
> items.

Benefits from being distributed, but can use a simple, trusted timestamping
service given the low stakes.

> E-books that could gain value. You could sell ebooks at a premium and allow
> people to re-sell them. Because the history of their ownership is recorded
> you could even see them gaining value if they had been owned by a celebrity.

Celebrities are, by definition, not anonymous, double signing is not a
problem. Doesn't need a public ledger.

> Private but public healthcare records for research and usage. Store the
> health-records publicly as personas but allow individuals people to link it
> with their identity. This would help with research in completely new ways.

That's a distributed database with signed edits. Since it doesn't require to
maintain a mutable singleton, it doesn't need a ledger at all.

> Voting made public but anonymous Make it impossible to fake voting results
> by making the results available for everyone.

Potentially a good use of a decentralized ledger.

> Artificial Intelligence Using the protocol to create automated consensus
> models.

Also potentially a good idea. Those two ideas seem to be related to this
proposal, [http://tezos.com](http://tezos.com)

> Companies without owners Build a company with a political purpose without
> any owner.

Potentially a good idea.

~~~
ThomPete
Don't you think it's fair to say that there are enough potential ideas there
that are ledger based?

We can always discuss the specifics all of these can be centralized but they
benefit from being decentralized.

~~~
murbard2
Centralized vs decentralized is not a box to check, there are major costs
associated with it.

Imagine for instance someone suggesting that a supermarket offers coupons on a
distributed ledger. Sounds like a good idea? No, it's dumb. It's dumb because
you trust the supermarket to honor the coupon anyway... there's no credible
threat model here.

OK so we've figured our supermarket coupon system can be run on a centralized
database. Well, you suggest, sure we can, but why not just have it
decentralized if we can?

Because it's expensive. It's expensive in terms of engineering to interface
with the blockchain, it's expensive to wait for blockchain confirmations, it's
expensive to rely on the non-malevolence of a few mining pools. And did I
mention there is about no benefit?

However, this is not the most offending use of blockchain technology. You know
what, maybe that supermarket gets to federate their coupons to other stores
and you can start to see an engineering case. And maybe you're running this in
Argentina and there is a credible threat that the government might want to
meddle in you coupon scheme, maybe for price control. OK, then maybe you have
a case. No, the worse use of blockchain technology is when there is no need
for a global mutable singleton.

The whole idea of a cryptocurrency is that you need to have an irreversible
consensus. This is the crux of the double spending problem, you need to
dissipate heat to be irreversible (yes actual heat). This heat could come from
"overwriting" your key, but that's hard to prove, so instead Bitcoin uses the
heat from the ASIC. I'm simplifying a bit, but this can be made rigorous.

However, I've heard many proposals where there is zero need to maintain such a
consensus. You mentioned medical records, that's one. People have been talking
about running webforums or websites on top of a distributed ledger. Most of
those proposals are braindead.

~~~
ThomPete
That really depends on what you see the technology solving.

For instance it can solve the problem of very slow moving governments and
allow people to build solutions that might be necessary for the survival of
that society then thats actually quite useful to be able to build your own
rules that even if they try can' be shut down by a central unit.

------
ThomPete
For those asking about what kind of applications could be created on top of
this here are a couple of ideas.

 _Digital Pokemón Cards._ Basically the ability to create digital collectors
items.

 _E-books that could gain value._ You could sell ebooks at a premium and allow
people to re-sell them. Because the history of their ownership is recorded you
could even see them gaining value if they had been owned by a celebrity.

 _Private but public healthcare records for research and usage._ Store the
health-records publicly as personas but allow individuals people to link it
with their identity. This would help with research in completely new ways.

 _Voting made public but anonymous_ Make it impossible to fake voting results
by making the results available for everyone.

 _Artificial Intelligence_ Using the protocol to create automated consensus
models.

 _Companies without owners_ Build a company with a political purpose without
any owner.

~~~
jmonegro
You should check out deckbound.com

~~~
ThomPete
thanks looks interesting.

------
sutterbomb
I'm curious to hear more concrete examples of where companies can actually sit
(and be profitable) in these new layers. I understand the basics of the
blockchain, and always find myself nodding my head in agreement while reading
these types of articles, but by the end of the article it seems like it just
washed over me and I don't have anything concrete to hold onto.

~~~
jmonegro
I'll try to drill down to specifics in the series of posts that will follow
this, but I wanted to set the general stage first.

To answer your question what's unsettling about this (and not in a bad way)
that since so much of this stack is commoditized it becomes very hard to
extract value where traditional software business do (20-50% cut rates, etc.)
so it is much harder to be profitable, but at the same time it's much easier
to bootstrap an application when you have access to an open pool of data.

I think it's an interesting dynamic that, if this turns out to be true, will
really change the way software businesses work at the application layer. But
I'm 2-3 posts away from doing a deep dive into that part of the stack –
there's some things I'd like to go over first.

~~~
demianbrener
Given that value won't be created in the same way as traditional business do
now, what plausible business models do you foresee for software companies
operating in this landscape?

------
Animats
All you get from the Bitcoin blockchain is the ability to store some public
data that's hard for anybody to alter once the data has settled. That's useful
for a few special problems, but not widely useful.

The cost of maintaining that blockchain is insanely high - all those giant
"mining" operations. Large numbers of machines have to have a copy of the
blockchain and track all updates to keep everybody honest. It takes about half
an hour before a data item can be considered solidly committed. Even for
Bitcoin itself, this is is an operational headache.

If all you need is a certified timestamp on something, several European
certificate authorities run free trusted timestamping services. You send in a
secure hash of something, they add a timestamp, sign that, and send back a
reply.

~~~
groby_b
"All you get" is a distributed & anonymous consensus algorithm that's
resilient to malicious actors.

 _That_ is the value. If you don't need these properties, sure, you don't need
blockchain.

As for the maintenance cost: Proof-of-Stake is making interesting progress.
There are initial ideas around not having an entire copy of the blockchain.

I'm not aware of commit-time reduction work, but would welcome pointers.
(Either way, you'll always have a commit-time issue in a distributed system.
You might reduce it somewhat, but it won't go away.)

~~~
jaekwon
Tendermint has the strongest guarantees against double-spend attacks.

[http://tendermint.com/docs/tendermint.pdf](http://tendermint.com/docs/tendermint.pdf)

------
jaekwon
This inspired a post here, [http://tendermint.com/posts/sidechains-without-
pegging/](http://tendermint.com/posts/sidechains-without-pegging/)

> Sidechains is more than one-way or two-way pegging, and beyond Bitcoin
> Maximalism.

------
woah
" _The_ Blockchain"? Let me guess, this guy holds bitcoins.

~~~
jmonegro
Just a few for coding experiments, only a few dollars' worth.

~~~
woah
Sorry, just used to the Bitcoin community, who tend to act like the blockchain
they have speculated on is the only one that has ever existed. What are your
reasons for bitcoin maximalism?

~~~
jmonegro
I don't like that term but I'll bite.

Bitcoin's liquidity and network effects, in a nutshell. I don't think a
competitor will be able to match Bitcoin on those fronts. And it's not just
about the developer and technology community, it's about the media,
governments, companies, investors, regulators, financial institutions and even
regular people who are getting used to the name Bitcoin.

But, honestly, it doesn't matter. This stack is blockchain-independent.
Whatever blockchain or currency ends up succeeding in the long run doesn't
take away from the fundamentals of this stack: decentralization of data and
processes, cost reduction, and consumer power.

I focus on the Bitcoin blockchain because that's what the market has chosen to
build on top of because there are no better alternatives yet. We'll see what
happens if and when they come (e.g. ethereum), but I worry that it'll be too
late by then and the market won't take it.

------
chm

        unfortunately time coinstraints prevented us from doing a deep dive
    

Was the typo intentional?

