Competition, The Motivating Factor
Clark Scott does not like open source software. He states the following in this post:
“Does open source help our industry? I don't believe it does.
In fact, I believe that it cheapens our value as software developers, makes shareware development and running ISV's even more difficult.
It also means that there are less ISV's and less independent software developers.
The logic of Open source is erroneous because it creates less competition and more software ownership by large companies.”
First, starting in reverse order, to say “Open source is erroneous because it creates less competition” is wrong. In reality, the opposite effect is occurring. Open source is forcing more competition not only between the Linux/Novell world (Novell’s recent purchase of SuSE Linux), but also between those worlds and Microsoft. Microsoft’s Longhorn is going to be an incredible OS. The pre-releases of the OS are impressive already. Competition has motivated them to produce a better product. When you’re the only kid on the block, you just compete with yourself. That is neither fun nor productive.
Visual Studio.NET and the .NET Framework is the best development environment I have ever worked in. Hands down, flat out, the absolute best. It has its quirks sometimes, but so does every software product. It became this incredible product not only because of the bright developers building the environment, but also because of Java and its portability between Windows, Linux, etc. Competition was one of the driving forces behind the .NET initiative. Build the best product, and build it better than the competition. Remember the Petstore benchmarks?
Microsoft SQL 2000 is a very good database. I prefer it to Oracle. It is easier to use, and more enjoyable too (opinions are subjective). But Microsoft is not stopping there. They have competition from Oracle, MySQL, and many other database products. Microsoft Yukon is going to be a very powerful database. Embedded CLR, Reporting Services, etc. Microsoft is building a better database, a more innovative product, because of the competition from other companies. Competition is an all around good thing regardless if it is Open Source or non-Open Source.
Second, Open Source does not cheapen the developer. Widespread use of Open Source software is as inevitable as sunrises, sunsets, taxes, and the dependability of a Chevy (also subjective). The quality of Open Source software will improve as well. Being able to bridge the divide in the future will make the developer stand out. Go-mono.org for example, is making .NET portable to Linux and other platforms via the CLI. Companies will and are running Linux/Open Source products along side Microsoft Windows.
It really all boils down to the quality of the product and the quality of the developer. If your product is lousy, it will not sell. Consumers will go elsewhere for their software needs. If you’re a bad developer with bad coding practices, you’re probably not going to be employed very long, and most certainly not with a reputable software development firm. Competition is the driving force behind innovative software development and quality products in general. If I were the only software developer on the planet and had no one to compete with, what would motive me? To be the best? If I’m the only one, I would be the best by default. Then having no need to build more innovative products because of competition, I would only innovate out of necessity and build only to the lowest standards.
Please do not make a generalization because of one bad experience. If I accidentally walk into a telephone pole and get hurt, I’m not going to stop walking. I will be more aware next time.
Additional comments that relate to this topic:
The comments in this post:
http://dotnetjunkies.com/weblog/markdigiovanni/posts/3487.aspx
and the references in this post, specifically the last paragraph:
http://dotnetjunkies.com/weblog/markdigiovanni/posts/3574.aspx