Avoiding a pointless blockchain project
multichain.com
multichain.com
So we have this great world changing idea which will transform, reinvent and disrupt ... and it uses a blockchain to keep track of ....
Why the blockchain ? Because ... distributed ... anonymous ...
But you have user accounts on your servers.. your project is centralized by design. Why not save yourself the trouble and use a mysql database ?
People like being involved in things which sound cool and they try to bend reality so that they can find a use for a cool sounding technology.
Even if the opportunity cost was zero, the choice wouldn't make sense unless you had a problem which cannot be solved well with mature tools.
Using unsuitable tools instead of working ones is also a kind of opportunity cost.
There are so many problems in government. A vast majority are not sexy, but if you care about impact the roll up your sleeves.
- Fully user owned identities
- Eradicating information asymmetry in mutually beneficial ways
- Transparent update rules, i.e. an evolving but never deprecated API
Thus different roads will lead to those economic gains. Essentially you take mongodb, encapsulate any write access into UDFs (=smart contracts) with permission to execute based on a public/private key, a second set of keyholders able to read and validate the log and et voila, all promises of blockchain tech fulfilled.
Forms? Where we're going, we don't need forms.
Are you envisioning a system like Keybase, but completely distributed?
Your identity will no longer be a key. It will be a pointer to a program and its associated storage on a blockchain. To identify yourself, give someone a proof that you control that identity. To add a new key to the identity, use the rules you put in place to add new keys. To change the rules that control the identity, use the rules you put in place to change the rules. You can build any rules for an identity management process into a program that runs on a blockchain. Through trial and error, we will discover the most resilient patterns with the least trust required.
It's better to start from the other side of the problem: how do you want to recover your identity?
We could also say that blockchains can be useful in principle when people are afraid of retroactive modification of history (for example because they get hacked, or because of governmental pressure to falsify their records). This is sort of an instance of this article's mutually-untrusting writers issue, but it's an interesting one because the writers are saying that they don't want to be trusted.
I think this is the case now for software distributors and certificate authorities, among others (I gave a talk related to this at CCC); they are saying "it's bad for us and you if you just believe whatever we say, without at least a way to know if a larger audience has heard it and whether we're denying what we said before".
So we can also say that blockchains (or perhaps another kind of distributed consensus mechanism; clearly Ben Laurie and others are claiming that blockchains are too heavyweight some or all of the time) can be useful when people are afraid that they're going to be made to emit writes that they didn't want to, or to deny writes that they previously emitted.
Now if you put multiple CAs in the game it start to become interesting to use a distributed ledger like the blockchain. If all the signed certs are distributed as part of the ledger it becomes easier to track who issues certs for what domain. Something we cannot do with the current SSL CA system.
https://www.certificate-transparency.org/
Sorry I didn't mention it explicitly -- I was trying to draw an analogy to show why blockchain-esque mechanisms are relevant here, and I thought readers would already be aware of this system.
As much as I am fascinated by the Blockchain, Bitcoin and all related matters the Blockchain shows how random projects are created around some tech just for the sake to do something with this new tech.
People fell in love with the Blockchain and desperately try to find a use case. Bitcoin was and I still think is a killer use case for the Blockchain. But in the last 24 months I met so many founders of blockchainy startups—exceptional smart guys, after 15 minutes of listening to them I felt so stupid like I missed the past five years of tech. But once you ask them what is the use case of their new shiny blockchainy tech they don't give a proper answer. Instead they shotgun more words with even higher confidence.
Again, absolutely nothing against the Blockchain and I am highly impressed by Ethereum. And I understand that people often need to play around with new tech some while to find proper use cases. But especially with the Blockchain I feel that people do not find many more killer use cases beyond currency.
So from the miner's perspective the incentive is there. There's the "wasted bandwidth" angle there as well but that's a different story...
I was asking what the incentive would be to go through the computational effort of creating a block in a system that doesn't involve money. The author gave the example of using blockchain to maintain a shared calendar. What incentive would I have to go through all the computational effort to create a block of calendar entries?
Or let me know if I misunderstood your reply.
There's nothing preventing the same tx fee system bitcoin is using from being implemented even if the blockchain itself is not used to transfer value. So now it is a can of worms, no doubt, as the system would have to have a way of attaching the fee to a "real world" value - along the lines of how Ether/Gas relationship works in Ethereum, but it can be done.
Another thing to keep in mind is blockchains the author is talking about in the article aren't necessarily public - with a private blockchain the nodes are paid for by the organization using it in some way shape or form.
Although one key point that I'm sure IoT entrepreneurs will forget: I want breakfast, not a toaster with an Internet connection. If it doesn't make me breakfast, I'm not interested.
Soylent 2.0 effectively reduces the entire loading step to "order Soylent. Retrieve from porch."
The only extra automation I'd find handy in the kitchen is vegetable chopping, especially for harder things like turnip and squash.
This is almost always the wrong way to solve the problem. Trying to automate a human-friendly interface is far more trouble than it's worth, when you can easily use a machine-friendly interface to begin with.
For example, dishwashers aren't robots which stand in front of a sink, squeezing bottles of detergent on to a cloth and rubbing it over a stack of dishes. Instead, they're self-contained beige boxes with a well-defined input/output mechanism (racks to hold the dishes; standard plug for electricity; standard plumbing connections).
It's like screen-scraping your own application. Or writing a CLI's main loop with `expect`. Or when sci-fi films show robots typing on computer keyboards.
Let's take your example. Unless you're living in a backwards universe I'll assume that you want to put bread in the toaster. There are existing solutions to this, e.g. many hotels have toasters with a conveyor belt; rather than having to line anything up, there's a large catchment area to plonk the bread on to. A harder problem would be separating the slices of the loaf; this can be entirely avoided if the user "loads" a whole loaf at once, like a cartridge. E.g. by inserting paddles between the slices, they won't be exposed enough to go bad, but are easily separated as needed.
With everything roughly lined up there's not really anything to control other than turning it on. Plugs with timers are easy to get hold of (I use them for switching on lights in the evening). You could use something smarter like a clapper. Even if you use a "smart plug", there's no need for the toaster itself to be any different.
In my entrepreneurial dreams (apparently shared by one of the sibling commenters here), I'd actually imagined a fully-automated kitchen. Stick a grocery bag on a shelf (extra points if it integrates with Instacart etc, so that someone else can stick a grocery bag on a shelf), and a robot arm unloads it, reads all the UPC bar codes, and stocks it in a refrigerator. This refrigerator isn't a standard issue one, with a door and shelves, but something with individual bins for items. That way, a robot arm would know exactly what product was in which bin, it could retrieve it, open the package, and measure out whatever quantity is needed for the recipe. Then it goes to the appropriate heating chamber for cooking - it may not even have pots/pans/toasters, just heating elements and containers. Food comes out on clean plates, dirty dishes go in, and the cycle repeats. My interface to it is a smartphone or smartwatch app where I can select a favorite recipe and have it made.
I figured this is beyond my hardware capacity to build (unless I exited in some other startup first and had unlimited time to tinker), but if someone else wants to make a go at it...there's the product request. ;-)
https://web.archive.org/web/20111130150625/http://www.symas....
What I'd like to see is a general purpose domestic robot which could learn to use all your existing things. It could start by learning to vacuum using your existing vacuum cleaner (a lot cheaper, and a lot better at cleaning, than the dedicated vacuuming robots you get now), and over time upgrade itself to do additional things, like emptying the vacuum cleaner, dusting, washing dishes and so on.
Would love to develop something like that, but coming from the software side I'd probably have to work with some pre-existing hardware, e.g. something from Willow Garage.
Dishwasher
> clean the house
Roomba (of course, they're quite limited; although my cleanliness standards are quite low ;) )
> cook your meals
Microwave
> receive parcels when you are out
Mail box, PO box, shed, etc.
> iron clothes
Hmm. Not sure on this one.
> repaint the flat while you are on holidays
OK, this one sounds pretty hard (unless you count https://www.youtube.com/watch?v=T9MAmWnOznI )
> yell at kids when they trespass on your lawn
Speaker hooked up to a security light
> change bulbs
Long-life LEDs
> walk the dog
Treadmill
> chase with a broom anyone who is trying to dump junk mail in your mail box!
Hmm, OK the mail box might need an upgrade ;)
Has disintermediation ever been overhyped? Currency disintermediated trusted community members who you knew would do you a favor in return. The printing press disintermediated the Catholic Church, one of the most powerful entities of its day. The internet disintermediated... lots of people. Blockchains disintermediate everyone else.
This need for trust demands politics, and that's why we have Bitcoin's crisis de jur.
Block chains are a neat technology with limited application.
http://webcache.googleusercontent.com/search?q=cache%3Ahttp%...
Luckily, for the most part, as you say, you and the people you're interacting with can find someone you all can trust.