The Cloud

Tom · Tuesday, Jun 17, 2008, 10:02 PM · Krehbiel Tech

I saw an article by John Dvorak -- someone I usually find pretty abrasive -- in the latest PC Magazine (it's not online yet) that I actually agree with.  He was (again) putting the smack down on computing "in the cloud," which is yet another term for (basically) the trend of conducting business by running applications soley in a browser on the web.  (BlackBoard is one example of this type of software, fyi.)  Personally, I -- and most likely any programmer over 35 -- think this is a step backwards in the evolution of software technology, because we are simply re-creating the old days of dumb terminals connected to a mainframe.

Now admittedly, as a software developer, there is much to like about the cloud.  It's new, it's fun, it's hip.  It's quick and easy to create applications.  We have nifty WYSIWIG tools that do a lot of work for us.  It's stupefyingly easy to push software updates out to the customers if/when we make a mistake.  (Actually, we don't even have to push software farther than our own servers.)  We don't have to wait for quality assurance.  We don't need to hire beta testers.  We don't have to write a manual.  We don't have to burn any CDs or mail any packages.  We don't have to wait until the software is even finished to start selling it!  All of these are huge incentives for developers (and entrepreneurs).

But there is much to dislike about the cloud as well.  Even from a developer perspective, I find that the combination of HTML, CSS and JavaScript is a painfully archiac software delivery system.  I thought Java applets held some promise, but for some reason (probably boiling down to Microsoft business practices) they never evolved beyond web-based arcade games.  Flash/Flex is another attempt, but I think it's a technological Frankenstein's monster and probably doesn't deserve to evolve.  Silverlight holds some promise in shifting the development platform forward, but I doubt it will become any kind of standard outside of the Microsoft universe.

Of course, the developer experience shouldn't drive the market... the user experience should.  You would think with the rising popularity of the cloud, the user experience would be second-to-none.  Sadly, as a user, I find that running applications in the cloud is a frustrating experience.  The network is slow and fails frequently.  My data might be lost forever at any moment.  Even worse, my data might be mined for innocuous or nefarious purposes -- by corporations or governments or hackers or disgruntled employees.  Corporate firewalls could block access to the cloud.  And let's not forget the ubiquitous advertising found in cloud applications.  Even if there was a killer cloud app, eventually someone will buyout that company and, chances are, the app will go downhill.

Unless I was dirt poor, I can't imagine a time when I would choose to use Google Docs over Microsoft Word, or Yahoo Mail over Outlook Express, or Photoshop Express over Photoshop.  It's not that there's anything particularly wrong with Google Docs or Yahoo Mail or Photoshop Express -- in fact, they are top-notch examples of cloud software.  It's just that they are inherently limited by the cloud environment and its problems, and I expect a lot more from my software.  Why do you think services are starting to offer local data synchronization?  Because everyone knows deep down that it's better to store data on the user's computer instead of out in the cloud somewhere, beholden to the whims of the network gods and market forces.

Cross-posted to http://krehbieltech.blogspot.com/2008/06/cloud.html

Programming(114)

There have not been any comments on this post.

Comments are no longer being accepted on this post. To minimize the effort of dealing with comment spam, comments are automatically closed on older posts. The administrator may also close comments at his discretion.