Hacker News new | ask | show | jobs
by x2398dh1 2818 days ago
Since so many comments on this thread are so absolutely negative, I will try to play devil's advocate here.

Is a given blockchain a more efficient database? Not efficient measured by percent of data stored in any given entry, which of course throughput and any other, "engineering metric," will suffer because of that. As an engineer, the idea of wasted energy, memory, space, etc., makes one cringe.

Efficient from the standpoint of preventing loss of human life or preventing sickness? Well, in the United States where likely most of us live, this is not as big of a problem, but likely in many other countries such as China, "food authenticity," is a problem. Let's keep in mind that Walmart has more stores and customers in China and more problems with food than the United States by orders of magnitude.

If I'm an actor within the food system in China which presumably has multiple middle-men, and I want to move one product up the supply chain through multiple, ultimately ending up on the shelves at Walmart, then I will not want to give away my source, because I want to get preferential pricing. However if I can convince my suppler upstream to use this tool (it doesn't matter if it's IBM, Google, Alibaba, or some startup or whatever, it's just a tech tool), to track and register when food was, "picked" or "harvested" then I don't have to give information to my buyer about the source, yet the database is all, "standardized," in terms of labeling. Keep in mind the alternative would be some kind of bar coding system which perhaps Walmart would have to impose. Well, I don't want my upstream partners knowing that this is going to Walmart either, otherwise they will jack up the pricing. If everyone is using some IBM tool, and assuming the IBM tool sees increasing adoption, then no one (hopefully) knows where or who a particular food is going to, yet any problem foods can be tracked back to their source by the end seller, without having to impose multiple types of key-value pair, bar-coding database systems, which - while technically easier to implement and run more smoothly from an engineering standpoint, perhaps do not take the entire use case into mind, because parties within the supply chain may be unwilling to share their source or destination due to pricing incentives.

Mind you, I am no food systems expert, I am just trying to talk hypotheticals here. I think the knee-jerk reaction on Hacker News within this thread is an almost Redditian "reaping karma" approach by putting down Blockchain, because many of us have had bad experiences working with corporate executives who have no idea how various types of technology work, and implementing non-technology buzzwords ends up being painful. That being said Blockchain at its heart, stripping away the history, is just a mathematical concept, and it's a math tool that can be used to point from one source to another. Calling it a, "mind disease," is losing sight of that.

Typically the types of discussions on hacker news that I enjoy reading are more angled toward how do you reverse engineer things, not just insulting an idea without backing up one's insult.

4 comments

I really wish I could remember where I read this so I could give proper credit --

Somewhere I read a helpful way to rephrase "blockchain" that really helps cut to the heart of the issue when you're dealing with technical questions like this: A blockchain is just an ordered series of files, each of which contains a hash of the previous one in the series.

So, when you've got someone saying, "What if we use blockchain?", just mentally substitute the suggestion as, "What if we store the data as an ordered series of files, each of which contains a hash of the previous one in the series?" Any bits of the proposed system that aren't impacted by the decision to store the data as an ordered series of files, each of which contains a hash of the previous one in the series, also don't have anything to do with whether or not it needs to involve a blockchain.

(Yes, I realize there are additional questions around trust and proof of work and whatnot that come into play when you're talking about blockchain-as-in-cryptocurrency, but, as far as I can tell, it's a rare case that proposed use cases for blockchain in business are ones where anyone even wants trustlessness. See, for example, Walmart trying to use a centralized blockchain to manage their edible leaf supply chain.)

> A blockchain is just an ordered series of files, each of which contains a hash of the previous one in the series.

Mentioning the hash is an implementation detail -- it is what gives blockchains their immutability property.

So I'd say even simpler: a blockchain is merely an append-only register that can be used by multiple parties.

It is absolutely an implementation detail.

But it's also the defining characteristic - it's the essential thing that sets blockchains apart from all the many other ways you could create an append-only register that can be used by multiple parties.

The fact that the hash is both an implementation detail and the defining characteristic is exactly why, IMO, "blockchain" is an inappropriate word to use in most business plans. Implementation details as a headline feature of your elevator pitch is a classic characteristic of a solution in search of a problem.

As far as I'm aware, nobody was talking about peer-to-peer supply chain management before "blockchain" became a buzzword. Probably because you don't need peer-to-peer when you have a natural central authority. The organization whose supply chain it is in the first place, for example.

Supply chains aren't really owned by a single entity, right? Walmart may be the biggest actor and driver of requirements but they don't own anything beyond the specific services they are paying for. Its a complicated system of actors - which is where something like a DLT or blockchain can help bring together in a more cohesive way.

Agree with everything else you said.

I always phrase it as, "how does a distributed ledger solve this?"
Bingo. The exact phrase I use. Sometimes I chuck in "permanent" and "public" depending on context.
The problem is that we've mostly exhausted technical discussions surrounding the blockchain. Everybody who cares about them (on either side of the fence) know how they work and what they do and don't do. But that's not even the point anymore.

>That being said Blockchain at its heart, stripping away the history, is just a mathematical concept, and it's a math tool that can be used to point from one source to another.

Not anymore. Look at this thread, not everybody seems to agree about what a "blockchain" is. Is it a blockchain without PoW? Is it a blockchain if it's fully centralized? The word is so generic to begin with that people can overload it with whatever they want, like "cloud computing" and all these other buzzwords.

This is not a technical discussion because we're well past that point. This is not about technology, this is about marketing and banking on the hype. Cryptocurrency proponents are happy because it can be used to boast wider adoption, crypto haters (like me) dislike it for exactly the same reason.

Let's keep in mind that Walmart has more stores and customers in China and more problems with food than the United States by orders of magnitude.

Walmart has 10x as many stores in the US relative to China. It's 5,358 in the US¹ vs 426 in China².

Does Walmart have leverage in China to force this on growers? They do in the US.

1. https://corporate.walmart.com/our-story/locations/united-sta...

2. https://corporate.walmart.com/our-story/locations/china#/chi...

> Is a given blockchain a more efficient database?

One property of a database that may not exist on blockchain is deletion of records. You can not delete "records" on blockchain due to its immutable property.

Though, for the sake of argument, even in SQL databases people are increasingly moving toward append-only tables where you never physically update or delete existing records, you just insert a new one that supersedes the old one. The same approach would work for a blockchain.