Re: free is an expensive word.
Open Source has one clear advantage over any Closed Source product among the laundry list of others ofcourse.
Good software can take hundreds or even thousands of hours of development, a ton of testing, and possibly a dozen or more versions to get a stable and bug free snap shot that can be used by the public relatively problem free. Companies that sell software to the public are often lured into the spiral death trap of releasing essentially beta code into the wild to save money on development by taking some pretty risky shortcuts. The evil side of this ofcourse is when they make you pay for upgrades that are actually patches/bugfix/stable versions of the unfinished product you already bought, packaged neatly as a finished product. Don't blame the programmers, you would be surprised how many of them write code for Open Source projects in *their* spare time because they feel it is important. The non-geeks like marketing weasels and other money professinals at software company X are the evil behind the bad product end users get. I personaly have no problem paying for software from a company that thoroughly tests and fixes their software before boxing it up and selling it to the public. Especially if they support their code in an exemplary fashion post release. After all programmers do have to make a living.
We should also remember that Open Source is a community effeort. We can accomplish things in development that not even the most honest or even the most ambitious Closed Source company can afford to do. Say you get 20,000 people downloading and testing the latest release of the Linux kernel, that is a heck of a lot more people than any company I know of has to devote to testing out a new kernel using different hardware and software. The human resource and the open honesty that the Open Source movement has to offer is what I believe will help it become increasingly more competitive in the future.