Skip to content.

OpenAdvantage - Freedom, Choice, Control

Sections
Home Articles Opinion: Why you should care about open source

Opinion: Why you should care about open source

We explain the reasons why every IT company should care about open source, and the effect it is having on the IT industry. We also make some tentative predictions about where open source is going.

Authored by: Elliot Smith, OpenAdvantage, September 2005

Introduction

Open source is a hot topic.  Barely a day goes by without a major announcement in the computer press about open source: companies introducing new initiatives, such as Sun releasing Solaris 10 as open source; established vendors ploughing huge amounts of resource into open source projects (e.g. IBM donating millions of dollars to the Eclipse project); and venture capitalists flocking to fund open source companies (e.g. SugarCRM, SpikeSource).

Many of the world's most successful companies attribute at least some of their success to open source software (OSS). Amazon runs on the open source Apache web server. Large parts of Yahoo! are built on Linux, FreeBSD and Apache, and written in PHP and Perl. It's no coincidence that these successful companies use OSS. They have leveraged its flexibility to build bespoke systems at a fraction of what similar proprietary systems would have cost. Amazon, for example, claimed a while back that using Linux cut their costs by about $17m per year (25% of its technology expenses).

Many UK businesses have also learned the same lessons, lowering costs and avoiding vendor lock-in. According to a recent National Computing Centre report, open source has already penetrated deep into many organisations: 41% of the 143 organisations surveyed had already explicitly adopted some OSS in their operations, and 73% expected OSS to become more prevalent in their IT strategy over the next five years.

Even if you're not already one of these companies, you are in fact relying on open source every day: every time you use the internet, your request is likely to rely on OSS (BIND) to reach its target host.

So open source is here to stay and is everywhere. How can your company get used to having it around?

Open source: the opportunities

For an IT company, open source provides enormous opportunities. Many companies have already realised these benefits, by using Linux servers to lower costs and increase reliability for back office deployments. Going beyond this, in the following sections we give some examples of the areas where we see opportunities for IT companies looking to use OSS.

Providing low-cost services

The low price of open source makes it possible to realise the promise of the Application Service Provider model. This model has been around for a while, but has never really delivered - until now. Because open source infrastructure is cheap (no licensing fees, either for the server or client access), readily available, and massively scalable, it is possible to use it as a base for low cost services delivered over the internet. Many companies are taking this approach: 37signals, Friendster, Photobox, and Evite are some successful examples. These companies are relying on a commodity market (lots of customers at low prices) to make their business pay off. Often, the foundation of these services is the LAMP (Linux, Apache, MySQL, PHP) stack, a solid bedrock for most kinds of web application.

Accelerating development

If developing proprietary software, you have to either write the code yourself or license the required code from a third party. Writing it takes time; sourcing it often means a license fee each time the software is distributed to a client. With open source, there is a third option: source the code from the community. This way, you can take advantage of the wealth of quality code which already exists.

In addition, OSS will have been exercised more exhaustively than a single software company could ever manage. The old truism about "many eyeballs make all bugs shallow" holds, at least in cases where the software is widely used, resulting in very high quality software. Just to give an idea, Linux was recently audited for bugs by Carnegie Mellon University. By contrast with proprietary software, which typically has 20 to 30 bugs per 1000 lines of code, Linux was found to have a mere 0.17 bugs per 1000 lines: slightly less than 1% of the expected amount.

If you are going to use open source, there are good and bad ways of going about it.

  • It is a good idea to have a clear policy about how it is used. For example, you could ensure that you have guidelines about where use of open source software is appropriate and where it is not, and perhaps a procedure for documenting use of open source within your products.
  • On the other hand, it is a bad idea to allow your engineers to incorporate flaky, unmaintained software into important products willy-nilly. As a minimum, you should have some mechanism for making and recording software assessments. In the case of poorly maintained but promising software, there is always the option to stabilise and maintain the software yourself: but you have to be clear about whether you want to take on this kind of role.

Avoiding lock-in

As well as being able to use existing open source components as part of your development process, open source also offers several high quality development environments, languages and tools. For example, Eclipse is a very full-featured integrated development environment, heavily supported by IBM and used for their own internal development work. It is freely available as open source. Languages like PHP, Python, Mono and Ruby have open source implementations, providing most (if not all) of the features of proprietary languages like Java and .NET at low cost. Using OSS for your development provides some big benefits:

  • Reliance on a vendor-specific development environment puts your fate in the hands of that vendor. If the vendor decides to up their prices or discontinue the tool, you either have to pay up or stick with the obsolete tool. With open source languages and tools, you can be satisfied that they will be around for a long time, in one form or another. If a tool was originated by a vendor but released as open source (as in the case of Eclipse), that vendor is unable to take that code back from the community due to the nature of the license.
  • There are no licensing fees attached to the tools. If you hire another developer, you do not have to pay for their development environment; if developing in a proprietary environment, the tools alone may cost anywhere from £300 to £1500, depending on what developers need. Upgrades are similarly free of licenses.
  • Open source development tools are used by thousands of developers across the world, many of whom are very demanding users. The fact that the tools work for all of these people is good evidence that they are capable, usable and stable.

Approaching the future

Given these opportunities, we can expect to see IT companies making increasing use of OSS. We can also make a few predictions about future trends in the industry more generally:

  • Use of open source will become more structured. So called "second generation" open source companies are emerging, providing standardised, integrated, certified stacks of OSS: for example, Sourcelabs and SpikeSource are attempting to do this with LAMP. More end-user companies will look to this kind of service, rather than doing their own home-grown integration work.
  • Open source will invade sectors traditionally dominated by proprietary software. Open source has become a main-stay at the infrastructure level, and we can see the next wave beginning to have a similar impact at the applications level. Mambo (content management), osCommerce (e-commerce) and SugarCRM (customer relationship management) are just a few extremely popular open source applications which many companies we work with are using as a base for products. Some make money by building proprietary add-ons, others by supplying customisation, installation and configuration services. Some of these applications are already starting to threaten what were previously entrenched "enterprise" markets, undercutting the offerings of larger companies and disrupting their sales (e.g. SugarCRM).
  • Frameworks for assessing open source are starting to emerge, such as the Business Readiness Rating championed by Intel, SpikeSource and O'Reilly. This framework specifies a ratings system for OSS, across a wide range of features. If it takes off, it will provide a large pool of OSS assessments, usable by any company. This will mean that making decisions about the maturity of OSS will become far easier.
  • IT customer expectations will change as open source penetrates further. With OSS, easy testing of the full product without time limits, direct access to developers, and visibility of all outstanding bugs are common features. This is less the case with proprietary software. One thing we expect to see is the "opening up" of proprietary software to these common open source development practices. We have already seen this happen with Microsoft Shared Source, though it doesn't really go far enough. Hopefully this shift will enable IT companies to reduce their emphasis on sales, letting quality engineering speak for itself instead.

OSS is gradually emerging into the mainstream, along with all the trappings of a mainstream movement: support organisations, business models, commodity products, and so on. Every IT organisation should at least investigate OSS, as it has far-reaching implications for the whole industry.