Holy Wars: C# vs Java, Windows vs Linux

I was re-reading The 7 Habits and I came upon an interesting principle. In Habit 2, Begin With the End in Mind, Stephen Covey talks about how change can affect us. Specifically, he mentions how, by having a changeless, principle-centered core, we don't have to be afraid of change and that we can adapt and grow with change rather than fearing it or labeling/prejudicing ourselves against it.

The thought occurred to me, how much does the lack of this principle permeate the development community? We see manifestations of it in the petty arguments of C# vs. Java vs. PHP vs. Ruby vs. C++, etc. We see it in the Windows vs. Mac vs. Linux camps.

When we have a changeless, principle-centered core we see how truly petty these arguments are. Is there not value and learning to be had from each of the communities? Are there not intelligent and capable individuals in each arena? There is no one way [to rule them all] to develop and write code.

With a "my way or the highway" attitude, the ALT.NET community would never have gotten started. Much of the learning and principles found therein have there origins in Java. Much of the reading that I do related to SOLID development principles have been created by authors prior to--or early in--the existence of the .NET Framework, e.g. Martin Fowler, Eric Evans, Kent Beck, Robert Martin, etc.

If our core values are centered around quality software and creating the best system possible then we aren't scared to use the appropriate tools for the job. I'm not scared of using Linux servers running MySQL Cluster or memcached with an ASP.NET frontend. I don't have to be afraid to use Rake (Ruby) to run my build process on my JetBrains TeamCity build server. It's all about using capable tools for the job.

We shouldn't be afraid of using Windows either. It is a very capable operating system running mission-critical applications. Despite all of the bad press, it's still extremely solid.

My point is [blue screen]...

UPDATE: 2008-01-16 - After posting this, I found a post on If Programming Languages Were Religions which proves my point.