Brian Merrill wrote: > > The topic at hand is Java vs Mono on the desktop.
Everyone missed the point on this. Here's what it boils down to: 1. By definition, all (true to the philosophy) Java applications run on Linux (WORA). So there are tons of Java applications that run on Linux. Every Posse Applet of the Week and GUI Application of the Week, etc., run on Linux. Some Java applications that I ran on Linux includes: MindMap, Spark, Limewire, the Java based video player applet whose name escapes me at the moment, the Java based word processor applet thingy whose name escapes me at the moment. If we count development tools, the list will be a lot longer. I got a free license of IntelliJ RubyMinds, a Java based Ruby IDE through the JUG I participate in, and it runs on Linux. 2. Not all Java applications are true to the philosophy. They run only on Windows, or only on Windows and Mac OS X. The Borland UML tool that they released a community edition of was not available on Linux, even though you can copy the installation directory from Windows to Linux and make it sort of run. These applications are some percentages of cross-platform Java (say 99%) and some percentages of cross-platform native code (say 1%). Porting these applications to Linux may be as easy as issuing the "make" command. The vendors are not releasing for Linux because it doesn't add value for the vendor. Why should Sun work on a Linux version of the JavaFX SDK is no one is paying them to do it? (Not that they should stop working on it. I want one badly, for amd64. I'm just asking a rhetorical question.) 3. When people gripe about there are no Java applications for Linux, they usually mean a special kind of application---the kind that's indistinguishable from other quote-and-quote Linux applications. On a GNOME based Linux distribution, such a Java application would be one written to the GTK+ and GNOME APIs. Java bindings for the entire Gtk+ and GNOME API have been available forever, just like guile/python/perl/guile bindings for these APIs have been available forever. Yet not very many Java-GNOME applications are written. For a KDE based Linux distribution it would be the Java bindings of the Qt and KDE APIs, which I understand have existed in the form of Jambi, and now abandoned. 4. From a technical point of view, the Java application for Linux situation is not that different from the Java application for Mac OS X one, where the platform vendor (Apple) has provided Java bindings to their platform APIs. I understand that Apple has abandoned the Cocoa bindings for Java too. Once again I call attention to the different treatment between Linux and Mac OS X. Why isn't anyone yelling "There are no Mac OS X applications written in Java?" 5. For that matter, Microsoft has released Java bindings for the .NET framework, which has not picked up steam in the Java community. Why isn't anyone yelling "There are no .NET applications written in Java?" 6. The answers, for all three questions, are the same: "Why?" The three stars---those who would pay for them (those who volunteer their spare time to work on Open Source pays with their time, etc.), those who can write them, and those who would use them---are never aligned. And for any successful project, those three must be aligned. As a Java developer, would you rather be writing a Java-GNOME application rather than a Swing application? How about a Java-Cocoa application? A .NET application using Java.NET (not to be confused with http://java.net)? 7. BTW, as mentioned in the show and earlier on the thread, Microsoft is paying for all the Linux/Mono stuff. -- Weiqi Gao [email protected] http://www.weiqigao.com/blog/ --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/javaposse?hl=en -~----------~----~----~----~------~----~------~--~---
