Cloud Computing and Open Source: The Next Generation of Apps

Open source apps combined with cloud infrastructure do more than free enterprises from the speed and cost limitations of traditional packaged software. Open source combined with public IaaS and SaaS can power a new generation of applications, says CIO.com's Bernard Golden.

Last week I discussed how cloud computing resembles open source in that adoption of both has been driven bottom-up by developers. (See The Truth About What Runs on Amazon. ) I had an opportunity to revisit this topic at length this week when I was invited to moderate a panel at the GigaOm Bunker Series on the topic of open source in the enterprise.

The motive for both uses stem from the same desire by developers: to start solving problems quickly. As Javier Soltero (of recently VMware-acquired SpringSource) observed, one of the main reasons developers embrace open source is that it's easily accessible and lets them get on with their job—getting started does not require lengthy discussions with the procurement organization, nor enduring numerous "briefings" by software sale representatives who terminate each discussion with an "investment review" designed to extract contract commitments. Similarly, using public cloud offerings like Amazon Web Services provides compute resources in minutes rather than the weeks common to many companies.

[For more background on how developers are pushing cloud use into organizations, see CIO.com's "The Truth About What Runs on Amazon". ]

A side benefit of using a public cloud service is that it's easy to build a complex topology application (i.e., multi-tier and horizontally scaled), while cadging the resources to do the same within a company is nearly impossible. I've run many organizations in which developers and QA engineers had to share equipment, which meant in practice that lots of time was wasted in people waiting for equipment to be freed up, and then more wasted time resulting from new software stacks having to be installed and configured.

This Bunker Session's topic addressed open source in the enterprise and Joe Tobolski of Accenture Research Labs kicked it off by presenting the findings of a recent survey of enterprise IT executives on the subject of open source use.

The survey found that open source is more widely used and is now considered an acceptable input into enterprise compute environments. Perhaps surprisingly, cost is not one of the main drivers for using open source; rather, security, control, and ability to affect the direction of a product are cited as primary reasons for open source use. Joe implied that one of the drivers for this turn to open source is the unhappiness many organizations feel about commercial software vendors and how users have fared in the dizzying industry consolidation that has occured over the past decade.

If you read last week's piece, one of the themes was that cloud computing deployment choices—and thereby downstream organizational commitments—are being driven by individual software developers, which resembles the patterns of open source adoption. Mark Tolliver of Palamida, another panelist at the Bunker Session, observed that senior management is often shocked to learn how much open source software is present in applications running in their data centers.

Given the more permissive atmosphere for open source use, I queried Joe as to whether open source use had shifted from a tactical choice made by a software engineer to a strategic choice made by a senior executive as part of an overall computing strategy. One would think that, now that open source is, so to speak, let in the front door, there would be a welcome mat out for it as a way of cutting costs and allowing shift of investment toward more customer-facing technologies. Joe's response was that, while open source is accepted, it is not (in most organizations) thought of as the default choice, or one in which a desire to use a commercial product has to be justified to replace an open source selection.

In other words, open source use decisions are still being made by the developer or project team, with little comprehensive focus by IT executives. Consequently, the benefits of using open source are obtained piecemeal rather than comprehensively.

The Session rapidly moved to discussing open source and cloud computing. As a number of people observed, open source powers most of the really big web properties like Facebook, and is a core piece of public cloud services like Amazon and Rackspace. In fact, one could say that cloud computing would not exist absent open source software.

Another characteristic raised regarding open source-based cloud computing is that cloud providers provide some legal protection for organizations leery of using open source software. Also stated was the belief that concerns about the quality or stability of open source software could be assuaged by consuming it in the form of a remotely delivered SaaS application; responsibility for making the open source work lies with the vendor rather than the user, thereby sterilizing the functional risk associated with open source.

Frankly, this latter point is extremely misguided and is really nothing more than an organizational fig leaf. Believing that a vendor using open source somehow inoculates one from infection by the putative shortcomings of open source is dead wrong; whether one has the bits on-premise or uses them on-demand, responsibility for overall reliability lies with the user of the bits—in this case, with IT, which stands for assurance about the quality of the application, whether constructed internally or obtained externally.

Much more interesting as a discussion topic was how the licensing and economics of open source software are crucial to the innovation cloud computing represents. Commercial software, generally speaking, was designed and licensed for static environments in which software was installed on a physical server and run 24X7 for years at a stretch. This use case is becoming the exception, not the rule, while much more scalable and elastic application use cases are becoming the norm.

Open source, with its expansive licensing and flexible deployment choices, aligns much better with the future use cases of cloud computing. Now that the traditional limitations of obtaining computing resources are banished because of cloud computing, application designs and architectures heretofore economically and technically impossible are now within the grasp of ordinary IT organizations. It's not just wealthy organizations that can obtain adequate computing resources any more, and new application types will burgeon as previous design limitations are bypassed and superseded.

So the really interesting discussion about open source in the enterprise wasn't about how open source can displace traditional packaged software; it was about how open source in new enterprise settings (e.g., public IaaS and Saas offerings) can power a new generation of applications. Of course, that new generation of applications brings its own challenges: security, compliance, elastic application architecture, organizational change management. But really, wouldn't you rather have that set of challenges than the ones you've been stuck with for years?

Bernard Golden is CEO of consulting firm HyperStratus, which specializes in virtualization, cloud computing and related issues. He is also the author of "Virtualization for Dummies," the best-selling book on virtualization to date.

Follow Bernard Golden on Twitter @bernardgolden. Follow everything from CIO.com on Twitter @CIOonline

Copyright © 2010 IDG Communications, Inc.

6 digital transformation success stories