Friday, February 4, 2011

A Modest Proposal: Private Clouds on a Large Scale

This blog post is based on a post I made on the Ars Technica forums. It’s been edited here for spelling, clarification and to add an idea I had.

I really don't like the idea of my data being in 'the cloud' in a primary sense. Backup? Sure - if there's data loss, I can just make another backup. Publication? Sure, that's what the Internet is for.  Full-hog is a different thing.

It's an issue of control. With local data, I own (in a physical sense) all parts of the system - the computer, the hard drive, the metal filings that represent 0 or 1. I can literally pick up and hold my data, and take it with me. With the cloud, the data is on some server far away, and all I have is a projection of that data.

The same with apps. If a company goes out of business, I can play their games or run their programs indefinitely. If I don't like a new version of the program, I can keep using the old one. Because I own the physical data on my hard drive, I don't have to follow the whims of a company if I don't like it.

If we switch to a world where apps were served by remote computers to our own (as with web apps and streaming games), then I no longer have that control. If a company shuts down or discontinues a service, I have no recourse. If I don't like a new version of something, I can't use old versions unless the company makes provisions for such a thing.

For me, the convenience is simply not worth the loss of control.

However, I'm a big fan of the 'private cloud' - servers that I own that can stream my data anywhere. Right now, I've set up a file server that stores my documents and music, and I can access this via LAN on any computer in the house. It's very liberating.

There are three problems with private servers, however:

  • Marketing: This is a big one. Consumers don't know what servers are and how they can help, and it's clear that companies don't know how to market servers to consumers (one would only have to look as far as Microsoft and WHS to see that.) Companies should emphasise the convenience factor, and the ability to access your files from anywhere over the network (and, in the future, the internet).
  • Distribution/Expense: Even among geeks, a small percentage use file servers. Part of this is because of not being able to justify the expense of buying a computer or paying for power just to serve files, and part is because private servers are so few that no-one really considers it.
  • Ease of use: To a consumer, it's relatively hard to set up file shares, network drives, redirect profile folders, etc. It's a hurdle that most ordinary people will find difficult to overcome.

So, here's my proposal:

A server system that's made up of a computer and a removable drive (which will store the user's data.) The company that makes these servers cuts deals with real estate companies to place these servers, as well as wifi routers, in new and resold homes, offering to train for free real estate staff so they can help consumers set things up, and make deals with power companies to not charge for the server's power usage (read by a meter attached to the server), etc. These servers can be placed in the wall behind a service panel, with a collection of USB sockets embedded in the wall (like telephone and power sockets in most homes today) - this will be where the drives will be attached - and maybe a simple LCD display with relevant information.

The removable drive contains a key on it in a standardised location, as well as a user-set password[*]. They key is also printed somewhere for the user's reference. If two removable hard drives are attached, it duplicates the files on the second hard drive - basically, software RAID 1.

[*] This could be implemented as a drive-wide encryption, with the password/key as the seed, as opposed to plain text storage.

On their home computers, the user could install some software that requests the drive key and password, then broadcasts a message on LAN to see if the server responds. Once it does, the key and password are transmitted to the server, which checks the data against the info on the removable drive, and, after log in, sets everything up so that the profile folders link to the right folders on the server's removable hard drive. (The software can act as a "dashboard" of sorts, allowing the user to keep track of stuff like disk space and backup status, and letting them set up additional shares, if need be.)

If the person moves house, they can just unplug the removable drive in their old house and plug it into their new house. Since the server reads the key off the removable drive, the user can keep working as if nothing happened.

The main issue with Internet streaming is dynamic IPs. This could be possible by having companies host "redirection servers" at fixed IPs, whereby both the client and the server is given the address of the redirection server (in the private server's case, stored on the removable drive, of course), and the client could use software on the computer to integrate the data it receives into Explorer (ala Dropbox, I believe.)

This doesn't stop at computers - phones, tablets, digital photo frames can all take advantage of this system, continuingly syncing data with the server. And you could 'upgrade' removable drives by having booths where you can exchange your old removable drive for a larger one, have them transfer the data across, and only pay the difference.

I’m aware some programs are finicky with regards to where they put their data, especially games – Age of Empires III, for example, doesn’t like network drives for some reason. Like how routers can unblock ports (and some routers have a Games section so you can unblock ports without having to remember the number), you could set up a data sync, so the data is stored on the hard drive of the local computer, but synced to the server and then to the other computers in the network.

Now, I would love this idea to come about. I'd be thrilled, in fact. Microsoft already has a server + software dashboard solution, so they're the most likely, but I really wouldn't care who does it. Just make it a reality.