Friday, March 9, 2007

Not Religion But Strategy, Take 2

After reading the comments to my previous post and Oren's response, it seems I didn't present my point as well as I thought I had.
When I referred to Microsoft's products, I meant "Release" products, not beta versions (such as Linq).

Team system is relatively new, but I bet in while more people will be doing unit tests using it, and not NUnit, even if NUnit is better.
Once Linq is out, I think the same would be true regarding NHibernate.

Or for another example, Source Safe is not considered to be a quality product. Even Microsoft admitted it's model is flawed once they released Team System. But it's still the most commonly used source control solution around - how do you explain that?

I wrote about the wonder MS did releasing C# and conquering a big chunk of the market, and Oren reply was "Just to point out, another company did, Sun & Java". But Sun introduces something new to the world with Java, while that was not the case with C#.
Jon suggested Anders Hejlsberg had something to do with the success of C#, but almost no one I talked with was even aware to that fact (I think that's due to the fact Hejlsberg is not a typical MS "rock star" - most people never heard of him)

Same thing went down with IE vs. Netscape - MS adoption of ideas destroyed the original.
I know today Firefox is back with a vengeance, but there where 2-3 years in which Netscape was completely out of the game.

And regarding the picture I added to the post, it was to make another point: more people read and hear what the blond in the picture has to say than people who listen to Noble prize winners, demonstrating popularity has almost nothing to do with quality.

That leads me to the strategy part - MS related technology is a good bet because you can be sure most of the market will use it.
Countries all over the world don't hold US Dollars because of a religion, but because it's a safe bet.

Don't get me wrong, I think there are many technologies out there better than MS, but every time you use a new technology you make a gamble. MS is a safe bet, but the gain is smaller. Open source is a bigger risk, while the reward may be much better. It's all a matter of choices.
So people may use MS technologies blindly just because of their source, or because the old argument about "No one was fired for choosing Microsoft", and it still doesn't make them religious fanatics.


Jon Limjap said...

Well it comes full circle to a comment that I posted in another one of Oren's posts: a lot of companies disdain open-source precisely because they are open-source, and more often than not the converse is likewise true with them; that they'll take up a Microsoft solution precisely because it's Microsoft. Not necessarily because it's better, or more useful, or makes more sense.

It's no different from fashion fanatics -- while most IT geeks might pick up plain shirt designs in department stores a lot of other people would have to run to Gap boutiques if they need a new shirt.

Adi said...

Jon, I just read your summery of the entire discussion, great post!

Sean Chambers said...

Again, I have to disagree with some of your points.

"Team system is relatively new, but I bet in while more people will be doing unit tests using it, and not NUnit, even if NUnit is better."

Why will more people use Team System? Because it is from Microsoft? What if my company doesn't want to put up the cash to purchase it. NUnit is free, no brainer there. Perhaps I'm just missing your point here.

"But it's still the most commonly used source control solution around - how do you explain that?"

Well that shows us that there is ALOT of people want an easy way to integrate the source control system into Visual Studio. There are other plugins for source control integration in VS, but they are few and far between. If there was a good source control integration plugin, that wasn't a nightmare to setup, I would probably use it. VSS is easy and ready to go, sure I would like more but it will suffice.

This is like saying, hey IE 7 is THE most downloaded browser, even though microsoft has made it a "Required" download through Windows Update. I don't think shoving software down peoples throats is a valid count =)

Adi said...

Yes, I think more people use Team System just because it is from Microsoft.
Regarding your "NUnit is free" idea, how much does a developer hour worth to the company?
because if you have Team System already, spending the time to create a custom build task for NUnit (instead of marking a checkbox) is not free.
And if we discuss the entire Team System - you can get a free source control solution, free bug tracking system, free tasks manager, free automated build solution and free unit testing, but how much man-hours would you spend to find, install and integrate all of those free products?
And you'd be surprise to find out many companies use VSS not because of the VS integration, but because it's considered (again) to be a "standard".