4

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.

pnuts
  • 58,317
  • 11
  • 87
  • 139
Dimitri C.
  • 21,861
  • 21
  • 85
  • 101
  • 6
    I think this is programming related because he asked about the risk of starting developing on the platform. If it wasn't for that I would agree to it not being programming related. – MitMaro Nov 23 '09 at 16:43
  • 5
    Please make this a Community Wiki question. While interesting, its likely output will be far too subjective. – mjv Nov 23 '09 at 16:43
  • 2
    @MitMaro, I agree it is programming related and should be allowed. My take is that to help its survival (or re-openings), is that it should be a CW, lest it be perceived as a "rep-machine". – mjv Nov 23 '09 at 16:45
  • 2
    @mjv: Thats the reason I upvoted your comment. ;) Someone previously had this tagged as not-programming-related which I completely disagree on. – MitMaro Nov 23 '09 at 16:48
  • Er, not programming related? I am trying to decide whether Mono and Moonlight are futureproof enough to start developing upon. It is a fundamental decision I need to make on my new project. – Dimitri C. Nov 23 '09 at 17:39
  • 1
    I think it may have stayed open if you had made it as community wiki as mjv had suggested. – MitMaro Nov 23 '09 at 21:35

8 Answers8

8

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
  • 15,482
  • 8
  • 63
  • 79
  • 4
    Linux is a cancer. Windows is an aries. MacOSX is a virgo. – Nosredna Nov 23 '09 at 17:09
  • 3
    "shifting to a more tolerant, even embracing, position". Embrace, extend, extinguish? http://en.wikipedia.org/wiki/Embrace,_extend_and_extinguish – Sarah Vessels Nov 23 '09 at 17:24
  • Now I'm terrified the whole Mono project could have been funded by Microsoft (and could be discontinued at their will). Hey let's forget XAML and C#... XUL and JS anyone? huh? ...hello...? – Camilo Martin Dec 31 '11 at 14:07
5

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
  • 178,213
  • 47
  • 333
  • 501
  • 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 Nov 23 '09 at 16:51
2

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
  • 83,000
  • 15
  • 95
  • 122
2

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
  • 79,492
  • 20
  • 149
  • 189
  • 2
    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 Nov 23 '09 at 16:46
  • 2
    Microsoft's approach to multi-platform compatibility has nothing to do with antitrust, and everything to do with not being the next IBM. – Gabriel Magana Nov 23 '09 at 16:57
2

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
  • 854,459
  • 170
  • 1,222
  • 1,395
0

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.

Gabriel Magana
  • 4,338
  • 24
  • 23
  • 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. Nov 24 '09 at 07:50
  • 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. – Gabriel Magana Nov 24 '09 at 11:17
0

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
  • 12,172
  • 16
  • 46
  • 61
  • 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. Nov 24 '09 at 07:41
  • Are you a casual computer folk-person? – Andrew Nov 24 '09 at 21:55
  • 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 Nov 28 '09 at 18:48
0

I realize this is an old question, but two years later (2011), the answer is pretty obvious: namely, Mono and Moonlight give MS access to OS's on embedded platforms, eg Android. If W7 phone continues to have such a limited market share, the only way for MS to have a presence in embedded devices is via software. To do that, their software must run on non-MS systems.

All of that is to say, MS has had some inkling of which way the wind is blowing or is at least hedging its bets, so it's been supporting Mono and Moonlight. Coupled with the recent announcement that Windows 8's UI will be built on HTML5/CSS3, MS has clearly decided that trying to shackle all of your products to specific OS in a post-PC (or PC-plus) era can be a weakness, rather than a strength.

The team at Mono clearly sees the current situation as an opportunity, as they recently spun off from Novell and have started their own company, Xamarin. So it looks like Mono/Moonlight are here to stay and can thus be targets for development with relative confidence from developers.

0x1mason
  • 757
  • 8
  • 20