Slashdot Mirror


The Case For Supporting and Using Mono

snydeq writes "Fatal Exception's Neil McAllister argues in favor of Mono, asking those among the open source community who have 'variously described Mono as a trap, a kludge, or simply a waste of effort' to look past Miguel de Icaza and Mono's associations with Microsoft and give the open source implementation of .Net a second chance, as he himself has, having predicted Mono's demise at the hands of open source Java in 2006. Far from being just a clone of .Net for Linux, McAllister argues, Mono has been 'expanding its presence into exciting and unexpected new niches.' And for those who argue that 'developing open-source software based on Microsoft technologies is like walking into a lion's den,' McAllister suggests taking a look at the direction Mono is heading. The more Mono evolves, the less likely Microsoft is to use patent claims or some other dirty trick to bring down the platform."

19 of 570 comments (clear)

  1. For bit rates less than 24 Kbps by mbone · · Score: 5, Funny

    For bit rates less than 24 Kbps I prefer mono.

    (What, RTFA ? Who has time for that ?)

  2. clone or unique, but not both by Speare · · Score: 5, Insightful

    [A]sking those among the open source community who have 'variously described Mono as a trap, a kludge, or simply a waste of effort' to look past Miguel de Icaza and Mono's associations with Microsoft... The more Mono evolves, the less likely Microsoft is to use patent claims or some other dirty trick to bring down the platform.

    Mono is in a precarious, teetering position. Somewhere between tepid and antagonistic reaction amongst professional and casual developers, a designer community that is seen as a puppet or apprentice to the hegemony, and not even a clear path forward for compatibility. Be distinct, or be identical, but there's no way to be both.

    --
    [ .sig file not found ]
    1. Re:clone or unique, but not both by Grishnakh · · Score: 5, Insightful

      I still honestly don't see what the supposed benefit of Mono is supposed to be. If you want to write nice graphical applications, there's plenty of toolkits available for C, C++, Python, etc. Many of them are even cross-platform, so making a version for a different OS only requires a recompile. If you want truly compile-once, run-anywhere code, there's already Java. What's the point of Mono?

  3. Why not develop on the JVM instead? by codemachine · · Score: 5, Insightful

    Now that Java is open source, wouldn't it make more sense to use the JVM as the standard runtime, instead of something that "might" not get sued for copying the .NET runtime?

    Java has already been made to run on .NET. I wonder if it'd really be that hard to get standardized C# running on the JVM?

  4. Sorry, I will never trust Microsoft by jmorris42 · · Score: 5, Insightful

    Sorry, I will never trust Microsoft enough to put them in a position to control a key technology. So that means there is no discussing the issue as far as I'm concerned. There is NO rational basis to argue. I don't trust em.

    And I don't trust the judgement of anyone who isn't themselves suspicious of Microsoft and Miguel's motives.

    Mono is a trap if it is allowed to be deployed beyond a browser plugin to support .net content in the browser. Come the day my current distro of choice loses any finctionality when removing the mono packges I'll be running something different as soon as bittorrent can supply me a new install image. Again, that position is 100% non-negotiable. I have used binary drivers in the past, bought closed source apps and committed many 'sins' against the Church of GNU but this is one case where compromise simply isn't possible. They want us dead, you can't compromise with that.

    --
    Democrat delenda est
    1. Re:Sorry, I will never trust Microsoft by AKAImBatman · · Score: 5, Funny

      Captain's log, stardate 9522.6: I've never trusted Microsoft, and I never will. I could never forgive them for the death of Netscape and countless other companies. It seems to me our mission to support .NET on Linux is problematic at best. McAllister says this could be an historic occasion, and I'd like to believe him, but how on earth can history get past people like me?

      They're animals. Don't believe them. Don't trust them.

      (They're dying)

      Let them die!

      Sorry, I couldn't resist. I got a kick out of the way you started your post.

      Joking aside, mod parent up. :-)

  5. Re:What's the point with Qt now fully free? by Who+Is+The+Drizzle · · Score: 5, Insightful

    Qt is an application framework. It fixes every gripe developers have with C++.

    Except for the fact that you are still programming in C++ which is bloated, monstrosity of a language.

    Qt promotes clean and well-developed code that is easily ported to Windows, X11 (Linux et al), Mac, and Embedded (Linux sans-X11).

    It doesn't seem to promote to well considering the amount of crappy C++ code written with Qt there is floating around.

    Nokia is moving in to crush Java.

    Considering Java's biggest adopted base is in server-side programming, I really doubt Qt is going to do all of jack and shit to change that. I seriously doubt many of those people writing server-side apps in Java would even have a use for Qt in their work. Sure it might pull away some of the desktop app developers, but they have been pretty much the minority when it came to the adoption of Java anyway.

  6. Re:WPF Support by toshok · · Score: 5, Informative

    Until Mono gets WPF support there isn't going to be much cross-compatibility. Any Windows .NET developer with any sense is writing in WPF already. WinForms is dead.

    This is pretty lame reasoning - new applications are only part of the reasoning behind deciding which apis to support. Supporting the huge number of *existing* applications is also important, and the vast majority of the desktop .net applications out there now use winforms.

    But Mono seems quite content to ignore WPF for now. One can't help but think it was part of that Novell/Microsoft deal.

    More faulty reasoning - have you seen the WPF api? It's enormous. As one of the people with the most commits in WPF-land, I can assure you, it's not prioritized based on any deal. It's strictly a resource issue. Moonlight is just more bang for the buck. Much smaller api to implement, much quicker adoption than WPF. Makes good business sense. That said, WPF remains a spare time project for me (and others).

    The subset of WPF in Moonlight is useless for non-web development. It's great way for MS to pretend their Flash-killer format is multi-platform though.

    Again, not really true. Silverlight 2.0's api is more than capable of building apps for both webpages and desktop, and will become more so as WPF and Silverlight converge. It will take some extending on the mono side for desktop integration, but again, when the choice is using an existing technology and extending it slightly (as in Moonlight) or starting fresh on a GIANT api (as in WPF), which would you choose?

  7. Re:But the political reasons... by FishWithAHammer · · Score: 5, Informative

    I guess all that stuff in the Mono.* namespace that Microsoft's release of their framework doesn't support is just following right along. Like Mono.SIMD. Or Mono.CSharp, which (unlike Microsoft's libraries) contains a fully featured compiler service and runtime evaluator. Or the other Mono stuff that Microsoft's releases can't do, like full static compilation for the iPhone and Microsoft's own XBox 360.

    I'm guessing you don't know much about what you're talking about, but hey, it's Slashdot, that's par for the course.

    --
    "You can either have software quality or you can have pointer arithmetic, but you cannot have both at the same time."
  8. Re:Qt by AKAImBatman · · Score: 5, Interesting

    The big win Sun pulled in the 90s was the amazing marketing job of putting Java out there as something you need, want, and are constantly reminded of (for updates, etc). They built up the Java brand brilliantly, and that's going to be hard to dismantle.

    That's a rather rosy way of looking at it. In truth, Sun sort of messed up the marketing on a variety of different levels. The only reason why it caught on was that developers had a chance to try it out through Java Applets. (Originally supported through a partnership with Netscape.) Developers who tried the Java platform were so impressed by it (compared to the standard C library of the day) that they lobbied for its use everywhere. In fact, there was an entire news site devoted to Java promotion called JavaLobby. In its day, it handily competed with sites like Slashdot for readers.

    Sun (thankfully) wasn't stupid. They took a look at where developers were trying to use Java and started supporting them. Some of the ideas took flight (e.g. servlets) while others floundered (e.g. Java3D). But at the end of the day, Sun managed to produce a superior platform that the vast majority of the market wanted to use.

    The only reason why it gets so much criticism today is because other languages and platforms have invested considerable effort in catching up to where Java is today. And even then, it's hard to argue the rich availability of libraries for the Java platform. If you use Java, you are guaranteed to always be able to use the latest and the most obscure technologies. Nothing escapes its roving field of vision.

    When Java gets replaced (and I'm sure it will happen eventually), it will not be because of marketing. It will be because the replacement platform yet again turns the entire industry on its head. Love it or hate it, the new technology will make us all step back and think.

  9. Re:healthy distrust by FishWithAHammer · · Score: 5, Insightful

    Miguel has smacked around this stupid argument before. Mono is a relatively small effort. There are people certainly violating Microsoft's IP in areas like Samba and the myriad Exchange clients, which are a far bigger threat to Microsoft's revenue streams. Mono, if anything, improves their revenue streams, because it makes .NET more feasible for some developers who otherwise wouldn't consider it.

    But they're going to go after Mono, right? Let's just ignore that Samba 4 is (supposedly) going to eat Microsoft's lunch on the AD side of things. They're gonna go right after Mono! Rar! BE SCARED! Because that makes so much sense for them to do, right? It's not cutting off their noses to spite their face at all.

    I'm really starting to think that the main reason Slashdot gets pissy over Mono is because Microsoft doesn't "lose" because of it. It's a case where everybody wins. And Microsoft can't be allowed to benefit, oh teh nos. :(

    --
    "You can either have software quality or you can have pointer arithmetic, but you cannot have both at the same time."
  10. Re:The thing is... by AKAImBatman · · Score: 5, Insightful

    Seriously, I try hard as possible to stay away from .NET/Mono/Java/bytecode apps as much as possible. Why? Speed, obviously!

    Then you are a fool.

    Axioms of software design:

    1. Algorithmic improvements will always trump optimizing execution speed.

    2. Unless there is a hard requirement, development time is more important than raw performance.

    3. Hardware is cheaper than developers.

    4. A rich and flexible library is more useful and stable than custom coding for performance.

  11. Re:The thing is... by ciggieposeur · · Score: 5, Interesting

    I used to code Java in the JDK 1.1 - 1.4 days. It sucked ass. It was slow, had weird dependencies on X11, required a lot of boilerplate code (such that up to half of the LOC could be logging inside exception blocks), had various JRE incompatibilities all over the place (such that some applications just couldn't be run bug-free on ALL of AIX/Solaris/Windows/Linux/Mac), and the reference JDK/JRE was Sun's proprietary property. I left Java and went on to C, Perl, C++, and Lisp. Naturally I used Emacs and SLIME.

    Then I found Clojure. And I got a $350 laptop from Walmart last week that had 3 gigs of RAM and a single-core 1.8GHz AMD processor. And I thought, "I wonder if Eclipse will run decent on this thing?" And it does, and it's not all that slow, and it is by far the best IDE I've ever used.

    I'm now re-climbing the learning curve on modern Java, and it's looking pretty good now. AspectJ does a good job eliminating a lot of repetitive code, eclipse-metrics warns me when I'm not being decent at OOP design, and the available libraries are top-notch. Java the language isn't so bad anymore, and now with Clojure on top I have plenty of linguistic room to prototype and get to choose the best among many paradigms for each situation.

    Give Java a fresh look, it's come a long way.

  12. Re:Qt by Thaelon · · Score: 5, Insightful

    Windows users will not install QT unless it comes as part of the whole one-click .msi for the package.

    Speaking as a long time windows user and being fairly new at using Linux as a dedicated work-OS, I must say that that whole one-click .msi stuff is pretty damn awesome.

    To elaborate the whole perception that users are dumb is pretty misguided. I'm not a dumb user, but even I like things to be easy. It's because (usually) I don't give much of a shit how the thing works, just that it does.

    Before you declare that you're any different, think of how you put gas in your vehicle.. Do you care how the fuel pump works? If you're like me you only throw a fit when the clip that holds the fuel lever open is broken, but otherwise don't pay much attention.

    See it's about motivation not intelligence. I do like using OSS because I think it's a GoodThing(tm) therefore I'm motivated to try it. It's a lot of the reason it took so long for Java to get a toe hold. "I just want to run PrettyWidgetBox, wtf is this JVM thing I have to have?" It's seen as ancillary or superfluous to the average user, and they don't often care enough to figure it out.

    It kinda spoils one of my favorite quotes for me though regarding trash cans, bears, and tourists. Yellowstone added some trash cans with tricky openings to keep the bears out, but it turned out most of the tourists couldn't figure it out. The quote goes, "It turns out there is considerable overlap between the smartest bears and the dumbest tourists." Which is unfortunately hogwash. The bears are motivated by survival to get in the trash can. The tourists are demotivated by apathy to take the time to figure out a trashcan. They just want to be able to put shit in the trash hole and be done with it. If they're frustrated for more than a few seconds they just throw it on the ground.

    --

    Question everything

  13. Re:healthy distrust by _Sprocket_ · · Score: 5, Insightful

    Miguel has smacked around this stupid argument before. Mono is a relatively small effort. There are people certainly violating Microsoft's IP in areas like Samba and the myriad Exchange clients, which are a far bigger threat to Microsoft's revenue streams. Mono, if anything, improves their revenue streams, because it makes .NET more feasible for some developers who otherwise wouldn't consider it.

    In the past, Microsoft has "cut off the air supply" of competitors. That's difficult to do with Linux as it is less a single-sourced product line than amorphous multi-vendor entity. Microsoft's strategy then has been to try and pigeon-hole Linux. But how to do that? You need to become a gate-keeper.

    That's the fear over Mono. Gain developers. Gain support. Develop a dependency. Pull out the patents and seize the keys to that dependency. You are now the gatekeeper.

    So what about SAMBA 4 and Exchange compatible clients? Don't they also support Microsoft products? That's win-win too, right? Surely they wouldn't go after those. Or would they? Who knows. Ballmer's threats lack detail.

    And there's the key. You want to make your "everybody wins" technology widely accepted? Stifle the threats from a CEO who's continues to generate distrust in your company. No tin foil hat required.

  14. Re:Objective Review by Anonymous Coward · · Score: 5, Insightful

    Actually, I'm inclined to agree that WebApps generally suck when compared to a Windows App performing the same task. Obviously, WebApps have their advantages (easy distribution, usage monitoring, centralized access, no risk of rogue versions); but when the situation doesn't make it necessary to create a product as a WebApp, I think it's generally stupid to do so.

    As for Mono, the product is a valiant effort, but I can't understand why you would run software on something other than its native platform. After the App is deployed, if it encounters any problems, you'll always have to wonder, is it the App, or is it Mono?

  15. Re:healthy distrust by Panaflex · · Score: 5, Insightful

    The difference between Mono & Samba is that C# is dev language.

    If, for instance, Samba is sued into oblivion by Microsoft then we loose a single application. Yes, it's sad and everybody cries... but there's technical ways to solve that problem that are relatively doable - such as developing a new NAS network transport protocol that doesn't break any patents.

    Alternatively, if Microsoft sues Mono into oblivion - and we've all been happily developing C# code for hundreds of applications - then it's going to be a total meltdown.

    To be honest though - there's not much of a chance that either of those things are going to happen.

    I like C# - it's a smart, clean language. I don't utilize much beyond the stock language (2.0 & generics) and don't see much need too.

    --
    I said no... but I missed and it came out yes.
  16. I wouldn't say WinForms is dead.. by tjstork · · Score: 5, Insightful

    WinForms isn't dead. In some circles, I'd say WPF is stillborn, and if there's anything good that came out of it, it was in fact Silverlight.

    In fact, I would say that while WPF has its plus sides, its got a few drawbacks as well. Its -really- slow compared to WinForms, the nested control architecture isn't as good, the layouts and sizing aren't as flexible, and worst of all, there's no datagrid.

    I understand the inspiration. Microsoft tried to make a modern client gui toolkit that gives you some of what html does, but I frankly think they missed the mark. If anything, WPF will inspire the idea that developer's have choices in control and widget sets and that will lead developers to look at things like Qt and Java or even Webkit, as I have done.

    --
    This is my sig.
  17. Re:Objective Review by Anonymous Coward · · Score: 5, Informative

    I contracted a while at Microsoft, and every blue badge (full-time developer) I ever met ignored VS.NET and used vim or emacs all day (for C#, C++, XML, everything except the occasional dialog edit) with the MSDN docs open on the other monitor. No lead with a clue lets the opaque plumbing inside an IDE determine whether their project gets built corectly (we used build.exe, a make clone from the DDK), WinDbg is far more powerful than the builtin debugger (download and try it), and an editor with too much "assistance" to even keep up with your typing (on desktops fast enough to run internal debug builds of Vista!) was just unforgivably lame.