For a movement that is still a few months shy of its tenth birthday, the open source community has produced a number of resounding software successes. And despite Microsoft CEO Steve Ballmer’s famous protestation that open source software is akin to promoting communism, the fruits from some of the industry’s open source pioneers are now firmly entrenched within the IT architecture of many organisations, often running side-by-side or completely replacing proprietary-based systems.
In June 2004, for example, the City of Munich became the poster child for the open source movement when city councillors announced its intention to migrate its 14,000 users away from Microsoft Windows and Office to the freely-available Linux operating system and OpenOffice desktop suite. It was a move favourably met by many European politicians eager to reduce their reliance on proprietary file formats. The deal wasn’t huge, but its significance was clear: Ballmer cut short his skiing holiday to try to persuade Munich to stay with his company.
Fast forward two years and there is a marked change in Microsoft’s approach. In November it buried the hatchet with Novell – a company which played an instrumental role in Munich’s decision to go the open source route and which had previously filed antitrust suits against Microsoft – by announcing that it would support interoperability between its Windows-based operating system and Novell's SuSE distribution of Linux.
This tacit endorsement from Microsoft, amongst many others, confirms the growing importance of open source software. As Nick McGrath, director of platform strategy at Microsoft explains, it’s about remaining pragmatic in a changing market and learning from the Linux and open source communities. “We ourselves have open sourced a number of Windows-based projects and put those out into the community”, he says.
Today, open source software is no longer just a free, second-place substitute for proprietary systems. Its growing maturity, particularly in the ‘LAMP’ architecture of Linux, Apache, MySQL and PHP technologies, has made it a viable alternative to proprietary software. Furthermore, the success of application software, such as OpenOffice and Mozilla’s Firefox browser, is giving open source software a visible presence throughout the entire organisation.
Until recently, the use of open source software was limited by a number of factors, with accountability and reliability near the top of the list. Many potential users feared that interest in open source projects might flounder and leave them without support or maintenance for their software. These fears were reasonable: On open source websites such as sourceforge.net – one of many repositories giving open source developers a central base to manage their code – there are thousands of incomplete projects that have simply been abandoned.
But gradually, these fears about open source have abated. Because open source software is freely downloadable, support and maintenance have become the big revenue generators for many services and software companies, big and small. The opportunity has attracted global IT companies such as Hewlett-Packard, IBM and Sun Microsystems, as well as open source specialists such as Novell and Red Hat.
In October, for example, database and applications giant Oracle joined in, announcing it will produce its own version of Linux under the new ‘Unbreakable Linux’ brand – one that will be similar to Red Hat’s version of Linux, but that promises to undercut the prices of its former partner.
DOWNLOAD NOW, PAY LATER
Cost is cited as one of the main reasons for open source adoption. According to a survey by analyst firm Forrester Research, an average of 72% of European firms claim lower total cost of ownership and lower software acquisition costs as the key advantages over commercial software.
However, the notion of ‘free’ software is misleading. In 2000, when the Central Scotland Police (CSP) decided to pursue an open source policy it adopted open source web servers, database servers, firewalls and Sun Microsystems’ desktop software, Star Office. Yet five years later, it realised that the initial £245,000 it projected to save was being consumed by high maintenance and support costs. "For desktops, open source software can have a short lifespan and it needs a lot of configuration,” says David Stirling, head of CSP’s ICT unit. “The size of our department means we can't afford to have people spending a lot of time putting in bespoke systems."
CSP subsequently signed a new £60,000 three-year deal with Microsoft – a move it says will cut its maintenance costs by 30%.
“Transparency is the hallmark of a successful open source project.”
Brian Behlendorf, CTO, CollabNet
Perhaps more important for companies such as Specsavers, the national and international network of opticians, is the ability to develop and manage their own software strategy. It was a case of gaining “control of our destiny”, says Rick Kocher, director of systems development at Specsavers. “We reached a point where we couldn’t wait for some of our suppliers to keep pace with us. We didn’t want to be on somebody else’s roadmap, waiting for them to get their act together.”
The success of open source lies in its philosophy of releasing software early, and releasing it often – a policy that differs substantially from releasing an application only once it has been built and tested following more formal methodologies.
But why should this lessen the frustration caused by using closed-source software?
The primary reason is that it embraces a collaborative and transparent style for the development of components – components that have traditionally been complicated to create, difficult to manage, nearly impossible to change and expensive to own within the closed-source model.
Collaboration and transparency are fundamental to the open source movement, especially because many projects are undertaken by developers who are not physically in one location – indeed, much of the open source development is a worldwide collaborative effort. This has necessitated good documentation: discussions tend to take place over email – which can be archived into logs for future reference – and through web-based tracking and version control systems to help co-ordinate the project’s development. This differs sharply from other types of software development where documentation is often poor or an afterthought, especially when development is done in-house.
Brian Behlendorf, the CTO of collaborative software development company CollabNet and one of the founders of the original Apache software project explains how important this open process is: “Transparency is the hallmark of a successful open source project. What works about open source, I think, is that you have this visibility, not just into the code, but into the community of people around it too – the people who use it, the people who develop it and all the artefacts of its development.”
Behlendorf explains that this transparency is not just in the form of patches being proposed on a mailing list, or seeing the stream of changes on the repository log, but it is also being able to see the back and forth movement of how engineers do joint design and development, the rationale behind the decisions that get made and the proposals that get brought up and then shot down. “It becomes the equivalent of sitting in a room of really smart people talking about the right way of building a project,” he says.
Because of the number of developers working on open source projects, there is a greater chance that applications will get ported to another platform – or many different platforms – than the application vendor would have done in the proprietary world. The Tanzanian-based Open Swahili Localization Project is one such example: by modifying the code base of OpenOffice, Swahili-speaking people in countries such as Kenya, Tanzania and Uganda can now use applications in their own dialect.
This type of project works because as the codebase is modified, it is redistributed back into the open source community. Projects such as Linux and Apache, for example, have become successful through this method.
The rise of open source software
Open source is a set of principles and best practices that describes a methodology for the development, deployment and support of software. According to the Open Source organisation when programmers “can read, redistribute, and modify the source code for a piece of software, the software evolves.” It places a significant emphasis on collaborative development, rather than the top-down or more formal “waterfall” method of development.
The rise of the Internet further enabled the collaboration that is inherent in this type of development, and subsequently open source software has become the most prominent face of this movement. The term open source was chosen during a strategy session in Palo Alto, California in April 1998, at an event attended by Linus Torvalds (creator of Linux), Larry Wall (creator of the Perl programming language), Brian Behlendorf (lead developer for the Apache web server), Guido van Rossum (author of the Python programming language) and Jamie Zawinski (co-developer of the Mozilla and Netscape browsers) amongst others.
The term open source was chosen to differentiate itself from the free software movement, and although there is overlap between what they represent, both follow a different philosophy in their approach towards developing and distributing software.
But not all software based on open source needs to be fed back into the community. In many cases, new software gives organisations a competitive advantage, rendering this method of collaboration inappropriate. In these cases, the codebase is taken ‘in-house’ by the IT department and extensions are not fed back into the open source community. This is creating the mix of proprietary and open source software models found in organisations today, says Kim Polese, CEO of open source distribution vendor SpikeSource. She thinks that as open source takes root, it is unlikely that it will be spoken of as a phenomenon in ten years from now because it will become so much a part of how companies build software.
The BBC is a typical example of this emerging hybrid approach, as Michael Sparks, a senior research engineer, explains. The broadcaster uses both proprietary-based and open source systems because it makes good business sense. By avoiding open source software the BBC’s choices would be severely limited and it would mean cutting the broadcaster off from useful technologies, he says.
At a network infrastructural level, the BBC uses components of the Apache web server and the Perl programming language for content delivery on its bbc.co.uk website, together with the MySQL database and Linux operating system. However, this complements its proprietary line-up of Oracle databases and applications. Further up the enterprise stack, Microsoft continues to dominate the large majority of desktop applications, although open source software such as Mozilla’s Firefox browser and OpenOffice are used elsewhere, particularly inside the BBC Research Unit.
Open source software is also finding its way into organisations via traditional proprietary vendors, many of whom are now either using elements of open source software to build their products, or by incorporating open source technologies into their product offering.
“Open source will not be spoken of as a phenomenon in ten years from now because it will become so much a part of how companies build software.”
Kim Polese, CEO, SpikeSource
Business software vendor Sage, for example, intends to introduce the MySQL open source database into its small business range of accounting products. Its reasoning: MySQL embraces an open source methodology which injects rigour and agility into the development process, says Klaus-Michael Vogelberg, chief technology officer of the Sage Group. “As it is not dependent on one platform, [it] gives our customers choice in how they use their Sage products in relation to operating systems and other applications,” he says.
Other vendors, such as IBM, use the Apache Geronimo server inside its Websphere Community product and Eclipse Foundation technologies inside its Rational Development tool set. And Sun Microsystems has announced that it is to open source its entire JAVA platform.
The growth of open source is also likely to be driven by companies implementing a service-oriented architecture (SOA). According to a survey by Forrester Research, there is a strong correlation between adopters of SOA and open source software.
The componentized nature of open source makes it very appealing as building blocks for services in an SOA compared with many commercial products, says Michael Goulde, senior analyst at Forrester Research. The strong standards support offered by open source software facilitates the interoperability and integration needed for SOA, making it a good source of technology for enterprise SOA strategies, he says.
This is another strong endorsement for open source software and barring any underhand tactics from proprietary vendors seeking to capitalise or undermine its strength, mission-critical applications are likely to be its next success.
Further reading in Information Age
Oracle becomes Linux distributor, October 2006
Open source innovation continues to impress, June 2006
Source material: Attitudes to open source are changing, November 2005
Open source becomes more strategic, September 2005