I just got back from a weeklong break from development. It's good for me to do this, it's also good for my development work. Because try as I may, I don't stop thinking about new projects or how to evolve existing ones.
One thing I kept coming back to is there is a missing piece in the online mix. And if it existed, and I'm not saying it will, or it can, lots of interesting new software would be possible.
I know people are always tempted to say that these things exist, but the ones that come close are all missing a vital piece or two, or more.
It behaves like a disk attached to a desktop computer, but it is virtual, it lives in the cloud.
It's private, except for a section clearly labeled as public. Much like the Dropbox public folder.
The public space has a name, one for each user. You can use the name assigned to you by the service, something like dave.theservice.com, or you can map a custom domain or sub-domain to it that you purchase or rent.
It's yours. You pay for it. It's a service provided to you by a business. The user agreement is approved by the Consumer Union and the ACLU. No research on you. No gathering of information about you. It's simple storage. That's why you have to pay for it. I don't think it would cost very much, however. Probably less than most people spend on coffee, for example.
The service is fungible. Every provider offers exactly the same basic service as the others. The differences are in performance, price, and ancillary features. (This ensures you can easily switch vendors if you don't like the service you're getting from one.)
There's an API, and an identity system. You can give permission to an app to access a piece of your storage. You can give as many apps access to pieces as you like, so there can be shared space between apps. So you might have a graphics app that can deposit pictures in a sub-structure that is also managed by a CMS.
Needless to say it's high availability, scales flawlessly, and performs fantastically. No slowdowns, bottlenecks. No special deals betw infrastructure providers.
There would be great apps we could create today. Because it doesn't, these great apps are harder, and all have potential fatal flaws.
See this post on the Scripting News home page for an idea for how this technology would be applied.