Even though we still don’t have “wireless everywhere” (as I like to say), access to the Internet is indeed becoming more pervasive. Until the world is blanketed in wireless however, there will always be a place for offline applications. Sometimes you need to get some work done, with or without an Internet connection. Unreliable access or no access at all might have been the driving force behind offline applications in the past, but now there’s a new reason: cloud computing.
The term “cloud computing” is a bit like Web 2.0 in that it is used as a blanket term, but essentially it means accessing applications and services via the Internet (“in the cloud”) without worrying about the infrastructure that supports them. One of the best examples is GMail, Google’s email service that lets you manage your messages in any browser. It’s also a good example of why offline, synchronizing applications are so important – GMail went down completely yesterday:
Gmail is having a systemwide outage affecting multiple countries, and a whole bunch of its 100 million users are screaming about it on Twitter. Around 20 million people visit Gmail each day, according to Comscore, and they’re all seeing the same message. The first outages were reported at about 2 pm PST, 44 minutes ago.
One of the things that makes cloud computing different than services in the past is that more and more businesses rely on things like GMail to operate. When it goes down, so does a significant part of their business.
There’s a transition underway. Businesses are realizing that it doesn’t make sense to operate their own data centers and services when Google, Microsoft, and others can do it far more efficiently. But don’t let those names fool you, as GigaOm points out:
If an outage of this magnitude can strike Google, the company with a fearsome infrastructure, I wonder who — if any — can plan for the worst.
It’s extremely difficult to maintain 24×7 operations, even for a company like Google. The only reasonable thing to do is assume that service will go down at some point, and to plan accordingly.
For that reason, I think offline access and synchronization are two things that developers will need to focus on in the future. Like the other big challenge facing developers, multi-core computing, improved technologies and toolsets will be needed. Vendors are working on it, Google with Gears and Microsoft with the Sync Framework, but there’s still a lot of work to be done.
Cloud computing is great, and I’m excited about the opportunities that it provides. We have to realize that it’s only part of the equation, however. Offline access and synchronization are more important than ever.