Linked by Thom Holwerda on Wed 7th Mar 2007 22:27 UTC
Java "Although the .NET vs. Java war is basically over for control of the Windows desktop, where .NET is sure to become the managed language of choice for new Windows desktop applications, there is a new battle brewing. That battle is for the Linux desktop. Now that Java has been open sourced under the GPL, even the most strict of the 'free software only' distributions can start bundling it and integrating it into their Linux distributions out of the box."
Thread beginning with comment 219446
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE: Only Two Choices?
by pantheraleo on Wed 7th Mar 2007 23:53 UTC in reply to "Only Two Choices?"
pantheraleo
Member since:
2007-03-07

> Python/Gtk seems like a pretty strong choice

I wouldn't consider Python to be a strong choice for a full blown desktop application due to its lack of strong typing and such.

> Mac issues with dual monitors

What issues? I run Swing apps on my PowerMac G5 with dual monitors, and I have no issues at all.

> it seems unlikely to take advantage of gpu
> drawing anytime soon

Java has been using the GPU for 3D since Java 5, and in Java 6, which has been out for awhile now, it also uses it for 2D drawing.

(http://weblogs.java.net/blog/chet/archive/2005/05/graphics_accele.h...)

> My feeling is that today, on Linux, Mono may be
> the strongest choice. Especially given the
> Gnome bindings for it (I've heard they're quite
> complete?).

I see several problems with Mono on Linux, which are pointed out in the article. Compared to Java, it is very immature, it does not have nearly the amount of open source library support that Java does, and it is doomed to always lag behind the official .NET implementation. That and because of the fact that Mono's class libraries use the MIT license, there are potential software patent traps. (http://www.newsforge.com/article.pl?sid=02/02/19/1651244)

Since Java is GPL, and Sun has made clear that Java will adopt GPLv3 once it becomes finalized, there are no patent traps for Java.

Edited 2007-03-08 00:00

Reply Parent Score: 5

RE[2]: Only Two Choices?
by kaiwai on Thu 8th Mar 2007 01:26 in reply to "RE: Only Two Choices?"
kaiwai Member since:
2005-07-06

That and because of the fact that Mono's class libraries use the MIT license, there are potential software patent traps.

Not entirely true; the core classes along with GTK#, Cairo# and friends are ok - the problem with occur with the .NET compatibility like Winforms.

Then again, its no more troubling than Wine, which probably treads on a number of patents and yet, there isn't a single bit of protest.

Microsoft know that ultimately Mono will always be playing catch up; the VM of mono alone is immature and no where near the capabilities of Microsofts own .NET or Sun's Java VM - and given that the development is done by only one company, Novell, and a cheapskate organisation at that (unwilling to spend money when required) Microsoft know that its always going to nothing more than a novelty.

Reply Parent Score: 5

RE[3]: Only Two Choices?
by g2devi on Thu 8th Mar 2007 20:55 in reply to "RE[2]: Only Two Choices?"
g2devi Member since:
2005-07-09

> Then again, its no more troubling than Wine, which
> probably treads on a number of patents and yet, there
> isn't a single bit of protest.

Actually not quite correct. Everyone recognizes that WINE and Winelib are temporary (imperfect) solutions, not permanent ones, so the effect of a patent trap is less because few people rely too heavily on WINE. If worse comes to worse and the trap is sprung, you can always use VMWare/Xen/KVM/QEMU.

When Corel ported Wordperfect to Winelib, people balked, so I wouldn't say there isn't a single bit of protest for WINE.

The key difference between WINE/Winelib and Winforms/ASP.NET/ADO.NET is that the later is billed as a permanent solution to writing portable apps that can be developed on Windows first while the former is not.

Edited 2007-03-08 20:57

Reply Parent Score: 5

RE[2]: Only Two Choices?
by ma_d on Thu 8th Mar 2007 01:29 in reply to "RE: Only Two Choices?"
ma_d Member since:
2005-06-29

Python is strongly typed, it's not statically typed. And I agree, I also believe it poses a problem when developing complex software. However, a lot of desktop software doesn't appear to be entirely complex in the way that static typing helps but in other ways where rapid changes help (user interactions are complicated because of users, not the nature of the calculations or data so an easily modified code base is more helpful than a statically typed one).

Obviously mileage will vary from programmer to programmer and problem to problem.

It is good to hear that Swing will be moving forward and making use of that extra hardware for drawing where possible, that's encouraging news. As I tried to communicate before, I didn't have the feeling that Swing was moving forward (other than trying to act more native). Maybe my feeling is wrong.

Start an app with only one display connected. Connect the display. Move the app to the second display. Try to use a combo box. The combo box should fail to display a menu (it does here).
Also, menu's don't do the proper animation after selecting (really minor).
I'm sure I'll find more as time goes on though, I'm new to Mac.


If you've watched Microsoft's take over of application software you should note one thing: It's not about what you can do, it's about what you can promise to do and if you can make people believe you'll get there. In a sense, it's about momentum (or at least perceived momentum) and not about assets.
Java is more mature, that's for sure and that's a great asset. Mono is new and shiny and partially due to its newness and partially due to its openness (not just the source, but the developers talking openly) it appears to have a lot of momentum.


Patent traps are probably going to hurt Mono as well. But I believe that's actually a much smaller group of developers than the group who doesn't think a lot about it; and I'm only talking about Linux application developers (the ones we're concerned with).

Reply Parent Score: 5

RE[3]: Only Two Choices?
by Mystilleef on Thu 8th Mar 2007 04:45 in reply to "RE[2]: Only Two Choices?"
Mystilleef Member since:
2005-06-29

>
>Python is strongly typed, it's not statically typed.
>And I agree, I also believe it poses a problem when
>developing complex software.
>

How do we define complex software? How does static typing make developing complex software easier?

http://pygtk.org/applications.html

On that page you'll find a list of applications ranging for UML editors, auditor editors, video editors, audio streamers, to full blown games all written in Python. Python is excellent for written any kind of software regardless of complexity. The whole "dynamically typed languages is not good for writing 'complex' software" is a silly myth.

Reply Parent Score: 4

RE[3]: Only Two Choices?
by Stubbs on Thu 8th Mar 2007 14:51 in reply to "RE[2]: Only Two Choices?"
Stubbs Member since:
2007-03-08

As Ma_d already pointed out python is strongly typed. One point I would make is that a combination of unit testing and pyDoc gets rid of many of the "risks" that a non statically typed language may introduce.

Also python now has the option of using Windows Forms or Swing Via IronPython or Jython respectively

Reply Parent Score: 1