This is what it comes down to IMO. Anything cryptocurrency related is just surrounded by a cloud of shady characters and scammers, even though the tech is legit. You just can't trust anyone, nor their intentions. Living your life and working in a constant state of paranoia like that is awful.
It's also surrounded by a ton of cargo cultism, poorly considered engineering, people who don't understand the math but claim to be gurus, and strange parasitic political views.
It's a frustrating community to engage with because it has redefined a lot of longstanding terms to (in my opinion) make itself look better and smarter. It also is a constant roiling tempest of non-self-reliant-but-fantastically-dedicated-to-anarcho-capitalists-type folks, which can be terribly tedious to deal with.
For example, ask a btc engineer if they have byzantine fault tolerance. Then ask anyone else. Ask them if they have eventual consistency. Then ask anyone else.
Even if the tech is "legit" it's encredibly inefficient. We're spewing off tons of CO2 just to verify the block chain, but we have plenty of technologies that can do the same with a minuscule amount of energy.
The problem is that they want a system that's trustless and that's simply not what most engineers care about. We want a system that's fast and efficient.
> The blockchain community is immature and historically unwelcoming.
I can't disagree too much about the immaturity, but you don't see too much more of that in the deeper technical circles than you might see on the Linux mailing list. Room for improvement? Plenty. But it's also not grossly out of line as long as you are in the right places.
The 'unwelcoming' bit though is more justified. Blockchain design is like cryptography - security is very important, and one tiny mistake means that your design is completely unviable. And if that tiny mistake occurred early in your design process, it may be too deep to be easily routed around.
Designing secure blockchains is very hard. As a result, the first year or so you try to improve on blockchain systems you usually end up with a bunch of broken stuff that nobody appreciates at all. The same is true if you are trying to make a better hashing algorithm, or doing quantum resistant cryptography. Except with blockchains people haven't learned to expect it to be this difficult to innovate yet, so it feels a lot more hostile.
That will fix with time. As more things blow up in production, people are realizing more and more that blockchains are tricky, and that good designs take a lot of expertise, a lot of collaboration, and are very rare. That will make it seem less unwelcoming when your intro to blockchains is 'well, this thing you are proposing doesn't work for at least 10 reasons, and here they are...'
Anything that's related to profits and democratized will attract all kinds of characters. Democratization lowers the barrier and profits provide the incentive.
The choice to corner cryptocurrencies and choose to see the shady characters in this combination is an artificial one based on what you can and choose to "see". The same shady characters are in finance, fund raising, and perhaps around your desk. They may be less obvious or you may be more tolerant towards the corporate backstabber, but they're still there.
That's not true for all companies. Take Ripple or Coinbase, for example. Both have worked from the beginning to be legit. Ripple's various technologies (including their currency) are being adopted by banks across the world. And Coinbase has worked with the Feds from the beginning to make sure they were complying with regulations. Granted there are a lot of bad actors in crypto, but there are good ones, too.
I've spent a decent amount of time understanding blockchain at this point. Am I wrong in saying that it's really just a data structure for solving a problem (like a tree or array), but a lot of the hype seems to be people trying to find commercial applications to use the specific data structure?
I mean, no one says 'lets go find a good use for an array,' you sort of pick the array after you have an idea
Proof-of-work blockchains were developed to solve a problem that only exists in a small percentage of distributed engineering use-cases. Unless you need to build a "censorship-free" peer-to-peer ledger distributed among untrusted, anonymous participants, the complexity costs and latency and computation costs simply aren't worth it.
It's the same reason that Ford doesn't build a tunnel under the US/Mexico border to ferry car parts to America.
Proof-of-work is simply not sustainable (energy-wise), IMO, for the foundation of a global system. The stability of whole ecosystems is predicated upon those ecosystems being attractive to people who want to make money by competing to solve hard problems by brute force.
That's a lot of energy going into a system that can commit a new block of transactions once every 10 minutes on average. It solves a problem in an interesting way, but it's nowhere near quick enough or efficient enough to solve 99% of engineering problems. That's why only 1% of engineers are working on it.
Very good points. In complex financial transactions (at least within regulatory domains), my understanding is that rollbacks can and do happen. I initially thought across borders/regulatory domains, blockchain will shine. I haven't seen a killer application just yet. It is a bit frustrating because the tech is indeed interesting .. we just don't have multi-billion dollar real (as opposed to imagined) use-cases beyond the distributed ledger.
Came here to say essentially the same thing. One possibility would be a government mandate that financial transactions are done with a blockchain in order to have transparency. I don't see that as likely though as the use case is pretty tenuous.
I work in distributed systems, and I consider blockchain very interesting. It's so interesting I click on a lot of links on Hacker News, and sometimes I take an afternoon on a weekend or vacation to read through some of the papers.
I just have a well-paying job and I don't see any opportunities lucrative enough for me to jump away. Why? Bitcoin is an experiment. Reading through the paper, Bitcoin does not scale to general purpose commerce. All of the other technology appears to be "me too." When I first heard about Etherium, the bullshit smelt so bad that I couldn't even look at the paper.
What will get me really interested? Pay me to implement a real-world use case that fits the scalability constrains of blockchain. This isn't things like general-purpose currency, or general-purpose contracts. Someone needs to pay me to implement something that requires blockchain; instead of someone paying me to implement a blockchain and then going and finding a use for it.
> Someone needs to pay me to implement something that requires blockchain
It's difficult to find something that requires a blockchain, because the unique distinguishing feature of blockchains is the lack of any trusted central authority.
If you have a trusted authority, then you can do anonymous currency, money transfers, smart contracts, or anything similar 1000x more efficiently with a single server, an API, and some backend logic. All the distributed effort goes into making these possible at all without any central authority who can ban or filter transactions.
And for most real-world projects, having a government agency or tech company working as the trusted authority works just fine. It's only shady to illegal businesses where the lack of one is required.
As a "coincidence", these guys are hiring. Although, it doesn't look like folks working there [0] will be able to explain meaning of "paxos" in their domain name
paxos.com == pets.com of blockchain Ah, feels like it is 1999 all over again. To the moon!
>Someone needs to pay me to implement something that requires blockchain; instead of someone paying me to implement a blockchain and then going and finding a use for it.
That would require those who are arguing for "blockchain technology" to admit that they are Bitcoin poor and would rather talk than trade.
Distributed consensus algorithms are super interesting, but most distributed databases run in a trusted context. So instead of spending time optimizing a trustless system, database engineers optimize commit protocols like Calvin[1], because high-throughput scalable consistency solves so many business problems.
When you have a general purpose globally consistent distributed database, many of the problems that look like blockchain algorithm problems turn out to be standard application programming tasks. Eg a distributed ledger is just a table in a distributed database.
TL;DR, it's gonna take a real long time to make blockchain useful, if it even is.
Further, I have yet to see a real production application of blockchain that isn't a crypto-currency. Everyone and their grandmothers has invested in it, or started a company or w/e. But has it actually been used to solve another problem? Blockchain was the SOLUTION to the PROBLEM of how do I make a cryptocurrency. It now seems that some folks are trying to make a PROBLEM out of a SOLUTION in every other domain.
Blockchain is not the solution to the problem of how to make a crypto currency. Blockchain is the solution to the problem of how to cooperatively timestamp documents.
Makes some sense freight shipments involve a lot of parties who don't completely trust one another, and they've got a lot of information to move back and forth between one another.
If by "real production" you mean "implemented profitably by classic corporations", then you're not really getting the crypto-anarchist philosophy that espouses the view that blockchains are a generally useful tool. The long-term crypo-anarchist plan (lol) is to replace corporations with ephemeral networks of strangers who, as a group, accomplish the tasks traditionally handled by corporations and governments.
I had the same observation that the blockchain is "just" a distributed log database with horrific performance overhead...
...but it's not true that nobody's working on it: quietly, Serious Engineers(tm) working for blockchain companies and you can expect big improvements in the next few years.
This rant is nearly isomorphic to the whining in the early 90s by the academics and SunRPC & CORBA fanboys vs HTTP and HTML, which its insane parsing and communications overhead. Serious Engineers(tm) showed up, made the early web work, it took off, and... you don't see many HN job posts asking for CORBA engineers.
As with the web, blockchains are exciting because they're a 'looser' and more open protocol than other systems.
Because I have yet to find an actual legitimate use-case for a blockchain. Every task in our modern business world actually requires a central trusted authority.
Edit: not to mention that mining is an incredible waste of time and energy that can instead be put to good use.
Because it turns out the good bits are the ledger of transactions made tamper-evident in a Merkle tree, and we had that with Git in 2005 and it works great thanks.
The bit Git doesn't do: distributed consensus via Proof of Work, because it turns out that a bit of trust is fabulously more efficient.
I predict any good and useful product labeled "Blockchain" will be the cryptographically tamper-evident ledger of transactions, and not any of the stuff that makes a blockchain different to Git.
(Researching the book, I had one developer admit that his "blockchain product" was pretty much a simplified Git in terms of what it offered ;-) )
Too many crooks. Too much hype. Too much ignorance of how the real world works.
I'd be interested in working with large and boring financial institutions on those sorts of projects, because they don't offer the failure modes as above.
I don't really get this article. The transaction rate limit and the wastefulness and limitations of PoW as a fault-tolerance mechanism are brought up but then just hand-waved away.
If we had discussed proof of stake or theorized about how some of these other hurdles like transaction rate could be leaped then sure. Otherwise it's just a list of things any distributed system has to solve for, demonstration that blockchain solves for them (inefficiently) with the undertone of "I bought in on the hype, and you can too".
Append-only, log-structured databases are a great, genuinely useful thing. Zero-trust through proof-of-work is expensive and irrelevant for most use cases.
The goal of the article is to get distributed systems engineers excited about blockchain and invite them to explore positions at Paxos. Ironically none of the open positions are actually for distributed systems engineers :)
I think it's funny the author chose to center the article around that assumption. IMO most engineers related to distributed computing (not necessarily themselves distributed systems engineers) are actually quite aware of the technology and many of the challenges.
Maybe instead of asking this, we should ask the cryptocurrency enthusiasts what area of technology won't be dropped-and-replaced by blockchains, because so far it seems apparently applicable to every single use case in every single industry... By the way, did you guys hear this thing is an immutable ledger?
The "killer app" of Blockchains are the trustless nature of the system. In most practical application, allowing actors without a trust relationship to interact with the log is not a significant requirement of the system. Once you remove that requirement, there are technically superior approaches to maintaining a ledger.
That's why I've never understood all this talk about "private blockchains." Why? What's the point? We already have distributed database systems that are light years faster than blockchains. The ONLY benefits of a blockchain-based approach are censorship resistance and not having to trust the actors in the system. If you don't need either of those two benefits, then there are far better existing solutions for record keeping.
Because we got better things to do than wasting time on bullshit blockchain tech in a bullshit company filled with suits [0] who can produce only... bullshit
The cynic in me thinks "it's a scheme by oligarchs and tyrants to get rid of troublesome /fully anonymous/ cash sold as a utopian scheme to those who are motivated by the promise of a quick rich scheme."
[+] [-] aphextron|8 years ago|reply
>It feels like a get rich quick scheme - https://twitter.com/naval/status/878018839044161536
This is what it comes down to IMO. Anything cryptocurrency related is just surrounded by a cloud of shady characters and scammers, even though the tech is legit. You just can't trust anyone, nor their intentions. Living your life and working in a constant state of paranoia like that is awful.
[+] [-] KirinDave|8 years ago|reply
It's a frustrating community to engage with because it has redefined a lot of longstanding terms to (in my opinion) make itself look better and smarter. It also is a constant roiling tempest of non-self-reliant-but-fantastically-dedicated-to-anarcho-capitalists-type folks, which can be terribly tedious to deal with.
For example, ask a btc engineer if they have byzantine fault tolerance. Then ask anyone else. Ask them if they have eventual consistency. Then ask anyone else.
[+] [-] matt_wulfeck|8 years ago|reply
The problem is that they want a system that's trustless and that's simply not what most engineers care about. We want a system that's fast and efficient.
[+] [-] Taek|8 years ago|reply
I can't disagree too much about the immaturity, but you don't see too much more of that in the deeper technical circles than you might see on the Linux mailing list. Room for improvement? Plenty. But it's also not grossly out of line as long as you are in the right places.
The 'unwelcoming' bit though is more justified. Blockchain design is like cryptography - security is very important, and one tiny mistake means that your design is completely unviable. And if that tiny mistake occurred early in your design process, it may be too deep to be easily routed around.
Designing secure blockchains is very hard. As a result, the first year or so you try to improve on blockchain systems you usually end up with a bunch of broken stuff that nobody appreciates at all. The same is true if you are trying to make a better hashing algorithm, or doing quantum resistant cryptography. Except with blockchains people haven't learned to expect it to be this difficult to innovate yet, so it feels a lot more hostile.
That will fix with time. As more things blow up in production, people are realizing more and more that blockchains are tricky, and that good designs take a lot of expertise, a lot of collaboration, and are very rare. That will make it seem less unwelcoming when your intro to blockchains is 'well, this thing you are proposing doesn't work for at least 10 reasons, and here they are...'
[+] [-] random3|8 years ago|reply
[+] [-] nihonde|8 years ago|reply
[+] [-] shepardrtc|8 years ago|reply
[+] [-] edge17|8 years ago|reply
[+] [-] fokinsean|8 years ago|reply
Isn't that one of the reasons blockchain came to existence?
I know you aren't using that in the same context, it just sounded funny in my head :)
[+] [-] problems|8 years ago|reply
[+] [-] jliptzin|8 years ago|reply
[+] [-] random023987|8 years ago|reply
It's the same reason that Ford doesn't build a tunnel under the US/Mexico border to ferry car parts to America.
[+] [-] andrewstuart2|8 years ago|reply
That's a lot of energy going into a system that can commit a new block of transactions once every 10 minutes on average. It solves a problem in an interesting way, but it's nowhere near quick enough or efficient enough to solve 99% of engineering problems. That's why only 1% of engineers are working on it.
[+] [-] tostitos1979|8 years ago|reply
[+] [-] Patrick_Devine|8 years ago|reply
[+] [-] gwbas1c|8 years ago|reply
I just have a well-paying job and I don't see any opportunities lucrative enough for me to jump away. Why? Bitcoin is an experiment. Reading through the paper, Bitcoin does not scale to general purpose commerce. All of the other technology appears to be "me too." When I first heard about Etherium, the bullshit smelt so bad that I couldn't even look at the paper.
What will get me really interested? Pay me to implement a real-world use case that fits the scalability constrains of blockchain. This isn't things like general-purpose currency, or general-purpose contracts. Someone needs to pay me to implement something that requires blockchain; instead of someone paying me to implement a blockchain and then going and finding a use for it.
[+] [-] ProblemFactory|8 years ago|reply
It's difficult to find something that requires a blockchain, because the unique distinguishing feature of blockchains is the lack of any trusted central authority.
If you have a trusted authority, then you can do anonymous currency, money transfers, smart contracts, or anything similar 1000x more efficiently with a single server, an API, and some backend logic. All the distributed effort goes into making these possible at all without any central authority who can ban or filter transactions.
And for most real-world projects, having a government agency or tech company working as the trusted authority works just fine. It's only shady to illegal businesses where the lack of one is required.
[+] [-] mikeschmatz|8 years ago|reply
paxos.com == pets.com of blockchain Ah, feels like it is 1999 all over again. To the moon!
[0] https://www.paxos.com/our-team
[+] [-] someguydave|8 years ago|reply
That would require those who are arguing for "blockchain technology" to admit that they are Bitcoin poor and would rather talk than trade.
[+] [-] JohnJamesRambo|8 years ago|reply
[+] [-] jchanimal|8 years ago|reply
When you have a general purpose globally consistent distributed database, many of the problems that look like blockchain algorithm problems turn out to be standard application programming tasks. Eg a distributed ledger is just a table in a distributed database.
[1] https://fauna.com/blog/distributed-consistency-at-scale-span...
[+] [-] stephenitis|8 years ago|reply
[+] [-] rafiki6|8 years ago|reply
TL;DR, it's gonna take a real long time to make blockchain useful, if it even is.
Further, I have yet to see a real production application of blockchain that isn't a crypto-currency. Everyone and their grandmothers has invested in it, or started a company or w/e. But has it actually been used to solve another problem? Blockchain was the SOLUTION to the PROBLEM of how do I make a cryptocurrency. It now seems that some folks are trying to make a PROBLEM out of a SOLUTION in every other domain.
[+] [-] cperciva|8 years ago|reply
[+] [-] sigstoat|8 years ago|reply
Maersk is interested http://fortune.com/2017/03/05/maersk-tests-blockchain-based-...
Makes some sense freight shipments involve a lot of parties who don't completely trust one another, and they've got a lot of information to move back and forth between one another.
[+] [-] wolfgke|8 years ago|reply
Do
- Bitcache (https://en.wikipedia.org/wiki/Bitcache) - in development
- Namecoin (https://en.wikipedia.org/wiki/Namecoin)
- Steemit (https://en.wikipedia.org/wiki/Steemit)
- Synereo (https://en.wikipedia.org/wiki/Synereo)
count? I know, formally these can be considered as a cryptocurrencies, but I would not consider this as the central purpose of existence.
[+] [-] devrandomguy|8 years ago|reply
[+] [-] asah|8 years ago|reply
...but it's not true that nobody's working on it: quietly, Serious Engineers(tm) working for blockchain companies and you can expect big improvements in the next few years.
This rant is nearly isomorphic to the whining in the early 90s by the academics and SunRPC & CORBA fanboys vs HTTP and HTML, which its insane parsing and communications overhead. Serious Engineers(tm) showed up, made the early web work, it took off, and... you don't see many HN job posts asking for CORBA engineers.
As with the web, blockchains are exciting because they're a 'looser' and more open protocol than other systems.
[+] [-] vocatus_gate|8 years ago|reply
https://www.gwern.net/Bitcoin%20is%20Worse%20is%20Better
[+] [-] Rjevski|8 years ago|reply
Edit: not to mention that mining is an incredible waste of time and energy that can instead be put to good use.
[+] [-] Rmilb|8 years ago|reply
[+] [-] davidgerard|8 years ago|reply
The bit Git doesn't do: distributed consensus via Proof of Work, because it turns out that a bit of trust is fabulously more efficient.
I predict any good and useful product labeled "Blockchain" will be the cryptographically tamper-evident ledger of transactions, and not any of the stuff that makes a blockchain different to Git.
(Researching the book, I had one developer admit that his "blockchain product" was pretty much a simplified Git in terms of what it offered ;-) )
[+] [-] pnathan|8 years ago|reply
I'd be interested in working with large and boring financial institutions on those sorts of projects, because they don't offer the failure modes as above.
[+] [-] lotyrin|8 years ago|reply
If we had discussed proof of stake or theorized about how some of these other hurdles like transaction rate could be leaped then sure. Otherwise it's just a list of things any distributed system has to solve for, demonstration that blockchain solves for them (inefficiently) with the undertone of "I bought in on the hype, and you can too".
[+] [-] highpark|8 years ago|reply
Why would a distributed systems engineer work on what amounts to a really shitty database?
[+] [-] varelse|8 years ago|reply
[+] [-] lmm|8 years ago|reply
[+] [-] random3|8 years ago|reply
I think it's funny the author chose to center the article around that assumption. IMO most engineers related to distributed computing (not necessarily themselves distributed systems engineers) are actually quite aware of the technology and many of the challenges.
[+] [-] strgrd|8 years ago|reply
Maybe instead of asking this, we should ask the cryptocurrency enthusiasts what area of technology won't be dropped-and-replaced by blockchains, because so far it seems apparently applicable to every single use case in every single industry... By the way, did you guys hear this thing is an immutable ledger?
[+] [-] jstanley|8 years ago|reply
There is very little overlap between cryptocurrency enthusiasts and those who think blockchain technology will take over everything.
[+] [-] srdev|8 years ago|reply
The "killer app" of Blockchains are the trustless nature of the system. In most practical application, allowing actors without a trust relationship to interact with the log is not a significant requirement of the system. Once you remove that requirement, there are technically superior approaches to maintaining a ledger.
[+] [-] vocatus_gate|8 years ago|reply
[+] [-] mikeschmatz|8 years ago|reply
https://www.paxos.com/our-team
[+] [-] didibus|8 years ago|reply
If anyone could point to me what's the name for this fallacy. Lile when you ask a question that tricks people in assuming the premise.
[+] [-] pietrod|8 years ago|reply
[+] [-] jaseemabid|8 years ago|reply
[+] [-] hossbeast|8 years ago|reply
[+] [-] eternalban|8 years ago|reply
The cynic in me thinks "it's a scheme by oligarchs and tyrants to get rid of troublesome /fully anonymous/ cash sold as a utopian scheme to those who are motivated by the promise of a quick rich scheme."
[+] [-] bmurphy1976|8 years ago|reply
[+] [-] notzorbo3|8 years ago|reply