Skip to main content

GNOME Linux Desktop Community Considers Java

Posted by hansmuller on March 19, 2004 at 2:37 PM PST

Earlier this week Havoc Pennington, who's responsible for Red Hat's
desktop group and is the founder of freedesktop.org, published an
article inviting debate about future GNOME Linux Desktop development
called "Java, Mono, or C++" ( href="http://ometer.com/desktop-language.html">
http://ometer.com/desktop-language.html).

Mono is an open source project sponsored by Novell to build a clone of
Microsoft's .NET platform for Linux. Mono supporters would like to
see it become the runtime on top of which the GNOME desktop and
desktop applications are based ( href="http://javadesktop.org/hans/mono-two-stacks.png">here's a figure from the Mono
project web site). This is a controversial topic, in fact at the most
recent meeting of the GNOME Advisory Board it was considered too
divisive to indulge a discussion. Havoc's blog entry brings the
discussion into the great wide open and it has inspired responses and
discussion all over the net.

Historically, Java has not been incorporated in free software
projects like GNOME because the Java license and standards bodies
value cross platform portability over giving developers the right to
fork the Java platform at their whim. Although this hasn't changed,
Havoc's proposal advocates using Java within the limits of what's
supported by the GNU Classpath project. Havoc's proposal allowed that
GNOME developers could use other Java implementations. You can be
sure that Sun will continue to ship the complete, compatible
implementations of the latest Java standards.

All in all we're happy that the discussion about growing the set of
acceptable programming technology choices for GNOME's developers is
underway and that Java is a contender. There are huge advantages to
building large applications and systems using modern, object oriented,
garbage collected, secure, etc. programming platforms. The Java
community has more than eight years experience doing so. We're not
pushing Java as the underpinnings for everything in GNOME, just as an
alternative platform for Linux desktop developers who want some
portability with their modern runtime.

Java is already being widely used on Linux for both server and desktop
work. For example, a recent Evans Data Linux survey showed that 65%
of developers do some of their work in Java. Java is also heavily
used in open source projects, there are over 11,000 of them on
sourceforge today (roll-up by language is href="http://sourceforge.net/softwaremap/trove_list.php?form_cat=160">
here). And Java is doing well on the desktop. From tools for
developers like NetBeans, JBuilder, or IntelliJ's IDEA to consumer
file sharing favorites like Limewire and Morpheus (400,000 downloads a
week!), developers are producing thousands of free and commercial
desktop applications. It would be a better world if some of those
developers could have their software included with GNOME.

I've read much of the feedback that Havoc's blog generated on
slashdot.org, and gnomedesktop.org, and elsewhere. To the extent all
of that represents the voice of the Linux desktop community, I think
it's safe to say that the community doesn't speak with one voice on
this issue. On the other hand, I saw remarkably little enthusiasm for
making GNOME depend on Mono. To most developers, the thought of
defeating Microsoft's desktop software market dominance is inspiring.
However doing so by attempting to clone and track the .NET platform's
every mutation feels like an unnatural act and most of the feedback
that I read characterized the idea as repugnant. Java isn't a clone
of Microsoft's technology (in fact if imitation is the sincerest form
of flattery, we're blushing), it's a better alternative with a
community of millions of developers. I hope the GNOME community
doesn't fall into Microsoft's "clever trap".

Related Topics >>