| Tuesday, November 14, 2006 |
|
|
|
|
| A Developer's Perspective |
|
 |
Rick Ross is the founder of Javalobby. He is a frequent speaker at Java-related events and a well-known advocate for Java developer interests.. |
|
Stallman's praising Sun! Are pigs flying, too?
I’d like to quote Richard Stallman (yes, that Richard Stallman!) on Sun’s announcements yesterday, “I think Sun has, well with this contribution, have contributed more than any other company to the free software community, in the form of software. And it shows leadership - it's an example I hope others will follow.” This is the man who, just a couple of years ago, wrote a cutting essay entitled “Free But Shackled - The Java Trap” that is anything but flattering to the Java vendor.
This extreme turnaround on Stallman’s part illustrates how profoundly significant we must consider Sun’s announcements about the immediate open sourcing of Java under the GPL license. If Stallman, generally considered to be among the most unyielding open source advocates, is now praising and congratulating Sun as a leadership example, then what is not within the realm of possibility for Java’s future?
The rumors were true, and Sun has now made the move that many thought would never happen. Effective yesterday, November 13, the whole of Java SE, Java EE and Java ME have all been placed under the GNU GPLv2 open source license. Jonathan Schwartz, Sun CEO, spoke plainly about how this action relates to his “Volume Drives Value” concept and made clear that this is a business step which he believes will lead to expanding market opportunities and profit margins for his company. I hope he is right, and I hope that this move helps power many more years of success for the Java industry as a whole.
One of the first results we can anticipate is that the complete and compatible Java runtime will probably soon be shipped by default in many more Linux distributions. Now that the Java platform is truly open source, the legal and philosophical obstacles which formerly blocked its inclusion in many Linux distros have been cleared away. I know this will be a pleasant change for any of you that have ever had to deal with the vagaries of “gcj” or had a simple system update trash your carefully configured Java server configurations. Java on Linux is not only significant for servers, however, and we may eventually see it become the cornerstone for many new Linux desktop tools and applications. Gnome and other Linux gui toolkits are certainly capable, but nothing currently available equals the general purpose computing foundation delivered by the Java platform.
As I wrote last week, the GPL is often thought to propagate its open source provisions to anything and everything it comes in contact with. This will not be a problem for Java applications under the newly adopted license because Sun has incorporated something called the Classpath Exception. It permits you to link your code to open source Java without forcing your code to fall under the GPL as well. The actual language of the Classpath Exception is straightforward, well written and mercifully brief, so you may want to take a moment to read it. The GNU Classpath::License page explains, “As such, it can be used to run, create and distribute a large class of applications and applets. When GNU Classpath is used unmodified as the core class library for a virtual machine, compiler for the java language, or for a program written in the java programming language it does not affect the licensing for distributing those programs directly.” The short of it is that you don’t have to worry about the GPL attaching itself to your Java code. It will not. When open source Java is used unmodified as the foundation for a program written in Java, it does not affect the licensing for that program.
I know there are some developers who felt strongly that Sun should never open source the Java platform, and I’m sure not all of you are thrilled by the news. If you are one of those, then I hope you will consider the enormous pressures Sun and the entire industry are under from the open source movement. If Java is to continue being the key platform for innovation for the next ten years as it has for the past ten, then it must be acceptable to the majority of those driving the innovation. In today’s market that means it must be open source - there was really no other choice. Sun’s management made thoughtful and wise choices about how to lead this transition, but the writing was on the wall long before the current CEO came into his position. From my perspective there was no other practical choice, and this bold move by Sun will help the whole Java industry sustain its appeal and value for years to come.
For most of you I think Java will effectively be much the same as it has always been, totally free and ready for you to build whatever you can dream. The people behind Java haven’t become visionaries merely because they have now chosen to open source their versatile platform. They have been visionaries for a long time already, and even before it was open sourced I know you’ll agree that there was much about Java to admire. Let’s hope, with these intellectual property barriers removed, that the appeal of Java will resonate to an even larger group of developers than the millions of us around the world already using it!
Until next time,
Rick Ross
rick@javalobby.org
AIM or Yahoo Messenger: RickRossJL |
| |
|
| |
|
|
|
 |
Matthew Schmidt
is the man behind the scenes at Javalobby. If you have questions
or concerns, feel free to email him at matt@javalobby.org. |
Not the only open source kid on the block
Yesterday was a big day for the Java world, but Sun’s not the only company making big open source moves. Today, ICEsoft, the company behind the very popular IceBrowser, is finally open sourcing their excellent AJAX JSF render kit, ICEfaces. We had a chance to sit down with several of the guys from IceSoft at the Ajax Experience and it was an excellent time. Those guys have built an amazing product based on what they call Direct To DOM, which essentially squirts back little diffs to the DOM tree from your server side code. Forget about needing to write in brittle JavaScript without any real debuggers, now you can do all your coding in normal Java.
Two years ago, Rick and I saw IceSoft demo-ing IceFaces at JavaOne. At the time, we were completely blown away. Since then, they have finessed the product into one of the leading AJAX JSF extension options and now you can use ICEFaces in any of your projects, be they commercial or private. Be sure to check out their showcases (especially WebMC) over at icefaces.org, the new home for the open source code.
java.net.URL.equals and hashCode make (blocking) Internet connections....
Michael Scharf has written an interesting blog entry about a strange side effect of using java.net.URL. Apparently, anywhere that you call java.net.URL.equals, the Java platform will make a blocking IO call out to the two URLs to do name resolution. This can have some pretty serious performance side effects, most notably in the Eclipse Update Manager. Michael notices that Sun has gone against one of the Effective Java core principles: Don't write an equals method that relies on unreliable resources.
It seems strange that Eclipse would have done a direct equals call on the URL object instead of converting the URL to an absolute String and then comparing those. Perhaps an Eclipse developer can fill us in on this design choice? If so, please send me an email and let me know. Apparently, there are also places in the WTP code that do the same comparison and cause a blocking call. I find the whole thing very interesting, and according to the Sun docs, there’s not really a way to correct this. So, for those programmers who might be seeing a weird slowdown in their applications: be sure not to call java.net.URL.equals.
Java SE 6 RC Available
Over the weekend, we noticed that Sun had released the first release candidate for Java SE 6. This new release brings several new features to the platform that has been on the roadmap for some time. The new features cover a wide swath of the platform, including integration of the Rhino JavaScript engine, integrated web services, more security enhancements, and some serious improvements to Swing. Apparently, there have been some nice improvements in the performance of Swing and some nice look and feel changes that make Swing match the native look much better. Sun has also taken the time to update the tutorials and the rest of the documentation with this release. As I mentioned last week, Sun is marching toward the final release here, and it’s likely only a matter of time before we see the GA release of Java 6.
Fun Tuesday – Duke is open sourced
For a laugh, Sun decided that if they’re going to open source Java, then it’s going to need a mascot. Java has long had the giant “tooth”, Duke, as its mascot and now Duke has also been open sourced. This means that you can use the Duke image anywhere you that you want (applications, websites, etc.), all under the BSD license. I wonder if anyone asked Duke what it feels like to be open sourced, assuming he can even talk? Regardless, Sun has put up some nice images, animations, and wireframe models that you can use at java.net. Check it out and if you make some neat Duke items, be sure to let Javalobby know!
Until Next Time,
Matthew Schmidt
matt@javalobby.org
Yahoo IM: mattschmidtjl |
| |
|
|
|
|
|
 |
Erik C. Thauvin maintains a blog
, as well as one of the web's first and most popular linkblogs, which he updates daily with the latest Java and technology news. |
|
| |
|
|
|
 |
A recap of
some of the most popular and active Javalobby.org
discussions this week. |
|
Sun to GPL Java
|
|
Java is to be released under the GPL, hopefully this might be the last thread on the subject, albeit a long one.
|
|
Full Discussion
|
Posted By: David Benson - (128 Replies)
|
|
How Can JDT Improve?
|
|
It seems we rehash this every release, but I think it's just as relevant now as the last two times we've had this discussion: How can JDT be improved to better serve your workflow?
|
|
Full Discussion
|
Posted By: Daniel Spiewak - (28 Replies)
|
|
|
|
|
|
 |
Product and
service announcements for Java developers. |
|
soapUI 1.6 final
|
|
We are extremely happy to finally release soapUI 1.6 which introduces a large number of fixes and many minor improvements since the beta2 release.
|
|
Full Announcement & Discussion
|
Posted By: Ole Matzura - (0 Replies)
|
|
JIDE 1.9.4: JIDE Pivot Grid
|
|
JIDE Software announces 1.9.4 release of JIDE products and introduces JIDE Pivot Grid. Pivot Grid is a Java/Swing implementation of the famous PivotTable feature as you can find in Microsoft Excel.
|
|
Full Announcement & Discussion
|
Posted By: jide software - (0 Replies)
|
|
bea exam preps ?
|
|
aSubject lengths vary by the forums. For a Product Announcement, please limit it to 50 characters. For all other forums, between 50 and 80 characters is acceptable.
Summaries
Some forums allow you
|
|
Full Announcement & Discussion
|
Posted By: theewana - (-1 Replies)
|
|
|
|