Tuesday, October 14, 2008

Is Cloud Computing worth it?

In my last post I related that in eWeek magazine (Oct 13, 2008), Jason Brooks asks "Does OpenOffice.org Still Matter?" He's wondering if, given on-line suites, if OpenOffice.org will matter in the future. Yesterday I addressed the quality of the software, but today I'd like to look at the on-line software concept and whether Software-as-a-service (SaaS or "cloud computing") advantages outweigh the drawbacks.

With "fat" clients like OpenOffice.org, Jason relates three "pain points":
  1. the need to install an office suite on every machine,
  2. the tendency of office suites to "strand" documents on the machine on which it's created, and
  3. the difficulty of configuring a network share.
Working backwards, we see that 3. Configuring a network share isn't any more difficult than signing up for Google Docs; 2. Once you've configured the network share, your documents aren't stranded; and 1. Shares work for the Office software as well as the files, so the software doesn't have to be installed on every machine... IF you've chosen the right software, like OpenOffice.org

It appears that people -- even knowledgeable people like Jason -- have forgotten that file servers can be application servers as well. In fact, installing software onto a shared drive was standard practice in small business until very recently. This hasn't been helped by Microsoft's tendency to write software that "hook" into your machine's operating system through multiple Registry entries (sometimes dozens of them). They've forgotten that in large part these Registry hooks are unnecessary. Consider if you will that PortableApps distributes an OpenOffice.org that can be placed on a USB key and carried with you.

The 800lb. gorilla that Jason doesn't mention is the ability to access those cloud computing apps like Google Docs from anywhere outside of your network. The answer to this commonly quoted "advantage" is that LogMeIn.com provides remote access via browser to your entire desktop: better tools, your own environment, and tools and capabilities that simply do not exist "in the cloud." GotoMyPC offers similar service. And, having secure, brokered connections, remote access is a better solution than cloud computing.

Taking all of these factors into account, it's not surprising that I don't think much of the supposed "pain points" of fat client software. Frankly, for me they don't exist. I can do better, and do.

Everything that I've mentioned here about OpenOffice.org applies to other "fat" clients like Lotus Notes (and thus VIC CRM). And since I've mentioned that term a couple of times, I'll explain it.

Why is your client "Fat"?

There are as many different ways of computing as there are programmers, but typically we can split them into a few broad categories.
  1. Thin client - This was the first computing model, and it still dominates the mainframe world. All the computing is done on a big computer somewhere else, and each user has a terminal that simply consists of a display and input devices.
  2. Fat client - Files might be stored locally or somewhere else, but all of the computing for each user is done on his own computer.
  3. Client-Server - Some of the computing is done on your machine, and some is done on a central computer elsewhere.
Then there are some nuances... for instance, "Web 2.0" is more of a smart thin client than client-server."SAAS" and "cloud computing" are really the same thing, distinguished (if at all) by the method of payment. Service-oriented architecture ("SOA") is a form of client-server. The boundaries are often confused when the people who've invented these new terminologies refuse to see them as variations of existing themes.
As you can see from the definitions, a "fat client" isn't really fat in the sense of "wasteful"... it's big because all of the computing is localized. Perhaps a better term is "robust". And that's what we're looking at here... the difference between a robust piece of software that can leverage all of the power of that 2GHz monster you have on your desk or on your lap, and whatever functionality can be delivered through your browser. The difference is notable, even with Web 2.0... Google Docs doesn't match OpenOffice.org, and Gmail doesn't match Lotus Notes and VIC. Ask yourself if it makes sense that Dell is selling you that monster of a machine just so you can use a browser.

The Economic Argument:
Dana Blankenhorn pointed out some days ago in his article "Open source is about belief in code" that Open Source is survivable:
Even if an open source enterprise should go belly-up its code should survive. That code can be enhanced, it can be forked, it can be turned into another business, perhaps with another business model, down the road.
He concludes his post with "Open source was made for times like this. You don’t have to believe in it. Just use it." Obviously, this is in the context of the current economic downturn (which seems to be turning back up as of yesterday), and it's potent advice.

It's also applicable to our current discussion about "cloud computing".

Why? Because I haven't just been burned by proprietary vendors who no longer produce drivers and the like... I have been burned more often by both start-ups and supposedly established companies that no longer offer the on-line services that they once did. I'm not alone, either. And having a well-established, well-heeled company providing the service is no guarantee of continued availability. Famously, Wal-Mart has simply thrown all of your DRM'ed music purchases away.

I've "bought" hosted technical reference books only to see the "publisher" go belly-up on zero notice and I've lost access to the materials. I've used hosted remote access software only to see it die. I've seen WebFTP hosts come and go. I've seen services get bought by larger companies and "improved", "enhanced", and "transformed" by the new parent until they are no longer useful at all.

I don't think you can in good conscience base a business on dependence on "the cloud" and the companies that provide SaaS. To borrow a phrase from Cory Doctorow, these institutions "are as solid and permanent as Commodore, Atari, the Soviet Union, the American credit system and the Roman Empire. "

Sure, go ahead and use on-line services where it makes sense, but don't depend upon them, no matter how good they look. If you're an individual you should know more than one way to skin a cat. Know about VNC as well as GoToMyPC or LogMeIn. You should know about portable, standards-based formats. You should know about software that uses them.

If you're running a business, you should be hosting your own critical services rather than depending upon somebody else to do this for you. Open Source, Exchange, or Notes/Domino are all viable options for doing this. Now, obviously, there are limits and compromises made on the basis of cost and ability. For instance, a web-based business may typically choose a host. But if they're smart they will retain frequent backups of their code and data in case they need to migrate. However, when you're crafting your compromises you should remember that under no circumstances should highly sensitive or mission critical data be entrusted to "the cloud".

If you do purchase hosted services, your disaster recovery planning must absolutely include the contingency of that company going under at short notice. And you must absolutely have a recovery plan that doesn't depend on legal action to get back online. Have you been mirroring your data? Is it transportable to another service? Can you host the service yourself? Not theoretically... I mean really host it yourself, and at short notice, without esoteric knowledge and without lawyers bitchin' (You know how they love to do that).

You need to be able to answer "yes" to every single one of those questions. Otherwise, your business model depends on prayer alone. Because, barring the direct intervention of a merciful God, you will eventually lose your company to your betters in the marketplace.

So my argument is that -- on economic grounds; on disaster preparedness grounds; on the grounds of capability and flexibility -- robust "fat" clients are here for the long term and make much more sense than computing in "the cloud".


Post a Comment

<< Home