Open source is an IT strategy, creating greater business functionality and agility. How can open source bring long-term benefits to your organization? Most people think–incorrectly, that is–that the only reason to use open source is because of the generally low cost. Although that's a reason–a very valid and important one–it's not the only reason, and arguably not even the most important one. Let's walk through some of the other reasons other CxOs are pushing for more adoption of open source technologies in their companies.
To start, consider these types of scenarios:
They did not write the application, but it was the heart and soul of their 250-person company. They needed a tiny change that, if it existed, would significantly streamline their internal processes, adding two percent to their gross margins.
They didn't beg their vendor for the new feature. They didn't wait years for it to appear. They didn't hire expensive consultants to engineer a kludgy work around. And yet they had the new feature about two days after it was conceived. One of their five-member IT staff wrote the enhancement, adding it directly into the product, and assured that the change would appear in all future versions of the product.
As I noted in my analysis of Linux (see What CxOs Think About Linux in the September 2004 issue or online at novell.com/connectionmagazine/2004/09/bottom_line.html), CxOs see open source as a strategic element in their IT shops, with benefits far beyond saving a little budget. Open source utilities and applications offer strategic benefits that bring real and recurring business advantages.
To understand these advantages, we must note that IT has a welldefined mission, which is:
Automate business processes ...
... to gain competitive advantage ...
... without spending all the profits.
Like all software, a well-selected open source tool automates processes and creates competitive value for your company. The open source difference lies in where proprietary software has erected obstacles to creating more competitive business advantages for you. Some areas where CIOs have encountered limits with proprietary software include:
- Unresponsive vendors who cannot, or will not add necessary features
- Slow response to bugs that disrupt business processes
- Vendors who exit a line of business and do not continue to enhance a product
- Competitive issues that prevent interoperation and integration of products
- Inability of vendors to support regulatory certifications
- Lack of access to decision makers and developers in a vendor organization
- Adverse licensing contracts that slow or prevent expanding the potential value of vendor software
- Security exceptions that create financial loss and legal liability
Open source tends to be free of these limitations, and thus grants IT a sophisticated set of strategic advantages. Open source also has some unique attributes that help create competitive value for you that would not otherwise exist.
Let's explore how some IT shops are besting their competitors using open source products and development methodologies.
> Open Source Strategic Points
Time to market
Proprietary software suffers from a competition for scarce resources. In order for a vendor to create the greatest wealth for their shareholders, they must invest development time wisely. This means creating only a small set of features that apply to the broadest number of paying customers.
Open source is not similarly limited. Open source projects attract people with selfish interest, namely creating a product that they would want to use. Open source projects are thus limited only by the number of contributors, which depending on the popularity of the project can easily be in the hundreds.
The net effect is that features tend to be created rapidly. Many companies that have a vested interest in an open source package are also active contributors, using in-house or contract developers to create new value in the system as needed (an option alien to proprietary products). With the open source "release often" ideology–creating updates and releases frequently–new features are often available in record time.
No software works independently, and integrating packages is becoming a higher priority for many IT shops. Open source shines at integration.
The lack of a central profit motive allows open source projects to be well architected, taking few–if any–short cuts. A side effect of this is a heavy reliance on open standards and well-defined interfaces (internal and external). Thus integrating an open source software package is more likely to occur than with proprietary products as the open source software was designed with integration in mind.
|Strategic Benefits of Using Open Source|
|Shorter time to market for new business capabilities|
|Better application integration based on open standards|
|Greater ability to influence or create new features in future releases|
|Safety from vendor lock-in or abandonment|
|Open source methods and tools aid partner co-development|
|Reduced security, liability, regulatory and downtime risk|
|Usually lower acquisition costs than for proprietary software|
Integration is also accelerated due to the complete transparency of open source software. Every action and interaction is viewable within an open source solution. This includes database schemas, transaction controls, all I/O, and all APIs. Whereas with "black box" software one would have to guess at safe and sane methods for creating a lasting integration, one can look at an open source package and determine the best possible approach to tapping the flow of data.
The last aspect to open source integration is that you have the ability to modify the code since you have license to it. If you need an open source package to work with other software, and the features are not readily available, you can create them yourself by modifying the code. Since you are building a dependence on this code for future business processing, you should contribute the code back to the project so it becomes part of all future releases. Try that with Microsoft!
Long term enhancements
Many large IT shops have intimate access to their software vendors, and can exert some measure of influence on the direction of future releases. But this access is reserved for the big spenders, leaving small and mid-sized businesses (and many large ones) with no real control over their IT software strategy.
Open source changes this. Open source contributors are well known, and easily accessible through their project community sites. Companies willing to involve themselves in open source communities have significant influence over the direction new features. You simultaneously have access to other users of the software, and can influence their demand for your preferred changes.
The most interesting aspect of open source is that you can create the changes you need. Many companies allow members of their staffs to use company time to contribute to open source products that are used in-house. This has two advantages: First, desirable new features to existing, complex software packages are created very quickly. Second, your staff gains an intimate understanding of the products on which your company depends. Combined, you achieve the matched goals of having more competitive advantage through software, and a more educated staff who can both understand a software package's behavior as well as change that behavior.
Some firms are opting to outsource open source changes. If an open source package is critical to your operation, but you cannot afford to spend staff hours on creating an enhancement, or if your staff does not have the requisite skills, you can hire contractors to create the new functionality for you. For some companies the cost/benefit analysis is amazingly simple as both are quantifiable.
One aspect of open source development which is only beginning to be noticed is the application of open source software methodologies and tools to partner development. No company is an island, and working with partners requires sharing information. The tighter the partnership, the more automated data sharing must be.
Some firms are applying open source products and open source methodology to integrate partner data. Often it is as trivial as two teams reviewing Service Oriented Architecture (SOA) aspects of their open source tools and creating data bridges. In more advanced cases, teams might be formed as if they were open source communities to create new applications or new functionality to existing open source projects.
The net effect is that partners are able to accelerate integration projects due to the "open" nature of either the core technology (existing open source software) or create new technology that is "open" to both parties.
The logical extension of this paradigm is that communities are rising to create software specific to their industries, or at least to technical disciplines that cross industries. Any time two or more companies have a similar need, there is an opportunity for open source to drive a solution set.
Every choice made in IT software selection comes with risk. Open source software reduces, and in most cases eliminates these risks.
The highest risk comes from software abandonment. If you choose a proprietary package that the vendor later abandons, you have few (if any) recourses aside from a forced migration. Open source solutions do not suffer this because the source code is available to all, including non-competing users. Open source packages are rarely "abandoned" as the community that created the packages is composed primarily of users, and the package remains under perpetual maintenance.
In very rare cases, the original creators of an open source package may want to turn it into a proprietary offering. Most open source licenses do not prohibit this, but they also allow for anyone else to take the original source code and evolve it separately. This "forking" of project assures that your reliance on an open source package is never at risk. For example, VA Software, the creators of SourceForge (an online repository for open source projects) wanted to convert SourceForge to a commercial project. After much debate, an announcement was made to the SouceForge community, and they forked the original design as VA Software created SourceForge Enterprise Edition (incidentally, VA Software and the SourceForge community still have a close working relationship).
One aspect to the non-abandonment of open source projects is that there is no break in continuity for you. Vendor support can disappear, and leave you with buggy software and no means of fixing it. Open source does not suffer these maladies as any bug is addressable.
Few people doubt the superior security provided by open source software. Greater focus on design, greater stability, and the peer pressure that enforces a "security first" mentality creates more secure products. This directly reduces your exposure to risk on several fronts:
- Less chance of direct financial loss through information theft
- Less exposure to legal liability or regulatory penalty
- Greater uptime through enhanced stability
> Tactical Advantages from Open Source
Clearly, open source provides a number of long-term strategic advantages. But your staff lives IT day-to-day, and the tactical advantages provided by open source contribute to their work lives as well as your bottom line. The cumulative effect of these tactical advantages produce more strategic benefits.
Less lag on minor customizations
Often small changes in software have significant effects on end-users. For example, changing the order of fields on a data entry screen can increase the efficiency of call center workers. With open source, minor changes in utilities and applications can be made quickly. With proprietary software, you might never see a minor customization as the limited vendor development staffs working on commercial products are focused on major enhancements and releases, and not minor, customer-specific improvements.
Rapid bug fixes
Enterprises have two advantages vis-à-vis software bugs when using open source.
First, open source products do not suffer bugs for very long. Open source projects are typically founded on the "release frequently" philosophy. Though not as numerous as in the past, open source projects release new versions constantly as minor changes and bug fixes are incorporated. This means that any open source product you adopt will most likely fix bugs more rapidly than a commercial equivalent could.
Most open source projects have robust, online bug reporting systems and procedures. You can report a bug online, and track the progress of the community's efforts to fix the software. I experienced one episode where a corner-case bug was reported in the morning, analyzed by two community members midday, patched by the afternoon, and an automatic email notification was sent announcing the repair before 3pm.
But sometimes fast is not enough. Our industry has millions of horror stories about a new bug in mission critical software that a vendor was slow to fix. The second bug-oriented benefit with open source is that if a defect arises that severely impacts your business, you have the option of digging into the source code yourself and fixing the problem. Many firms adopting open source include on their evaluation check list the programming languages of projects, to make sure their staffs have the requisite skills to debug the software.
Open source projects tend to be modular, and build upon libraries of lower level open source code. Because of these mirrored factors, much of open source is readily reusable, not only in and between open source projects, but also in your home-grown software. If you have a development team that already composes or uses source libraries for their in-house development, adding open source is a breeze. If you do not have such a staff, but want the advantage of reusable code, a great starting point for your staff would be to acquire and catalog some of the foundation open source libraries that are commonly used for creating other open source projects. This acquaints them with baseline tools, and gives them insights into what can be built as they discover these tools in larger open source packages.
> CxO Payoff
Open source is more than just Linux, and the benefits of open source are more than just cost savings. The payoff for CIOs and CTOs are strategic, and will have long lasting benefits. The question is "how do you expand the role of open source in your organization?" As with Linux, the answer is straight forward.
- First, give your staff time to explore existing open source libraries and tools. This will acquaint them with open source communities and projects, and learn how these groups create and support software.
- Second, list the skill sets you want to develop in-house for the long term. This will help in identifying open source projects that you will later adopt.
- Identify a non-critical business process in which you are receiving less-than-desirable support from your vendor, and review the open source alternatives. This could be IT utilities, end user applications, or even customer-facing services.
- Implement this new open source software and participate in at least tne bug fix, one customization, and one contribution to the project. This will give your staff the experience necessary to participate in the full deployment lifecycle of an open source project.
- Next, aim high. Find an area of business where a new solution will bring significant new business and competitive advantages. Find the open source alternative that will best drive these new capabilities, and plan your deployment. Measure the time and cost for deployment and remediation, and compare to past projects with proprietary software.
- Finally, participate deeply in the community around this high value software. Allow your staff sufficient time to become part of the project and contribute to future releases, with the goal of influencing the feature set to your advantage.
With open source as a centerpiece of your IT strategy, you will find yourself gaining business agility faster than your competition, and releasing yourself from dependency on vendors who have failed to deliver.
|Open Source Projects Supported by Novell
Here is a partial list of some open source projects which Novell founded or to which they contribute. The full list can be found at http://developer.novell.com/opensource/.
|Bandit A system of loosely-coupled components to provide consistent identity services. Bandit is building additional services needed for Role Based Access Control (RBAC) and for the emission of records to verify compliance with higher level policies.|
|Eclipse Provides vendor-neutral open development platform and application frameworks for building software.|
|Higgins A framework that enables users and enterprises to integrate identity, profile, and relationship information across multiple systems.|
|iFolder File sharing application for Linux, Windows, and Mac.|
|Mono A platform for running and developing applications, based on the ECMA/ISO Standards. Mono can run existing programs targeting the .NET or Java frameworks.|
|OpenOffice A multi-platform and multi-lingual office suite with word processing, spreadsheet, presentation, illustration, and more.|
|Wine A compatibility layer for running Windows programs on Linux desktops.|
|Xen A virtual machine monitor for x86 that supports execution of multiple guest operating systems.|