views:

353

answers:

7

Microsoft has all interest in preventing cross-platform software to happen. The incompatibility between Windows and Linux is the main reason why people don't migrate to Linux in large numbers. Both the Mono and Moonlight projects are trying to eliminate exactly this obstacle.

Because of this, I wonder whether it isn't very risky to start developing on the Mono or Moonlight platforms, as Microsoft is likely to thwart these cross-platform efforts.

+5  A: 

My entirely unscientific view is that a lot of pressure is placed on Microsoft by open source projects like Ruby on Rails, which gain a lot of popularity and divert attention from Microsoft. ASP.NET MVC is a direct response to Ruby on Rails, and it is completely open source.

In other words, if you can't beat 'em...

Microsoft stands to gain a lot from being perceived as cooperative with the open-source community. Making C# and the CLR an open standard ultimately insures that their code will run anywhere, and helps them achieve their vision of world domination. :)

Robert Harvey
On the contrary I think with BillG out of the pic, more people have a say in things and their persuasion power could get stuff like these happen. my 2 cents...
Cherian
+1  A: 

Microsoft needs to slow the abandonment of developers to other platforms. To do that, they need to encourage Mono so that developers don't feel stuck on Windows.

Nosredna
+1  A: 

i don't think that MS can any longer afford to blatantly take part in antitrust activities such as trying to suppress competing technologies. They have been accused of that too often in the recent past and have been very close to being broken up by even the very corporation-friendly US government. They've also paid billions in fines to a number of other governments. Any further antitrust activity would not only be criminal but stupid. IMO Moonlight won't get challenged by MS.

Paul Sasik
Good point but I am unsure how scared Microsoft is about the anti-trust issue. Their past history makes me think they don't care.
MitMaro
Microsoft's approach to multi-platform compatibility has nothing to do with antitrust, and everything to do with not being the next IBM.
gmagana
+7  A: 

Your suspicions may be founded on past actions of Microsoft, (e.g. "Linux is a cancer" line from Ballmer), but it appears that the company is shifting to a more tolerant, even embracing, position with regard to open source.

One indication of this is the establishment of the Codeplex foundation for promoting open source projects related to Microsoft technology. One of the board of directors is Miguel de Icaza, the originator of the Mono project.

Phillip Ngan
Linux is a cancer. Windows is an aries. MacOSX is a virgo.
Nosredna
"shifting to a more tolerant, even embracing, position". Embrace, extend, extinguish? http://en.wikipedia.org/wiki/Embrace,_extend_and_extinguish
Sarah Vessels
+2  A: 

There are game-theoretical aspects at play. If I fear lock-in and Microsoft appears like it's try to ensure lock-in from all .NET adopters, I won't adopt .NET; Microsoft wants me to adopt .NET (with their excellent technical team on it and their accumulated know-how it's reasonable to assume that they'll always have most of the best implementation aspects of it on their platform, so users of .NET are more likely than non-users to want Microsoft solutions such as Windows Server, Azure, etc) -- so it's important for Microsoft to make it appear that they're not hindering Mono, but rather helping it out (that's even more important for SilverLight and MoonLight, which are fighting for the non-HTML-RIA space against the market leading offerings from Adobe, opensource and otherwise). And the simplest and most solid way for MSFT to achieve such appearance is to make non-hindrance a reality, not just a sham.

So the risks to adopting .NET (via the open source implementations) are: (a) Microsoft will miscalculate its strategy, and frighten future adopters off; or (b) the platform becomes so dominant that MSFT's optimal strategy shifts to locking people in (they don't fear frightening people away any more, because they totally own the dominant computing platform once again). Both are of course possibilities (and if you believe [a] will happen you should short MSFT stock -- if you believe [b], you should go long on the same;-) but neither strikes me as incredibly likely. For example, the momentum players in the platform battle in the emerging computing segment of smart phones seems to be mostly Apple and Android, with RIM and Nokia as other important players, and MSFT currently struggling to keep relevance and momentum in the segment -- while that may of course change, at this time the prospects of MSFT "owning computing platforms" appear remote (given the growing importance of smart phones as a segment of computing platforms).

But, as they say: you pays your money, you takes your choices!-)

Alex Martelli
A: 

I think this is a bad question in the sense that it is too simplistic. The question opens with "Microsoft has all interest in preventing cross-platform software to happen." That is looking at the issue very simplistically, and companies that see things this way eventually die out.

Look at it this way: With Mono for the iPhone being a reality, now people are writing C# code to run on the freekin iPhone. What's the alternative? Being irrelevant to the iPhone platform? Which would you choose?

No, if anything, MS has seen the light. They now realize that they have to play well with others if they want to stay relevant. I see them trying to be cross-platform friendly, but a little unsure as to how to proceed. Igor de Icaza may well be the single most important person in MS' cross-platform efforts.

gmagana
So you disagree that if all your applications run equally well on Linux than they do on Windows, people will drop Windows in the long term?
Dimitri C.
Absolutely. Linux has its own problems that are built-in. I cannot see my mother, for example, figuring out how to install a printer on Linux. The idea of recompiling anything in order to get it working is downright laughable, yet routine in the Linux world. MS has nothing to fear from Linux.
gmagana
A: 

The main reason Microsoft users don't want to migrate to Linux is because it's unfamiliar territory. I doubt more cross-platform software capabilities is going to do anything significant, besides benefit current Linux users.

Oh, and remember that most Microsoft users are just casual computer folk, and have no clue what Linux even is.

Andrew
I seriously doubt this. Linux is free, Windows is rather expensive. If I can use (almost) all my applications I am used to on Linux, then why wouldn't I make the transition?
Dimitri C.
Are you a casual computer folk-person?
Andrew
I agree but the software as an appliance that the Mono guys are pushing can...perhaps with vertically oriented tools for the job. http://www.go-mono.com/monovs/Studio.aspx
kenny