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."

9 of 570 comments (clear)

  1. Qt by scorp1us · · Score: 4, Interesting

    With Qt 4.5 going LGPL in March, one would have to wonder why you would use Mono over Qt or Java.

    There are legitimate reasons - the CLR for instance or the multi-language support. But Qt has a Java API if you're addicted to virtual machines, and the C++ toolkit compiles anywhere with a modern C++ compiler. It supports Javascript (QtScript) and Python bindings. But unlike Mono, which is Microsoft derived, there will be no patent worries. Nokia really does want Qt everywhere.

    The picture is getting more and more complicated when it comes to software development, and I think that's wrong. I liked .Net as an idea. We could all code to one platform, but the business/IP aspects prevented that technical utopia. I am hoping that LGPL Qt will, while a little more limited be that multi-platform toolkit that everyone can use to solve new problems, instead of continually recoding the old ones.

    --
    Slashdot's rate-of-post filter: Preventing you from posting too many great ideas at once.
    1. 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.

  2. Re:Objective Review by AKAImBatman · · Score: 4, Interesting

    Ohhh, yeaaah. I remember this guy. This is the same nitwit who used logic from 1996 to try and convince us all to burn our webapps. I see he's back with even more faulty reasoning.

    I guess there's only one thing to say. Slashdot, meet the new John C. Dvorak.

  3. WPF Support by UdoKeir · · Score: 4, Interesting

    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.

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

    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.

  4. Re:The thing is... by rocket22 · · Score: 4, Interesting

    Unfortunately (or maybe not) the truth is 20 years later, to write multi-platform products, the best option is still C/C++...

  5. Re:Mono just miss one thing by Xtravar · · Score: 3, Interesting

    It's unfortunately not easy to develop on Mono right now, but IMHO only due to the debugger.

    I disagree. MonoDevelop is the bane of my existence. It's not even that it's missing features - it's that the damn thing crashes randomly and the basic features (like code completion) are broken. It's been this way for me for years... so long that I almost wanted to start contributing to the project. But then I just installed Visual Studio 2008 on a Windows VM and it solved everything.

    I swear, I haven't really hobby coded too much since I started using Linux years ago. Part of it is because I have everything I need and don't need to change much. The other part of it is that I haven't used a single goddamn IDE in Linux that doesn't make me want to shoot myself in the face. Fanatics can gab on about how a real developer doesn't need a a decent IDE, and that's true - but what's also true is that once you've had access to elegant debugging, code completion, and compilation, you don't ever want to go back.

    --
    Buckle your ROFL belt, we're in for some LOLs.
  6. 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.

  7. Re:What's the point with Qt now fully free? by ianare · · Score: 3, Interesting

    Exactly. At this point, there's no more reason for that tangled mess that is GTK, and with Gnome's reliance on Mono apps, I see the downfall of Gnome/Mono and the rise of KDE/Qt as the programming environment of choice for Linux (well as soon as KDE 4 is out of beta ...).
    Amazing what difference a license change makes, eh ?

  8. Scala by guardia · · Score: 3, Interesting

    Time to look at Scala on the JVM: classes written in the Scala-language runs almost as fast as ones written in the Java language. Also Scala looks a lot like the Java language. http://www.scala-lang.org/