Succeeding with Open Source
Chapter 1, The Source of Open Source
Many people are unclear about what open source is and who can benefit from it. In this chapter, open source software expert Bernard Golden gives an overview of the open source software model, covers open source basics and discusses the different characteristics, such as source code availability and licensing conditions, an open source software application is based on.
What is open source?
Every good newspaper story starts with these critical questions: who, what, when, where, why, and how. By answering these questions right up front, the reporter enables readers to comprehend the important facts and implications of an issue quickly and incisively. This chapter uses the practices of journalism to provide a quick overview of open source software. It addresses each of the questions and offers a speedy introduction to what is perhaps the biggest sea change in the software industry since its beginnings more than 40 years ago.
Since those beginnings, nearly every software company in the world has followed the same business archetype: closely held intellectual property, developed by the company's own employees, delivered in binary format, licensed to users to run on their own computers. This formula has been responsible for the growth of today's commercial software industry: a $400-billion business behemoth that the United States dominates, and the products of which impact nearly every person on earth.
Today, however, that archetype is being challenged by a new software formula: open source. Developed and maintained by volunteers, distributed to users at no cost, and available in source form, it is radically different from its commercial counterpart. Open source promises to shift the balance of power from vendors to users: Information technology (IT) organizations can, for the first time, control their own destiny.
However, this control comes with a price. As the story of Aladdin and the magic lamp illustrates, magic powers carry with them new responsibilities. Each of the new characteristics of open source software forces IT organizations to develop new ways of thinking about how they procure and implement software.
Available without cost, open source is distributed to users under different licensing terms from commercial software. Open source licenses offer IT organizations much more freedom in how they use software—freedom to install it wherever they want, modify its source code if they wish, and even redistribute the modified source to anyone they choose. IT organizations have far more power over their software infrastructure now than at any time in the history of computing.
In addition to the different license conditions, open source software is created under different conditions from commercial software. Instead of being developed by a private company that takes responsibility for all aspects of the product, open source is written by a small group of developers, typically unpaid volunteers. For delivery of all other product elements, open source developers rely on the user community or other commercial entities.
Because of the differences between open source and commercial software, IT organizations must use new methods to select and assess software. Open source users must take responsibility for locating all the product elements that commercial software companies typically deliver along with their software: support, training, documentation, and the like.
Locating the elements is just half the battle, however. Unlike the commercial software industry, where the vendor takes responsibility for the quality of each of the product elements, in the open source world that responsibility falls to the user. Each element must be evaluated by the user to determine its quality. This responsibility demands a new model of product procurement—one where the IT organization is an active participant in creating the complete product, rather than a passive recipient of what the vendor delivers.
The new archetype demands new working practices. Just as the software industry has had more than 40 years to perfect its business practices, software users have had more than 40 years to hone their skills in procuring and implementing commercial software. For open source, new skills need to be developed and used.
This chapter begins the process of outlining those skills with an introduction to open source. It addresses the following topics:
- What is open source?
- Who creates open source?
- Who uses open source?
- Where do I get open source software?
- When and how do I use open source?
What Is Open Source?
When most people hear the term open source, their initial reaction is, "What is open source? What does it mean?" Simply put, open source is software that has the following characteristics:
Source Code Availability
Open source is software that has source code available to its users. It can be downloaded at will and used or modified as desired, as long as its license requirements are observed. This differs significantly from commercial, or proprietary, software, which is distributed only in binary format to ensure that its intellectual property remains privately held by the software creators. Commercial software is delivered in frozen form: It must be used as delivered.
Open source products are usually also available in binary form so that they can be used on common operating systems without needing to be compiled first. Of course, not every operating system will have a binary available, but the source code makes it possible for the product to be compiled for any operating system that does not have a binary version available.
Open source software licenses are far less restrictive in terms of how the software can be used. This does not mean that there are no conditions imposed by open source licenses. Open source usually allows an organization to use the software in any way it desires, but often requires that any changes made in the source code be shared with the user community and given to any customers of the organization that makes the change.
Open source software is distributed at no cost (this is mostly true; see Chapter 2, "Open Source Business Models," for a discussion of open source products available for purchase). This makes sense because it reflects the reality of source code availability. There is no way to control distribution of a software product available in source form. If any attempt were made to limit the product's use by, for example, locking the executable onto a single processor, the source could be modified to take out that portion of the code. Free source implies zero-price software.
There is no charge for the source code either. In this way, open source differs significantly from freeware, a type of software open source is often confused with. Freeware is software distributed without a fee, but without source code access. Freeware creators tightly restrict the intellectual property rights to the software and offer the software on a "take it as it is" basis, in contrast to open source, which carries far less restrictive licensing terms and allows users to modify the product if they so desire.
Freeware is often distributed on a "time-bombed" basis, meaning it is free for use for a certain period of time. When that period is up, the software stops working. If the user wants to continue using the product, a licensing fee is necessary to defuse the "time-bomb" restriction.
The fact that open source software is zero price offers tremendous benefits to users:
- The common dilemma of wanting more installations than they can afford is avoided. Use of additional copies often increases the benefits of the software to the organization.
- The availability of zero-price software encourages innovation. Expensive software forces IT organizations to purchase software only for proven applications. Lower costs allow organizations to experiment and develop new applications or even new lines of business. This allows an organization to take greater advantage of IT in running their business.
- Zero-price software enables IT organizations to stretch their budgets farther and purchase software that they might not have been otherwise able to afford. The dollars saved by using free software allows funding for additional applications that might not have otherwise made the budgetary cut.
- Zero-price software reduces overall IT costs, allowing an organization to make greater investments in other aspects of its business. Free software reduces the number of capital expenditure trade-offs that companies must make.
FREE SOFTWARE AND ZERO-PRICE SOFTWARE
Readers who wonder why the unusual "zero price" term is used instead of "free" should be aware that some participants in the open source community have a very different meaning for the term "Free Software." The adherents of Free Software believe that computer software should be widely available with no restrictions placed on its use, study, copy, modification, or redistribution.
Most participants in the open source community do not share these beliefs, but instead feel that intellectual property should be made available according to the motivation of the creator(s). Much more information about Free Software can be found at the Free Software Foundation's Web site (www.fsf.org).
It might seem a bit confusing to use the term zero price to refer to the cost of open source software, but this alternative seems preferable to the potential confusion of using the term free. The term Free Software carries with it much more implication than zero price, which should be kept in mind. In this text, zero price refers explicitly to the fact that most open source products are available at no charge.
Open Source: A Different Licensing Model
All software licenses reflect the rights of the creator to control how the software is distributed. Software is a copyrighted entity that embodies intellectual property, and, as such, enjoys the legal protection of copyright law. Although copyright law is often used to restrict use of a product, the law can be used to enable wide distribution as well. Every piece of software is distributed under some kind of license, which controls the manner in which the product can be used.
Open source licenses differ significantly from commercial software licenses. Commercial licenses restrict the use of the software as much as possible, to enhance the possibility of selling many licenses. In contrast, open source licenses are written with the aim of encouraging wide use, with very few restrictions placed on the use of the software.
One way of viewing the differences in licensing practices between commercial and open source is that commercial software licenses are written to allow the software creators to harvest the value that users receive from the product. By contrast, open source licenses are written to allow software users to harvest the value from the product. As noted earlier, users are allowed to modify the source code if they desire to increase the value they receive from the software. Other benefits of open source licensing include the following:
- Users are not restricted as to which or on how many machines they can install software. Commercial licenses typically control very tightly on how many machines software can be used. Being able to install as many copies as desired is a great benefit to users. As application use grows, it is easy to expand the number of copies installed for load-balancing purposes. Furthermore, organizations can install additional copies of open source software for training, testing, demonstration, and integration purposes. The flexible licensing terms encourage organizations to use software in ways that offer the greatest benefit to them. Strict licensing terms often restrict users from using software in ways that offer them the greatest possible benefit.
- There are no restrictions on access to later versions of the software. Commercial software licenses often require large "maintenance" payments to enable user organizations to access patches, maintenance releases, and upgrade versions of the software. Open source software imposes no such restrictions.
- The user communities for open source products are usually much larger than for commercial products. Because the products are available at zero price, many more organizations use the products. Large user communities offer many benefits to the developers and users of the software.
Open Source: Free Speech, Not Free Beer
Open source devotees often describe the importance of its licensing with the phrase "free speech, not free beer." The point of this phrase is that, although open source software is usually available at zero price, the critical aspect about it is that open source offers real freedom for software creators and users. Specifically, the "free speech" part of the epigram refers to the liberty that the users of open source have to use, modify, and distribute the software. This liberty is tied to the licensing conditions that make source code available to software users.
Source availability means that the uses someone can make of software are nearly unlimited. It can be copied. It can be modified for one's own purposes. The modified version can be distributed as well, if one chooses to do so. So, "free speech, not free beer" emphasizes the rights that accompany open source licenses and points out that these rights are not the same thing as zero-price software.
"Free speech, not free beer" might overstate the appeal of free speech and understate the appeal of zero-price software to most open source users, just as New Hampshire's motto "Live Free or Die" might be only a small part of the residents' enjoyment of the state—the larger part being the low taxes they pay. However, open source licensing terms make possible the free availability of products as well as underlying the other benefits of open source software. The topic of Free Software is addressed in the "Free Software and Zero-Price Software" sidebar as well as in the licensing section of Chapter 3, "Open Source Risks."
Conditions of Open Source Licensing
Just because open source products are available with an unrestrictive license does not mean that there are no licensing conditions at all. Typical license conditions include contributing any source changes back to the main source base and distributing source changes to any customers of the organization that modified the code. The specific conditions depend on the type of open source license that accompanies a given product. The topic of open source licensing is addressed at greater length in Chapter 3, "Open Source Risks."
Continue to the next section: Developing open source software
Download Chapter 1, The Source of Open Source
Read other excerpts and download more sample chapters from our CRM and call center bookshelf