A third difference is that the GPL is a single, copyrighted (by the Free Software Foundation, Inc.) license with no variants. BSD-style licenses, in contrast, are commonly modified for the specific situation.

In many cases, the use of open source code can allow companies to develop products more quickly and with less expense than if they wrote them with entirely original code. The fact that derivative products of BSD-licensed software are not required to be open source can be very useful for developers who want to create commercial products from open source code but who want to keep their modifications and/or extensions secret. Interestingly, companies that initially develop closed source products based on BSD-licensed code tend to be more likely to eventually make their source code publicly available than are companies that develop products that do not incorporate code code.

The issue of which license provides greater freedom and does the most to promote the development of improved software is highly controversial. In spite of the seeming simplicity of the licenses, there are no simple answers.

One of the most controversial properties of the GPL is its viral nature. This means that once some useful modification or addition to a GPL licensed program has been released, the source code of the modified or extended program must likewise be made freely available. That is, the GPL is a mechanism that deprives developers of the freedom to make their source code secret at some future date, although the developer can still use such code in commercial products. Critics of the GPL claim that this diminishes or destroys the commercial value of software because others can produce products that incorporate the same code.

GPL advocates claim that although the GPL is contagious in theory, it is not necessarily so in practice. Rather, they assert, it merely places restrictions on the code's re-use, as do BSD-style licenses.

One thing about both the GPL and the BSD-style licenses for which there is widespread agreement is that both have problems. Neither is perfect, and perhaps no license can be perfect. There is also considerable agreement that there are benefits both to software developers and to society as a whole from the choice provided by the existence of a variety of types of free software licenses, including the GPL and BSD-style licenses.

The "Advertising Clause"

The original version of the BSD license contained the so called advertising clause, which stated that all advertising materials that mention features of or use of the software must display the acknowledgment: "This product includes software developed by the University of California, Berkeley and its contributors."

One of the problems with this clause arose from the fact that people who made changes to the source code often wanted to have their names added to the acknowledgment. This could easily result in large and cumbersome acknowledgments for products with numerous contributors and for software distributions consisting of multiple individual projects.

A second problem was legal incompatibility with the terms of the GPL. This is because the GPL prohibits the addition of restrictions beyond those that it already imposes. Thus it was necessary to segregate GPL and BSD-licensed software within projects.

Next Generation Firewall Open Source Licenses 35