From owner-freebsd-advocacy Fri Mar 22 3:14:48 2002 Delivered-To: freebsd-advocacy@freebsd.org Received: from mailsrv.otenet.gr (mailsrv.otenet.gr [195.170.0.5]) by hub.freebsd.org (Postfix) with ESMTP id 05F0837B400 for ; Fri, 22 Mar 2002 03:14:38 -0800 (PST) Received: from hades.hell.gr (patr530-b133.otenet.gr [212.205.244.141]) by mailsrv.otenet.gr (8.12.2/8.12.2) with ESMTP id g2MBEROQ015711; Fri, 22 Mar 2002 13:14:28 +0200 (EET) Received: from hades.hell.gr (hades [127.0.0.1]) by hades.hell.gr (8.12.2/8.12.2) with ESMTP id g2MBEQbe027303; Fri, 22 Mar 2002 13:14:26 +0200 (EET) (envelope-from keramida@freebsd.org) Received: (from charon@localhost) by hades.hell.gr (8.12.2/8.12.2/Submit) id g2MBClPh027170; Fri, 22 Mar 2002 13:12:47 +0200 (EET) (envelope-from keramida@freebsd.org) Date: Fri, 22 Mar 2002 13:12:46 +0200 From: Giorgos Keramidas To: advocacy@freebsd.org Cc: Charles Burns Subject: Re: Advocacy help for CS professor Message-ID: <20020322111245.GA26042@hades.hell.gr> References: <20020322013138.A87120@xor.obsecurity.org> Mime-Version: 1.0 Content-Type: application/pgp; x-action=sign; format=text Content-Disposition: inline; filename="msg.pgp" In-Reply-To: <20020322013138.A87120@xor.obsecurity.org> User-Agent: Mutt/1.3.28i Sender: owner-freebsd-advocacy@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Charles Burns wrote: > > This person has the following additude: > > - Microsoft has money, therefore can buy the best programmers, therefore > has the best products. This a flawed argument, I'm afraid. Microsoft does have a lot of money. It can therefore pay the programmers a large amount. This does not make their programmers 'the best' though. It merely means that they are paid larger amounts than what they would receive in other positions. This, combined with the fact that 'the best programmer' is a very hard thing to define in a way that satisfies both Microsoft's criteria and your professor's criteria (not to mention, the requirements that third parties might have), is hopefully enough to show that this is a flawed argument. Is the 'product quality' always something proportional to the amount of money paid for the job? I am not so sure. > - Microsoft is very successful, therefore has the best products (though > he is not using the popularity alone as an argument as he does have > extensive knowledge of logic) Again, is the success of a company as a commercial entity, something that can be used as a measure of product quality? We, humans, are not always cynical objective tradesmen, and do not always use the best tool for a job. There are at times various reasons for using inferior tools for getting a given job done. Some of these could be a) the rest of the team that I'm part of uses tool B, so I don't care if A is better, since I have to use the same tools like the rest to interoperate, or b) I know that B is probably faster, easier, lighter, better than A, but I like using A because it allows me to have a picture of my girlfriend as a background image. Other reasons for using inferior products are probably into play in many areas of our lives. For instance, we should never underestimate the power of advertisement and good marketting. It can probably be proven that car model A is faster and safer to use than model B, but there are people who would buy B anyway, because B is what they usually see when they open a magazine. > - OSS programmers could not possibly be as good as Microsoft programmers, > because Microsoft sponsors such things as nat'l programming competitions > and hires the winners/hires the best of class from top universities, etc. This is probably a vicious self-preservingn cycle. Programmers that will take part in Microsoft competitions are those that already use Microsoft's products to solve problems. Therefore, it's programmers that already use Microsoft's products that will eventually win those competitions. Without trying to lessen the Windows programmer of the field, I think that these are not the only knowledgeable programmers out there. The fact that some Windows programmers are good at their work, doesn't necessarily mean that there exist no other programmers who are also good in their work. > OSS has Greenman, DeRaadt, Torvalds, Hubbard, Lehey, and others which are > certainly among the top 100 programmers on earth. How to prove, though? See above. All these are people who know their stuff, and they know it well. The fact that they are not using Microsoft's products, does not in any way lessen the value of their knowledge. They are experts, but in a different part of the computer related technology. > - He is using examples of MS products being superior to other Windows > products, examples in which he is right. Netscape 4.7* vs. IE4--No > comparison. MS Office vs everything else--for it's intended audience, it > really is the best. Media player, etc. He quoted Outlook Express, but > being in the field he uses Eudora because of OE's jaw-dropping security > record. I already made the Evolution comparison, but I really need more > examples in which an OSS Unux product is superior. Note that someone who contributes to open source projects might, and will usually have more reasons to 'create' stuff than money. However, since open source developers are also humans, they do need to work too. The fact that they like working on open source projects is not always based on their belief that all programs should be non-commercial and given away for free. It is not hatred for the commercial world that drives the forces of open source. It is the need to be 'open'. The people who work on open source projects like the fact that they can 'see the code', understand how it works, and extend it as the need arises to do their work. Apart from the reduced costs for obtaning the product (in binary or source form), safety, security, extensibility, modularity, the different design of OSS products, interoperability, and maintainability are some of the advantages that draw developers closer to open source. So, this is not all about money. Safety & security It is hard to implement 'hidden features' in a program whose source is readily available for anyone to read. We have read many times on the Web and elsewhere about 'hidden Easter eggs' in commercial programs. From a security standpoint, this is plainly *unacceptable*. Who can guarantee to you as the end-user of a commercial product that the programs you are using do not have 'hidden features' that the vendor can use to retrieve information that is private, personal and very important to you? Who can guarantee that there are no hidden features that can be exploited, by third parties (excluding you and the vendor of the code), to obtain, modify or otherwise influence information that belongs to you and only to you? Extensibility It is easier to extend a program, when it's source is available. One can argue that commercial products usually provide ways to extend their basic, out of the box functionality. This is not always true though. The ways that a program can be extended and improved are limited by the interfaces that the vendor has chosen to provide, and are also limited by the design decisions of the vendor. Different design & interoperability Open source programs are designed and built in more modular ways. Every program is designed to do one thing, and do it well. This is assisted by the fact that other open source programs are easy to work with. Commercial products tend to become monolithic monsters that strive to conquer the world. This is an interesting side-effect of the fact that commercial vendors can not work together to develop solutions and products that interoperate smoothly. They try to hide the way their products work, because this is what they bet on to make money. On the other hand, open source programmers have nothing to hide. The source of their programs is there, right in front of the critisizing eyes of all the interested programmers, to read, check, test, debug and stress to the point of breakage. Knowing how an open source product works, is very helpful and allows programmers of other open source products to write programs that work together in a much more smooth and clean manner. They don't have to "guess" how to make their programs work together. Commercial vendors do not always have this luxury. This results in open source programs that can work together, in clean, well defined, standard ways, and commercial products that are closed, black boxes, that might or might not work together, depending on the design decisions made by the vendors when they wrote their programs. Being not as easily extensible, as outlined above, doesn't help much with this either. Maintainability This is probably an advantage that is more appealing to users of commercial products that provide value added services or products of their own. For instance, companies that base their products on the products of another company. It does happen at times, that a company A uses a product of company B, to do something. Then company B falls off the face of the earth, and as it disappears, it leaves company A with the following choises: 1. To stop using the products of the (now gone) company B, and start looking for some other company C, on whose products they can base their work on. 2. To develop a replacement of B's products in-house, because they can not afford to throw away all the investments they have made to make their favorite product work. This is a true senario, which I've seen happen at least twice, in two different companies. And it's not that I've been working for too long. A couple of years was enough to let me see what happens when a company shuts down, and stops selling their products. If, and this is a big requirement, the B company had opened their source, then company A could continue developing their own products, even if company B stopped supporting them. Hiring contractors to extend an open source program, is usually cheaper than throwing away an entire product line, and starting a new one, based on a new vendor's commercial products. You can probably come up with other reasons why open source program is better to use at times. The http://www.opensource.org/ site has a few interesting essays on the topic. You may find it amusing or useful to see what others have to say about the commercial vs. open source quality topic. > - He says Unix is fragmented, therefore cannot have a unified vision and > focus, and that this automatically makes it inferior to Windows which is > under one company with theoretically one vision and focus.(to own > everything :-) This is partially true. The UNIX world in general, includes such diverse and different members as Minix, Linux's many distributions, BSD Unix in it's many incarnations, like BSD/OS, FreeBSD, NetBSD and OpenBSD, SunOS & Solaris, AIX, IRIX, HP/UX, Xenix, Ultrix, SCO, and a ton of other UNIXes that I forgot or haven't heard of. The Windows world is not less fragmented though. It's been through changes of lesser or bigger importance, from Windows 3.0, 3.1 & 3.11, then Windows 95, 98 & NT, up to the current Windows NT, 2000, ME, and XP with their Professional, Desktop, Server editions, or what have you... What is important to note here, is that UNIX versions can and usually do interoperate nicely. They do have incompatibilities that will bite the unwary administrator or user. But this is something that can also be said about the different Windows versions, so the 'fragmentation' argument equally applies to the Windows part of the world. If you are still reading, after this long post, thanks for your attention :) Cheers, Giorgos Keramidas FreeBSD Documentation Project keramida@{freebsd.org,ceid.upatras.gr} http://www.FreeBSD.org/docproj/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (FreeBSD) iD8DBQE8mxGt1g+UGjGGA7YRAqGCAJ4uVQ+bFuFaVqGOSnu4g/6mP6Z1qACdFzRl SlXhVCwQ0/L1qWujyAPWuMs= =4UtC -----END PGP SIGNATURE----- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-advocacy" in the body of the message