Live data from Hacker News

Why Mono doesn't suck

www2.apebox.org

71–80 of 84 posts

Re: Why Mono doesn't suck

#71

Earlier quoted context omitted.

Moonlight for the moment has stability issues. I'm using version 1.9.3, which is a preview, and version 1 which is more stable is worthless since I haven't found many clips compatible with it. What I do like about it is that Microsoft supports it. The first time I installed Moonlight was because of a page that required Silverlight, and on clicking the "Install Silverlight" button, I got redirected to the Moonlight pa…

> Flash is more popular because of inertia, and because many designers use Macs and have invested heavily in Adobe tools. A minor irony, Flash has had a bad reputation peformancewise on the Mac platform for a good decade now... and the migration from PPC to Intel hasn't helped matters much, as is my understanding.

From my experience, Flash has only ever worked optimally in Internet Explorer for Mac OS 9.x. Every other platform sucked hind tit. These days I bet Windows takes priority.

Re: Why Mono doesn't suck

#72
post #39

Earlier quoted context omitted.

"In that way it gives Linux an inroad it didn't have before Mono." No, it doesn't. For internal development you have a wide variety of options. Java is quite good and very popular among those who consider the option of not running their wares under Windows. The only way Mono can appeal to Windows-only houses is by making it possible to run unmodified (and proprietary) products that run under Windows on other platform…

"as it is, Mono is a patent minefield" Can you provide the patent numbers of the specific patents you had in mind, or otherwise provide a source for why you think this is the case?

No. Neither does Microsoft who has repeatedly spread FUD over all the free-software and open-source ecosystem.

Can you provide any declaration Microsoft supports Mono and promises will not sue those users not under their IP cross-licensing deal with Novell?

Until then, it is a minefield. And that is what a minefield is about - you never know when you step on one or even if there are any mines.

Re: Why Mono doesn't suck

#73
post #39

Earlier quoted context omitted.

"In that way it gives Linux an inroad it didn't have before Mono." No, it doesn't. For internal development you have a wide variety of options. Java is quite good and very popular among those who consider the option of not running their wares under Windows. The only way Mono can appeal to Windows-only houses is by making it possible to run unmodified (and proprietary) products that run under Windows on other platform…

"For internal development you have a wide variety of options. Java is quite good and very popular among those who consider the option of not running their wares under Windows. The only way Mono can appeal to Windows-only houses is by making it possible to run unmodified (and proprietary) products that run under Windows on other platforms." I'm working at a Windows-only house with internally built .NET apps. Mono is d…

Congratulations. You are the case where Mono makes sense - you can make sure your apps run the same on Mono and on .NET.

Unfortunately, some shops need to use off-the-shelf software that may even run on Mono but is not officially supported and, if something did go wrong, they would on their own.

Re: Why Mono doesn't suck

#74

"Secondly, support for Microsoft.NET is a secondary goal for Mono" Guys, you're killing me. I really want to embrace Mono, but there is this fundamental disconnect between what the Mono team think they are building and what the real world needs them to be building. Mono team, your ONLY goal should be to provide a 100% compatible .NET implementation that runs on Linux. That's it. Simply make my C# code work there, and…

Jason,

The above statement makes it clear that you do not really follow Mono closely and your opinions are based on rumors rather than real life experience.

Let me explain:

I have not seen you post ever on our Mono mailing lists requesting the specific feature that is keeping your code from running on Mono.

I am having a hard time coming up with a feature of .NET 1.1 that you need to have on Mono (the stuff we do not implement does not make any sense on Linux, like support for WMI).

Mono implements quite happily all the core functionality up to .NET 3.5 with gaps on Windows Workflow (not there), WCF (Partial) and WPF (we are not going to implement it).

People that are adopting Mono (many of them) use our Migration Analysis tool to identify the spots that require rewriting (to remove Windows dependencies, and provide the Linux equivalent for example) and get moving on with their life.

From the statistics that we have colleced with the Moma Tool 1,592 application work out of the box; 1,823 require between 1 and 3 source code changes another 1,200 require from 4 to 10 changes. Now if you are even a remotely competent programmer, yous should be able to find work around for up to 10 changes in say, an afternoon?

The rest are more complicated, the next 3,000 or so reports will likely take from a week worth of work to a full scale reimplementation effort (the ones that have up to say 300 P/Invoke calls).

As for innovation in Mono: nothing anywhere says that we should stop at working on compatibility with .NET. We created Mono to create better applications for Linux, which is why we created bindings to Gtk# as well as some other couple hundred libraries: because we want to improve our ecosystem.

Re: Why Mono doesn't suck

#75
post #48

Earlier quoted context omitted.

We're running C# code, and increasingly some F#, but not at all interested in taking desktop or web applications from Windows and dropping them onto Macs or Linux. We're historically a microsoft shop but recently (in the last 18 months or so) have started running linux backend servers for many of our services running on EC2. If I wanted to be buzzword compliant I'm sure I could come up with some string of cloud nonse…

Sounds like we're doing similar stuff. The code I'd like to run under Mono is neither ASP.NET nor WinForms. It's plain vanilla string processing and HttpRequesting with some minor crypto and SSL thrown in to use AWS. That's the stuff I'd expect to be there and it's not.

Care to detail exactly what is missing?

And if you do not know what is missing, download our tool, and it will do the work for you:

www.mono-project.com/Moma

Re: Why Mono doesn't suck

#76
post #35

Earlier quoted context omitted.

What 1.1 things don't work? I thought they were fully 2.0 compatible? It has been quite good in my experience, obviously if you are doing windows specific things like registry or security it won't work, but that is to be expected.

Ah, but security isn't windows-specific. It's essential if you want to use anybody's APIs that require SSL (and sometimes have broken certs). And it doesn't work in Mono today. This could possibly be fixed by now, but last I tried, the C# sample code to interact with Amazon S3 didn't run under Mono.

Odd, lots of people have absolutely no problem doing just that.

Perhaps a little Googling is in order?

Re: Why Mono doesn't suck

#77

I've seen Mono used to great effect in the Unity 3D game engine ( http://unity3d.com/ ). Game engines are one of those interesting spaces where speed matters quite a bit, but so does ease of modification; you want your developers to be comfortable enough to implement whatever crazy ideas are designed up for game mechanics, and you need to be able to make sweeping changes to game logic quickly. But you need those impl…

> I couldn't tell you why they wouldn't use Java, however. Visual Studio and value types come to mind.

Visual Studio is not a factor here, value types, delegates (aka safe function pointers), mono SIMD and C# are the factors that mono was chosen over Java. C# is more expressive and concise than Java, C# supports unsafe (pointer) operations inside unsafe blocks which is very valuable for a game engine if such a thing is required. Mono has a more powerful eventing model through the use of delegates, where the Java equivalent of using anonymous inner classes is much more syntax and runtime heavy. C# supports semantic closures and has iterators, very useful features for scripting support.

Plus Mono is more open than Java, was developed by open source community, therefore was already more easy to modify than Java, which has in house developed source.

My 2c.

Re: Why Mono doesn't suck

#78
post #27

Earlier quoted context omitted.

I lead a dev team in the real world, using mono for all our work, and I don't need them to do any such thing. Your definition of the "ONLY" goal for them is utter claptrap and certainly not a definition of what the "real world needs". Stop confusing your desires ("Simply make my C# code work there, and I'll be happy") with the only sane direction for them to go. I certainly wouldn't thank them for slavishly copying .…

You've piqued my curiosity. What are you using Mono for if not to run C# outside of Windows?

i also use mono on ubuntu. if the scope is larger than what i want to do in a scripting language, like bash, then i use c#. it's a great language. i have my eye on mvc support in mono, because if all goes well, i can save a lot of money on windows 2008 licenses.

Re: Why Mono doesn't suck

#79
What I hate about this piece is the anti-user angle. What a fucking prick. The only reason you're writing apps or working on frameworks/languages to write apps is for the users. Maybe you should listen to them once in a while.

Re: Why Mono doesn't suck

#80
post #72

Earlier quoted context omitted.

"as it is, Mono is a patent minefield" Can you provide the patent numbers of the specific patents you had in mind, or otherwise provide a source for why you think this is the case?

No. Neither does Microsoft who has repeatedly spread FUD over all the free-software and open-source ecosystem. Can you provide any declaration Microsoft supports Mono and promises will not sue those users not under their IP cross-licensing deal with Novell? Until then, it is a minefield. And that is what a minefield is about - you never know when you step on one or even if there are any mines.

MS doesn't need to.

1) C# is a standardized, open spec language. Mono is an implementation of that open spec. The development of that specification is driven by MS's .Net platform.

2) Here's a crucial bit of patent/IP law: by releasing the specification of the language to the "public", MS is barred from suing over it in a court of law. So again, there's no need for it say that it won't sue, since it's already prevented from doing so.

Post reply on HN