Have you noticed all the downtime lately? Del.icio.us had serious database problems, Bloglines was moving to a new data center, and TypePad had problems with their storage system. Even MXNA, the Adobe aggregator I wrote and maintain, was down for a couple hours Saturday morning while I was forced by database errors to upgrade MySQL. Moving all your applications and data online certainly seems like a good idea until either the service you need isn’t there, or your own Internet connection is down. Yesterday, I accumulated about half a dozen URLs that I needed to add to del.icio.us, but couldn’t, and I was forced to use Google Reader while Bloglines was on vacation. Of course it could have been worse. It could have been Writely or Num Sum that was down, and I might have needed access an important document or spreadsheet.
As more and more applications move to the web, and as we all come to depend more and more on being able to access those applications, two things are going to need to happen:
- They are going to have to become more robust. A little bit of downtime is always forgivable, but when I say a little, I mean a very little. When you have thousands of people who depend on your application, it simply has to be there. If your database fails, another one needs to automatically come online. If servers or storage fails, you need to have hot standbys. And if you need to move data centers, there are ways it can be done with little to no downtime. I’m not talking about my own personal preferences here because I’m pretty laid back about this kind of thing, but you really don’t want to give any of your customers reasons to try out your competition (of which there will be more and more). For instance, while Bloglines was down, I used Google Reader. I’ve already switched back, but I could have just as easily not.
- Web apps are going to have to move offline. I know this sounds like a step backwards, but it’s not. Right now, we are experiencing a transition from one extreme to another. Applications like Microsoft Word run locally and expected your data to be available locally while applications like Writely are completely web-based and expect all your documents to be on their servers. Someday, we will all be using applications that exist somewhere in the middle. We will download and update the applications over the internet, but they will run 100% on our local machines. And the data they use will be stored locally, but will be synchronized with remote servers so that it is automatically backed up and available from other workstations. And best of all, everything will run offline, at least partially. Obviously an IM client wouldn’t run very well offline, but an email client or word processor certainly could run just fine offline, as long as all your data was available locally, and could by synchronized once the application detected that you were back online.
Applications like these are not as far off as you might think. At Macromedia, we experimented with these concepts with Macromedia Central, and learned a lot about how these types of applications can and should work. It may seem pretty far fetched today, but I’m almost certain that in two years or less, we will have the option of using the majority of our web applications either online or off.