Return to BSD News archive
Newsgroups: comp.os.linux.advocacy,comp.unix.bsd.freebsd.misc Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!nntp.coast.net!chi-news.cic.net!newsfeed.internetmci.com!in2.uu.net!news.alias.net!myriad!mylinuxbox!suck!netcom.com!kevinb From: kevin@frobozz.sccsi.com (Kevin Brown) Subject: Re: Linux vs FreeBSD Message-ID: <kevinbDJGqtq.Fup@netcom.com> Sender: kevinb@netcom15.netcom.com Reply-To: kevin@frobozz.sccsi.com (Kevin Brown) Organization: Frobozzco International References: <489kuu$rbo@pelican.cs.ucla.edu> <DJ8DMn.3oM@nntpa.cb.att.com> <4aa6k2$9et@josie.abo.fi> <4aajus$nd@dyson.iquest.net> Date: Tue, 12 Dec 1995 07:44:13 GMT Expires: Mon, 11 Dec 1995 08:00:00 GMT Lines: 201 Xref: euryale.cc.adfa.oz.au comp.os.linux.advocacy:30049 comp.unix.bsd.freebsd.misc:10262 In watching the debate between GPL/LGPL and the BSD/MIT copyright, it occurs to me that perhaps people haven't really thought this stuff all the way through. To begin with, let's examine the state of affairs in the commercial world *sans* free software, with respect to one particular capability. Let's look at the capability to compile C code. In the commercial world, an entity that wants to compile C code has two choices: it can either buy the capability from someone who has written the software to do it, or they can write such software themselves. Since writing software is itself an expensive proposition, any company that decides to write such software is likely to sell it to others under the same terms that other companies do, namely without source code. Where there exists more than one company selling such a product, competition is likely to ensue, thus reducing the cost of the binary distribution somewhere close to the actual price of making sufficient profit from the product to keep the distributing company alive (i.e., enough to make it worth it to the company to distribute the binaries, but low enough to keep the demand high enough). The end results? Well, for one, an entity which needs to compile C code must either pay a very high up-front expense to write the code themselves, but reap the support rewards of having complete access to the source code, or they must pay a low to medium amount for the compiler but get support which can be, and often is, worse than what they could do had they access to the source. In the latter case, the entity cannot get support from any source other than the compiler vendor, and this means that the compiler vendor, having a monopoly on the support for their product, can charge a relatively high premium for it (note, however, that since they *are* likely to be in competition with other vendors, the price of the product + the price of the support is likely to be more or less competitive with the prices of the other vendors, but vendors overall can charge a higher price because it's not at all clear how the price breaks down). The consequences to the vendors themselves? Clearly, each must invent the ability to compile C themselves, since they have no access to source. Furthermore, they need to distinguish their compilers from the other offerings, which means that they end up inventing features that are incompatible with the ones offered by their competitors. Where a vendor wishes to include a feature offered by another vendor in their own compiler, they must invent it themselves. Now let's examine the case of free software under the BSD copyright in the above conditions (assume for the moment that there is a freely available BSD compiler). Vendors now have a choice: they can either implement the ability to compile C code themselves, or they can distribute binaries derived from the BSD compiler. It's pretty unlikely that they'll distribute source, since that would be an added expense. Consumers also have a choice: they can either buy binaries from a vendor, or create their own binaries (or obtain them from some other free source). The end result? The prices of C compilers drop because the price of development has gone down and because of competitive pressures from the free sector. But two things remain the same: vendors still have a lock on support since they remain the sole source of such support with respect to their offerings, and vendors will continue to invent new features to differentiate their products from those of their competitors and reinvent features that their competitors have. If the free compiler is a good base, lots of derivative works are likely to pop up, but they're also likely to be incompatible with each other. The consequences to the consumer? They can choose the free compiler if they want, but they're not likely to unless the feature set of that compiler happens to fit their needs. The longer the free compiler has been out, the longer commercial vendors have had to create divergent sets of features for that compiler, probably to the extent of making their offerings incompatible with the free version (since doing it that way reduces the competition from the free sector). If the consumer happens to need a feature that only the commercial vendors supply, then they can buy the commercial version and pay for the support that vendor has to offer (whether in money or in bad support, and the two aren't mutually exclusive :-), or they can contract out the work to someone who can then make the appropriate modifications to the free version. Since the BSD copyright allows the author of the derivative work to keep his modifications to himself, such modifications are likely to remain proprietary, and therefore the public version will not evolve much except through the efforts of people in the free sector itself. Now let's examine the case where the only source of free software is GPL'ed software (assume that "GPL" refers to the appropriate choice of the GPL or the LGPL, depending on the context). Commercial entities which wish to write a compiler have two choices: do it themselves or base theirs on the free version. But those that wish to base theirs on the free version are forced to release source, thereby disclosing their efforts to the public. Their alternative is to do it themselves, but that's a more expensive proposition. Competing firms can, and will, incorporate the ideas of their competitors into their own designs, but they can't use the actual code of their competitors unless they also release their product under the GPL, which means that if they wish to use the source of their competitors, it's more economical for them to base their compiler on the freely available version than to implement their own and release the source of *that*. Therefore, while it's possible for multiple, incompatible versions of the free compiler to emerge, it's not particularly likely since there's no advantage to it. This puts all vendors who base their product on the free compiler on an even footing, which means that the *only* way they can really compete is by the support and services they offer. Since they'll be in competition on this point, with respect to the same compiler, the price of support and services with respect to the free compiler will hit rock bottom, as there's no monopoly on it. Consumers will be able to choose between the various proprietary compilers and the free one. Where they choose the free one, they obviously get source and also get the choice of how to obtain their support. Since any vendor who bases their compiler on the free one must provide source, the consumer can provide their own internal support or buy it from any one of the vendors. As with the other cases, they must choose a proprietary one if the free one doesn't provide it, but they also have a third option that's more likely to work in this scenario than in the BSD scenario: they can hire someone to implement the needed feature(s) in the free compiler, since the source is freely available. Chances are, at least one of the support providers will offer such a service. End result? In the free sector, the compiler ends up evolving primarily as a result of the needs of individual consumers who contract someone to implement the features they need, and therefore it acquires the features that the consumer group as a whole desires. Otherwise they buy the commercial version and deal with the well-known consequences of that. This is likely to result in a free compiler that keeps up well with the commercial versions in terms of truly needed features. Now let's look at the case where both BSD and GPL versions exist. Again, vendors can choose between GPL versions and free versions. However, those who are interested in actually implementing a compiler will clearly choose the BSD version, since they can create proprietary, derivative works from it and retain a monopoly on their support. The freely available BSD version, therefore, will evolve only as a result of the efforts of the free sector. Vendors who wish to simply provide support and customization services, however, are likely to choose the GPL version because it's more likely to be kept up to date by other support and customization organizations, and therefore will be a better product than the BSD version. This is a feedback situation: the more vendors that support the GPL'ed version, the more appealing the GPL'ed version will be to both consumers and support/customization organizations. Until support organizations form around the GPL'ed version, however, the GPL version and the BSD version will be on equal footing, evolving only as a result of the efforts of the free software sector. There is one other factor to consider: the source compatibility between the BSD version and the GPL version. The greater the compatibility, the more likely it will be that features which appear in the GPL version will make their way into the BSD version. But where the source compatibility is small with respect to such changes, the GPL version is more likely to gain features sooner (assuming that the free sector's efforts are more or less equally divided between the two versions) as it will have more commercial effort backing it. How does this translate to Linux and NetBSD/FreeBSD? So far, the two have been on more or less equal footing since the commercial sector hasn't really gotten involved that much yet, which means that the free software sector is where all the action has been. However, this *is* starting to change, if slowly. In particular, Caldera has contributed some kernel changes back to Linux which, as far as I know, haven't propagated to FreeBSD yet. At the same time, we have an example of a company (BSDI) whose product is derived from BSD but whose efforts, due to their proprietary nature, have not helped the NetBSD/FreeBSD community (as far as I know. Counterexamples welcome). I suspect that there are some companies who are waiting to see how well Caldera does. If they do well, expect competition to result. No matter how you slice it, though, there's no question about it: the world is better off with free software, whether it's under the GPL or the BSD copyright, than without it, as my previous comments should make clear. :-) However, I believe GPLed software to be in a better position to benefit from commercial involvement than software under the BSD copyright, since commercial efforts with respect to BSD copyrighted software are highly likely to be proprietary in nature. -- Kevin Brown kevin@frobozz.sccsi.com This is your .signature virus: < begin 644 .signature (9V]T8VAA(0K0z end > This is your .signature virus on drugs: <> Any questions?