Basically if you are the kind of person who wants to develop for the Microsoft platform, you are probably the kind of person who will use their products to develop on. If you are the kind of person who is going to use Eclipse, you probably are you going to gravitate to Java/PHP/Ruby.
Sure - you can choose to pay for the best or you can choose free. I use Visual Studio 2008 Enterprise, but I use a low-cost SVN repository on the Web with AnkhSVN (free total solution).
I can choose what I want.
And while I usually develop in C++, I do some VB and C# and Java as well. I use Visual Studio for the VB and C#, but NetBeans for Java. I’ll also use Eclipse when I need to do PHP development (I use MySQL, since it’s always available on web servers around the world, being free and all). And for generic HTML I’m addicted to Fusion.
I can use the right tool for the right job - and since I’m the one doing the job, I’m also the one who can decide what IS the right tool for that job. I’m not stuck to just one language or one set of tools. Heck, I could do Flash if I wanted...