Open Source
Migration
Guide

Helping organisations migrate to Open Source Software

NOTE: this is an incomplete work-in-progress; development continues on an almost daily basis.

Contents
Home
 > Contact
 > Definition of OSS
 > FAQ
 > Guide Rationale
 > Links
 > GNU/Linux
 > References
 > Benefits
News & Opinion
Case Studies
Software Packages

Contact



The Open Source Migration Guide is edited and maintained by Mike Banahan of GBdirect Ltd. This page last updated May 08 2003 02:48:03.

Introduction

This page contains both a practical definition of Open Source Software from a user's point of view and also a brief explanation of the term Open Source Software. The practical definition is somewhat at odds with the explanation of the terms. Live with it: the benefits that follow from the judicious use of open technologies are not always directly related to the software production process.

Practical Definition of Open-Source Software

The true believer's definition of Open Source or Free software is promoted by a small army of evangelists. Sites like The Open Source Initiative and GNU/GPL provide precise answers but aren't necessarily what you want to delve into in detail every day. They are tend to talk about the features of the software that meets their definition and not usually about whether it makes business sense to use it in a particular application[1]. This site takes an iconoclastic view. The precise definition is not what matters, it's the benefits of Open Source Software that most people care about. So, for this Migration Guide the working definition of Open Source is software that

  • Does not hide its source code
  • Licences the source in ways that permit you to change it for your and others' benefit
  • Conforms to published standards in ways that permits you to choose best-of-breed implementations
  • Does not promote or limit you to proprietary interchange formats

In other words, software that opens the doors to free and fair competition in the markeplace. Software which, if it proves to be no good for whatever reason, hasn't trapped you in a position from where it is hard to replace it with something better or improve it yourself. And finally, software that is not under the control of a single vendor who can push upgrades or expensive licensing conditions upon you when you have no recourse to alternatives.

Plenty of software meets the rough-and-ready definition above. Much (though not all of it) is free not only from restrictions on how you use or distribute it; it is also generally free of charge. Commercial users usually don't object to paying a reasonable licence fee for support and a guarantee of quality even though the stricter of the many licences may stipulate that the software must be distributed free of charge. On this site, free-of-charge is a secondary consideration. Purists may dislike the definition but we are addressing the business user with a job to do.

As an aside: the discussion of licensing, copyleft, free software and many other issues (see the links above) is very important. Anyone who really cares should read and understand the issues. There are weighty and fundamental arguments to digest. You probably won't think about them on a day to day basis if you are just an ordinary user of Open Source Software but that doesn't absolve you of the responsibility to follow the arguments and understand why people were motivated to produce and distribute the software in the first place.

The Terminology

At its loosest, Open Source Software describes software with openly published source code. Source Code is what programmers produce; a series of descriptions written in a computer programming language. Source code corresponds closely to the engineering drawings, schematics or blueprints used in other industries, but with a crucial difference: other industries have to go through expensive manufacturing processes to turn those descriptions of a product into tangible goods. In the software industry, the descriptions are the goods and they have almost negligible production costs once developed.

In most engineering industries it's normal to provide distributors or customers with access to those schematics to assist with maintenance and repair. The practice is, and has been, commonplace in parts of the software industry too. There are many benefits that follow from publishing source code as other sections of this site argue. However, an argument that source code is a unique form of intellectual property has taken root in other parts of the software industry and has led to software-only companies tending to adopt a practice of closely guarding the source code and taking extensive measures to prevent its dissemination. The argument has some justification.

Proponents of Open Source Software argue that the benefits of publishing the source code are greater than those that follow from keeping it closed. Many go further (see the section on licensing). In economic terms there is clearly an argument that the world at large benefits from the exchange of techniques and ideas; most of the academic and research infrastructure of the developed world tends to work that way. The benefits are clearer when looked at from the point of view of the community at large and less obvious from the narrow perspective of a single producer. Even so, the arguments have swayed individual producers too.

An example may help to clarify the point. In the late 1970s AT&T was a monopoly provider of telephone services in the USA and one of the world's largest, most profitable businesses. Researchers at AT&T's Bell Laboratories produced a software system (the Unix&trade Operating System) which, because of their monopoly, they were legally enjoined from distributing or licensing on a commercial basis. Intially Unix was not very usable or interesting to commercial software purchasers. AT&T licensed the source code at a price which guaranteed little interest from commercial users (around US $64,000). They made it available to bona-fide academic institutions for a much lower figure of around US $600 but with the strict condition that any improvements or enhancements must be made freely available to other licencees and that they would remain the property of AT&T.

The software was quickly adopted as the operating system of choice by many academics around the world and even in those pre-internet days numerous informal networks grew up to exchange software enhancements and updates to the original software as produced by AT&T; conferences, journals and user groups all rapidly developed on the back of it. The initial handful of developers at AT&T was augmented by thousands of the academic software researchers and developers all around the world. Unsurprisingly Unix grew in size and influence; not simply because of AT&T's initial contribution but increasingly because of the contributions of the users.

The legal breakup of AT&T in the early 1980s resulted in Unix being licensed on a commercial basis. To this day it provides a large part of the corporate computing infrastructure. IBM, HP, Sun, Siemens, Fujitsu and many other major IT suppliers have their own branded versions of the original Unix system. It is hard to overestimate the impact of AT&T's initial decision to licence the source code and encourage the free exchange of enhancements amongst users.

The way that Unix was licensed demonstrated the value that's argued by Open Source proponents. Nonetheless it was closed to those without a licence and definitely not "free" in the ways that, say, the Free Software Foundation wish to see. The experiences gained from Unix and other projects with a publish-the-source-code model led to many radical thinkers arguing that all software should be licensed according to even more generous terms. You can read their arguments at length if you wish. The definition of Open Source as used on this website would easily include the Unix model, but it's not a viewpoint that is popular amongst the purists.

Most Open Source advocates argue that:

  • Source code should be published but nonetheless remains copyright
  • Anyone should be allowed to modify or enhance the software for their own use
  • Modifications and enhancements should be contributed back to the good of the project
  • No restrictions should be placed on the use of the software
Other similar arguments are made, all along the lines of not restricting the freedom of use and further development of the software (these are the "freedom" arguments).

Further arguments also exist to do with the free-of-charge aspects of the software which are better described elsewhere. The free-of-charge elements cause controversy and even accusations of being "communists" to be brought against their advocates.

This site takes the view that the loose working definition of Open Source Software is fine for business users and that clear benefits follow from the use of standards-compliant, interchangeable and user-maintainable software components. It also takes the view that arguments about the politics are fascinating but irrelevant to the business end-user.


[1]Yes, that statement is highly contentious, not to say inflammatory. The point is that this site is about getting on with things, not arguing about the (important) theology of open/free software. There are plenty of other places that do that already.

Home

You are reading an incomplete work-in-progress. Development continues on a daily basis. Too many sections are currently place-holders but these will be filled as effort and budget permit.