views:

229

answers:

7

I noticed a new web service today called a Dead man's switch, which dispatches email in the event that you don't respond to periodic "pings" that prove you're still alive. But it occurred to me that I might outlive the person or organization that pays the bills for the service, making the service useless.

There are other kinds of services that we could be reluctant to use simply because the value is so high we don't trust it to an inventor who could lose interest, or an organization that could go insolvent. Like data repositories that could be used in many different programs and devices, but that would break them all if someone forgot to pay the hosting bill.

But say the service "owned itself", and paid its own hosting bills? Like this:

  • The host is Amazon EC2 or similar
  • The bill is paid by debiting a bank account
  • The bank account is replenished by interest returns and advertising revenue
  • The bank account is in the name of the service itself, and once seeded is never touched for anything else again
  • The creator declares the service "finished" and moves onto the next project

To me, this is an engineering problem similar to those of building Mars rovers, bury-n-forget power generators, The Millenium Clock, and other artifacts that have their own homeostasis mechanisms and can be abandoned by their creators without ceasing to function.

The question is: what are the gotchas? Must the bank account be in a real person's name? Can you prevent the govt. from considering the account "unclaimed" after n years? How could it recover from crashes? Is there an API for opening new hosting accounts at other companies so it could automatically scale itself and protect itself against the insolvency of any one host?

A: 

I think you've been watching too many sci-fi movies. Why do I have the feeling you're the kind of guy who will bring about humanity's demise by letting loose the robots with deadly AI...

Interesting thought though. I like it. :)

Bob Somers
A: 

The bank account must either be tied to a person (via SSN), or a corporation (via TIN). You'd have better luck tying it to a personal account because while a corporation sounds like what you're looking for, there are other costs involved such as state and federal taxes which would cause the corporation to be dissolved without human intervention to upkeep it.

And as for the API, there is not currently a general API for this aside from "the creator" writing some sort of bot script that could sign up for some of the current host companies ... of course, this doesn't solve the "bury n forget" aspect.

Very interesting idea though ... I'm very curious to see the other responses to this question :-)

Joel Martinez
A: 

The service would need to gain an established legal identity of some description before a bank account could be opened in it's name.

It could be a possibility once that occurs.

workmad3
A: 

Who is going to fix the service when it breaks? or is it self healing? :)

Craig
Depends on how it breaks. If it just crashes, it might only need restarting. If it's a bug, it'll require the creator to "wake up" and come tend to it. Let's say that after a few years and a few iterations, the only major problem is with crashes.
C. Lawrence Wenham
+4  A: 

You can't make a service robust in this way - if the bank account is a single point of failure then when (not if) it fails, you lose. A bank account can't exist without a legal entity to own it, but that's just a detail here - other failures are that Amazon might pull SC2, or raise the price, or make an incompatible API change, or be bribed by your rival or ordered by a court to remove your app.

Ross Anderson has published an initial description of the requirements for an "eternity service" for data storage. The broad principle is to distribute it across as many people as possible, and ensure that they all have solid incentives to keep the service running, and to keep specific data live. It has to be resilient against as many as possible participants dropping out, and against as many as possible participants "going rogue" and trying to subvert it.

He only gives broad outlines in the paper I read, and a few specific techniques that might be useful, but that was over 10 years ago. You might find further research if you look.

http://www.cl.cam.ac.uk/~rja14/eternity/eternity.html

Steve Jessop
+1  A: 

One thing that pops into mind i Wikipedia. One of the co-inventors dropped out, another one is having an increasngly limited role in it, the editor turnover is mindboggling, and there are a large number of people trying to subvert it (vandalism, fake articles, putting in false information), and they have a constant influx of people who have no idea what they are doing.

What they did do right was to have de-centralized the structure. Except for the servers that host it, everything on WP is spread out among thousands of admins and millions of contributors world wide. WP itself keeps on generating enough interest among new people to keep on replenishing the ones that leave - and they leave oh so often. If you looked into the innards of WP, you'd be shocked and appalled that it even works, but it works and does so rather usefully.

Mostlyharmless
A: 

Aside from the legal complexities.

Your service would also need to know when it was time for it to delete itself. If it's no longer being used, and the information it contains is duplicated elsewhere in better/more efficient services (and how would you test for that?) - is it serving a purpose by continuing to consume resources?

This is starting to sound awefully like the start of a large number of scifi stories, as others have said :)