The future of .NET (Mono) on non-Windows platforms

The future of .NET (Mono) on non-Windows platforms

Summary: I've always been skeptical at using Mono and Moonlight. In fact, I've always avoided them if possible.

SHARE:
TOPICS: Open Source
8

I've always been skeptical at using Mono and Moonlight. In fact, I've always avoided them if possible. Why? Because I really don't want any trace of Microsoft software on a clean GNU/Linux installation. Even though Mono is maintained by Novell/Xamarin and not Microsoft itself. I think that Microsoft had good intentions in allowing .NET to be available on multiple platforms, but I think Microsoft should have administered it directly rather than hand it off to a 3rd party. But, that would have required Microsoft to directly develop software for non-Windows platforms. I've used applications that rely on Mono and Moonlight, and have found that they aren't 100% compatible with Windows-based .NET and Silverlight applications.

Even recently I was looking to see what alternatives are available for Rhythmbox, a music manager program for Gnome. Rhythmbox is a great application, but it does crash here and there and I was looking for something that would synchronise playlists a little better than Rhythmbox does. Banshee was one of the top rated alternatives, but just as I was looking to install it I saw that it required the Mono (.NET) libraries. That was an instant red light for me and a showstopper for that one.

Just today I saw an article that mentions Moonlight (open source Silverlight) is being abandoned. The reasons were that Silverlight is not being adopted as originally intended. In the article, Miguel de Icaza states that with Silverlight, "there are just too many limitations for it to be useful.", and that "Microsoft added artificial restrictions to Silverlight that made it useless for desktop programming.". Here you are getting feedback at the core of development for Microsoft's supposed "love" for open source, where restrictions are doing more harm for the technology than good. The article also draws conclusions that Microsoft may be looking away from the .NET platform altogether, mainly for Silverlight. Silverlight maybe, but I doubt for the entire .NET platform.

Personally, this adds to my conclusions that .NET on non-Microsoft platforms was a half-hearted attempt right from the beginning. I think Microsoft is still learning that to be a true contributor to open source, it must dive in with good intentions. And from my perspective based on past and present actions, I don't see this happening anytime soon. There are too few products that Microsoft fully supports for non-Windows, that don't contain some sort of restrictions. Microsoft obviously dislikes the GNU GPL. But I have a feeling that if they were to release more products under the GPL as true free and open products, they might have a chance at being successful with them. Now the question is, where is the entire Mono project headed, is it doomed as well? Only time will give us the real answer.

Topic: Open Source

Chris Clay

About Chris Clay

After administering Linux and Windows for over 17 years in multiple environments, my focus of this blog is to document my adventures in both operating systems to compare the two against each other. Past and present experiences have shown me that Linux can replace Windows and succeed in a vast variety of environments. Linux has proven itself many times over in the datacentre and is more than capable for the desktop.

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

8 comments
Log in or register to join the discussion
  • Moonlight wasn't a Microsoft product, so it's not really a failure for Microsoft, more a failure for open source. Or, specifically, for Novell, which bought Miguel de Icaza's Simian and SuSE.

    Mono isn't a Microsoft product either, and the same applies: in this case, it's entirely down to Miguel de Icaza's post-Novell company, Xamarin.

    http://www.mono-project.com/Main_Page

    Moonlight hasn't been updated by Novell since Miguel de Icaza left. However, Mono is a going concern. You should really try to avoid confusing these two different open source products from two different companies, neither of which is Microsoft.
    Jack Schofield
  • I think someone is only reading the headline and not the article, not even getting through the first paragraph.
    The first paragraph states 'Even though Mono is maintained by Novell/Xamarin and not Microsoft itself'
    The third paragraph states 'Just today I saw an article that mentions Moonlight (open source Silverlight) is being abandoned. The reasons were that Silverlight is not being adopted as originally intended'
    stubright
  • I (or someone) is confused.
    1 You don't want any trace of Microsoft software
    2 so you don't like software maintained first by Novell and then by Xamarin because it's associated with Microsoft
    3 but you think Microsoft should have had a closer association with the software

    If the open source community wants Microsoft to invest more in open source, not spurning the projects that use its open source just because of the association might be good place to start...

    You can't really blame limitations in Microsoft's implementation of .NET in a browser plugin that could also run outside the browser for the limitations or incompatibility of an open source implementation unless you can point to terms in the licensing that produced limitations. Novell abandoning an open source project and Microsoft's decisions about its commercial software have a tenuous link but it's not the limitations of Silverlight programming that killed Moonlight-the-completely-different-project-from-Mono-and-Silverlight; it's the post-Flash, post-browser plugin, post-PC, iOS & Android world that killed both of them. This is about market share more than licencing.
    Mary
    Simon Bisson and Mary Branscombe
  • Jack :

    I stated: "Even though Mono is maintained by Novell/Xamarin and not Microsoft itself". I mentioned and acknowledged that Mono is NOT a Microsoft product, and also pointed out that I think that is one of the faults. .NET is a Microsoft product and/or a Microsoft technology.

    Mary :

    I'll try to clarify my opinion. .NET is a Microsoft technology. And yes Mono is not a Microsoft product itself but is a port of .NET on non-Windows platforms, so the roots are Microsoft related. Microsoft developed the technology, so in my opinion it's their product at the core level. Microsoft applied restrictions on it and at the same time, relied on a 3rd party to develop Mono. Those two situations, in my opinion, have caused it to fail. Microsoft, if it had good intentions for open source, should just develop the .NET platform for cross-platform use directly. I think this would make it more of a success without involving a 3rd party. Would I use it even if they did? Nope, I personally wouldn't, but that's just me. I am sure other developers would and that is OK, that's the power of open source: having a choice.
    Chris_Clay
  • "I saw that it required the Mono (.NET) libraries. That was an instant red light for me and a showstopper for that one."
    I think you need to gain a lot of intelligence and lose all the hysterical anti-Microsoft hate you have inside of you.

    As for .net...forget it, just like Microsoft are going to do along with WPF.
    amgt10
  • It still doesn't seem like there's any incentive for Microsoft to do what you suggest, is there? "Microsoft, if it had good intentions for open source, should just develop the .NET platform for cross-platform use directly... Would I use it even if they did? Nope." That right to choose you mention; I think it applies even if they make a choice you don't like. It strikes me that the more the open source community engages with Microsoft, the more likely Microsoft is to take the views of the community into account; treating technology that comes from Microsoft differently because of the origin rather than the merits of the technology is a two-edged weapon.
    M
    Simon Bisson and Mary Branscombe
  • Well, it was a nice idea - get Java-like, Microsoft-only language running on any platform, it was the holy grail of computing but it did run into a few problems:

    Mono was always playing catch-up with the latest Microsoft releases.
    It never gained all the features that .NET has (eg WPF, EF, etc)
    Microsoft changed its plan half-way though, dumping Silverlight was never something they'd admit to for a very long time.

    So now, Microsoft is embracing native code again and that leaves .NET is a slightly precarious position, its no wonder that people are wary of using it on a non-original platform (ie Mono) simply because they will be first to suffer if MS obsoletes it or many of its features.

    The other reason people didn't like it is the cost of the runtime, every Mono app you run requires a large number of supporting libraries to be installed, and such things do slow down your computer - the more libs you have, the less can be shared by the disk and CPU caches, plus the amount of extra downloads (updates etc) that will be required.

    Of course the other factor is that its just not as good as native development, when Ubuntu first put Tomboy on the distro the open source community wrote an alternative, Gnote, that was significantly faster and smaller. If that is possible, you have to question why anyone would want to develop for Mono - if you want performance, you use native code, if you want developer productivity you use python or similar. mono and .NET fit in a 'excels at neither' middle ground.


    Besides - Microsoft didn't engage with its own community by dumping Silverlight, or VB6.
    anonymous
  • Andy Bolstridge :

    "Of course the other factor is that its just not as good as native development, when Ubuntu first put Tomboy on the distro the open source community wrote an alternative, Gnote, that was significantly faster and smaller."

    Thank you for adding that example. That's just one reason I've steered away from Mono-based applications entirely.
    Chris_Clay