[Duke Thinking]
« May 2008
SunMonTueWedThuFriSat
    
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
       
Today

XML



LINKS





CONTACT
Tom Marble's Weblog

template by
Helquin


All | Collaboration | Law and Technology | Personal | Sun

20071113 Tuesday November 13, 2007

The Java Experience

Today marks l'anniversaire du Java Libre -- it's hard to imagine all that has happened in the past year. Fortunately Rich Sands provides a great chronology of open sourcing Java SE.

Of all the work that has gone into open sourcing Sun's implementation of Java SE one milestone stands out clearly: Sun's choice of GPLv2 and the Classpath Exception for OpenJDK. Despite the overwhelming success of GPL as the top license choice of open source developers one often finds strange interpretations of it from "it discourages commercial development" to "if there is a GPL coffee cup in your office then the desk, the chair and the lamp must divulge their secrets". GPL is even sometimes criticized for not providing the "freedom to commercialize". It would seem that a fairly significant commercial ecosystem has been built on top of GNU/Linux. The use of the Classpath Exception makes explicitly clear that library and application developers deploying on OpenJDK are free to choose whatever license they wish for their work including closed source. Using OpenJDK as a platform gives you complete freedom.

Modifying the platform, itself, however does mean that changes must stay in the open. If one of your core values is ubiquity then you want the broadest possible reach for the platform on as many operating systems and chip architectures as possible. You want the community to share this complex knowledge to reduce duplication of effort and speed porting. If one of your core values is compatibility then you want to insure that the platform has consistent behavior on all platforms. You want to discourage proprietary "secret sauce" that would attempt to advantage one platform at the expense of the promise of "write once, run anywhere" for the entire ecosystem. So when it comes to the platform itself industries that are characterized by the walled garden approach may indeed have to change their business models. I bet that the most interesting devices of the future will be built upon software development kits which value compatibility out of respect for the career investment made by developers. The reason is simple: developers will advantage device platforms that keep the promise.

On this anniversary let me dream a little bit about what the OpenJDK platform could enable... I am talking about The Java Experience. As both a user and a developer I have become quite a fan of the always-up-to-date facility of Debian GNU/Linux. Debian has a very elegant way of managing software such that interdependencies of one package on others is handled automatically and upgrades of package versions is handled gracefully. Bringing this idea to the Java Platform is not new and is captured by the work on the Java Module System. For me the "Java Experience" would be the full realization of this concept where developers could author Java libraries and applications on any platform for deployment everywhere. To make this work our development tools will have to get smart about all the operating system specific facilities for managing software packages. Adapting a Java authoring tool for Debian will be easy. Training Windows to learn about "packages" will be somewhat difficult.

Imagine the power of being able to press the "publish" button which could upload your Java application to an automated packaging repository. This is about taking the Java promise over the finish line to leverage all the work in the core platform ubiquity to complete deployment. The Java Experience for users could be that once connected to the packaging repository all Java applications are available just by browsing or searching for them by name. One click would download the program you want (and all of its dependent libraries). This would mean that the concept of "It Just Works™" would be available everywhere there is a Java Platform. In this way users could be truly liberated to run the software they like on any device. That's the experience which is possible with OpenJDK.

The Java Experience
Getting to know and learn from developers in the OpenJDK community has been extraordinarily rewarding for me. I have learned a great deal about the tools other Free Software projects use and the social milieu required for open source projects to be successful. One of my patient mentors is Mark Wielaard: the icon for GNU/Classpath & Friends. Mark has always said "it's all about having fun!". At first I frankly thought he was joking. But I've come to realize that Mark was quite serious that fun is the essential ingredient for hacking! Mark has talked about his memories of Java Liberation Day. Everyone has a different point of view, interests and abilities. I try to learn something from each person I meet.

Do you have any thoughts about OpenJDK after one year? Do you have a vision of how you would like to see Java Technology evolve? Please share your comments here, link to your blog, see what Sun engineers are saying and join us today on the #openjdk channel to talk about OpenJDK's birthday! Have you lived through complex technology changes? Are you experienced?

Posted by tmarble ( Nov 13 2007, 10:07:37 AM CST ) Permalink Comments [1]

20070831 Friday August 31, 2007

A Couple More Minutes

Today my 15 will be complete when my interview with Kuldip gets published on SDN-TV. You will get an update on OpenJDK and the work the community has already accomplished towards a completely Free runtime in creating IcedTea.

Currently on SDN you can see Barton talk about our work on packaging our Java Stack for GNU/Linux and our announcement with Ubuntu earlier this year. And, yes, Barton is wearing a Debian Etch T-Shirt.

SDN
Thanks to mjw and the Fedora team collaborating with OpenJDK and packaging IcedTea for the *.rpm world. Thanks also to doko and man-di for packaging IcedTea for the *.deb world. Thanks to Betelgeuse for packaging OpenJDK and IcedTea for the *.ebuild world.

As you know I think packaging has long been overlooked in the Java ecosystem for getting all of the coolness "over the finish line". But, of course, it is important to thank all the men and women who have worked with Java Technology from the time it was Oak for building the rich platforms we have today.

Despite dalibor talking up my being an Executive :) this is about all of us. Back to the regularly scheduled program.

Posted by tmarble ( Aug 31 2007, 09:49:21 AM CDT ) Permalink

20070809 Thursday August 09, 2007

The Java Promise

Sun is announcing today the availability of a new license that will fulfill our promise to the Free software world to make it possible to test OpenJDK-based implementations for compatibility.

We are about to start an IRC discussion to talk about it.

Please check out the OpenJDK TCK License and also the updated FAQ.

Duke Thumbs Up
The TCK is the tool through which compatibility can be determined. While it is common for many programming environments to work on more than one platform I challenge any of them to have gone to the lengths Java has to insure the same quality experience on all platforms. And to Java's credit it also brings along stellar performance and security.

After the chat let's continue to the discussion on the discuss mailing list (or discuss on gmane).

NOTE on submitting comments: The Roller software we use here at Sun is quite aggressive about which comments it likes. Please be patient if your comment which includes HTML is not displayed immediately. I will ensure it gets published the next time I check e-mail.

Posted by tmarble ( Aug 09 2007, 09:57:44 AM CDT ) Permalink Comments [1]