Hallelujah. Apple has finally (maybe two years after everyone else?) released Java 6 for Mac OS X. Of course, it's only for Mac OS X 10.5.2, and only for 64-bit Intel processors, which means we still can't count on Java 6 being available to all users. Furthermore, this release is incompatible with QuickTime for Java. What was it Steve Jobs said about making the Mac the "best Java delivery platform on the planet"?
The Eclipse Project has posted the sixth milestone release of Eclipse 3.4 Ganymede, their open integrated development environment for Java. This release dramatically improves updates and installs. In addition Eclipse should appear somewhat more native on both Mac OS X and Vista in this release.
Sun has released NetBeans 6.1, its open source IDE for Java, Ruby, and JavaScript. "The NetBeans IDE 6.1 release provides several features and enhancements, such as rich JavaScript editing features, support for using the Spring web framework, tighter MySQL integration, and better mechanisms for projects to share use of libraries. The acclaimed support for Ruby/JRuby has been enhanced with new editor quick fixes, a Ruby platform manager, fast debug support for JRuby, and many other new features and fixes. By popular demand, the bean pattern and JSF CRUD generation features that were missing in the 6.0 release have returned. In addition, early versions of new modules, such as ClearCase support, are available as plugins. This release also provides improved performance, especially faster startup (up to 40%), lower memory consumption and improved responsiveness while working with large projects."
The Apache Software Foundation has released Maven 2.0.9. Version 2.0.9 attempts to improve plugin version stability.
I'm back from China. As expected this site was blocked by the Great Firewall, likely because the shared host I use also hosts Friends of Tibet, Tibet Writes, and several similar sites. One thing I learned in China is that the government there is very sensitive about Tibet, and is doing everything they can to convince folks that Tibet is a natural part of China. For instance, one of the mascots of the Beijing Olympics is a Tibetan antelope, and many tourist sites emphasized the historical connections between Tibet and China, and the fealty paid by previous Dalai Lamas to the Chinese emperors. Sometimes it felt like every other news story on the English language channel involved Tibet in one way or another. I've been writing about the trip as time permits on Mokka mit Schlag. Regular updates will resume shortly.
I'm leaving for China tomorrow. This site likely won't be updated for a couple of weeks. For one thing, IBiblio (that hosts this site) also host Friends of Tibet, Tibet Writes, and several similar sites, and is therefore routinely blocked at the Great Firewall. If I have Internet access, and anything interesting to say about the trip, I'll probably put it on Mokka mit Schlag.
CMP has posted the Call for Papers for Software Development Best Practices 2008. Tracks include:
Deadline is May 16. The conference takes place October 27-30 in Boston. I think I'm skipping this one this year. It's always a good show, but my time is very constrained these days, and it's all the way on the other side of the country from me now. No more taking the early Acela up the first morning.
Sun has posted the first release candidate of NetBeans 6.1, its open source IDE for Java, Ruby, and JavaScript. "The NetBeans IDE 6.1 release provides several features and enhancements, such as rich JavaScript editing features, support for using the Spring web framework, tighter MySQL integration, and better mechanisms for projects to share use of libraries. The acclaimed support for Ruby/JRuby has been enhanced with new editor quick fixes, a Ruby platform manager, fast debug support for JRuby, and many other new features and fixes. By popular demand, the bean pattern and JSF CRUD generation features that were missing in the 6.0 release have returned. In addition, early versions of new modules, such as ClearCase support, are available as plugins. This release also provides improved performance, especially faster startup (up to 40%), lower memory consumption and improved responsiveness while working with large projects."
Charles Oliver Nutter, Thomas Enebo, and Ola Bini have released JRuby 1.1, a "1.8.6 compatible Ruby interpreter written in 100% pure Java." It also supports the Bean Scripting Framework. This release focuses on improving performance, and should outperform the native Ruby interpreter for many tasks. JVM: it's not just for Java any more.
JRuby is distributed under three licenses CPL, GPL, LGPL. That's just way too confusing. There's zero-need to dual license under both the LGPL and GPL since the LGPL explicitly allows code to be forked into a pure GPL product.
Tim Boudreau is working on the Wizard API, an open source Java library that:
Provides a simple API and UI for Wizards, a commonly used UI pattern in GUI interfaces. Traditionally, everybody has needed to write their own Wizards from scratch, and such code is painful and hard to get right.
This library aims to provide a simple, relatively bulletproof API for writing Wizards. The UI for Wizards is pluggable; the default implementation conforms to the JLF usability guidelines for Wizards.
This library was originally designed as a replacement for NetBeans' Wizards API, and takes into account the long history of that API and problems encountered with it over the years. It provides a simple, easy-to-use solution that enables any Swing application to provide Wizards with a minimum of code and effort.
The Wizard API is published under the Common Development and Distribution License, a somewhat unusual choice.
Sun has decided to continue supporting Java 1.4.2, 5, and 6 for about 15 years under the rubric "Java SE for Business". As far as I can tell, this is just the regular JDK. You just download it from a different URL. I like the longer support (one major product at my current employer is just now moving off of 1.4.2 and won't be fully migrated for the indefinite future) though I confess I'm a little baffled as to why they felt obligated to give this a new moniker.
 The Legion of the Bouncy Castle has released version 1.39
of the Bouncy Castle Java Cryptography API, an open source,
 clean-room implementation of the Java Cryptography Extension (JCE).
It supports X.509 certificates, PKCS12, S/MIME, CMS, PKCS7, TEA, XTEA, SHA224, and lots of other juicy acronyms. It also includes its own light-weight crypto API that works in Java 1.0 and later, and does not depend on the JCE.
According to the announcement:
The Legion of the Bouncy Castle has released version 1.39
of the Bouncy Castle Java Cryptography API, an open source,
 clean-room implementation of the Java Cryptography Extension (JCE).
It supports X.509 certificates, PKCS12, S/MIME, CMS, PKCS7, TEA, XTEA, SHA224, and lots of other juicy acronyms. It also includes its own light-weight crypto API that works in Java 1.0 and later, and does not depend on the JCE.
According to the announcement:
This release adds certifications with user attributes for OpenPGP, CMS countersignature support, and VMPC-MAC. Speed improvements have been made to the ASN.1 package. The CertPath validator now covers a wider range of NIST validation tests. An error in IV handling for SEED and Camellia in CMS has been fixed in addition to other bug fixes and enhancements. See the release notes at http://www.bouncycastle.org/releasenotes.html for details.
This release is also signed using a new signing certificate which will not expire till 2013. We would like to thank the people at Sun Microsystems for their assistance in getting the new signing certificate organised.
Download it while it's still legal.
Sun has posted a beta of Java SE 6 Update 10. The main focus of this release is easing deployment.
- The Java Deployment Toolkit takes the guess work out of determining what versions of the Java Platform end users have installed on their PCs. It supplies Java based web applet/application deployers with a simple JavaScript interface. This greatly increases the ease of detections of users' Java environment, as well as the ease of Java Platform deployment.
- The Java Kernel online installer lets first time Java users run applets and Java Web Start applications quicker without waiting for the whole Java Platform to be downloaded. The default Kernel installation is expected to satisfy the requirements of most Java applets and applications, and any additional libraries that may be required at runtime are downloaded to complete the Java Kernel installation. This installation mechanism let the end user get up and running significantly faster, while the complete Java Platform installation takes place in the background. See Java Kernel FAQ for more information.
- For current users of Java SE, the Java auto-updater has also been improved, using a patch-in-place mechanism that translates in a faster and more reliable update process (the patch in place mechanism will take effect for end users who upgrade from this update release or later to a new update release). As an added benefit, follow-on update releases will no longer be listed as separate items in the Windows "Add or Remove Programs" dialog.
- New Version Download and Pack200 Support
Ease of deployment: Server side requirements are removed! With the new Java system property and these technology, they will drastically improves the ease of deployment for developers to deploy their Java applications or Applets through the network.- Improved performance and look & feel
- The Java Quick Starter feature will prefetch portions of the JRE into memory, substantially decreasing the average Java Platform cold start-up time (the time that it takes to launch a Java application for the first time after a fresh reboot of a PC).
- Hardware acceleration support: Java SE 6 Update 10 introduces a fully hardware accelerated graphics pipeline based on the Microsoft Direct3D 9 API, translating into improved rendering of Swing applications which rely on translucency, gradients, arbitrary transformations, and other more advanced 2D operations.
- A new cross-platform Swing look & feel, code name Nimbus, provides a nice update over 'Metal' and 'Ocean' and with exciting features.
- Next-Generation Java Plug-In
A new implementation of the Java Plug-In that features:
- Better Windows Vista support
- Ability to specify large heap sizes
- Ability to specify per-applet command-line arguments
- Improved reliability
- Improved user experience
- Improved Java/JavaScript communications
- Built-in JNLP support
- Multiple JRE version support
Mort Bay Consulting has released Jetty 6.1.9, an open source servlet engine that supports version 2.5 of the Java Servlet API and version 2.1 of Java Server Pages. This is a bug fix release. Jetty is published under the Apache 2.0 license.
 The Apache Project has posted 
 a beta of   Ivy 2.0, an open source  Java based dependency manager.
The Apache Project has posted 
 a beta of   Ivy 2.0, an open source  Java based dependency manager.
 
Ivy is a tool for managing (recording, tracking, resolving and reporting) project dependencies, characterized by flexibility, configurability, and tight integration with Apache Ant.
This is a beta release, for wide testing with users. Problems found at this phase can be fixed in the final release, so now is a good time to download and use it. Although there may be some changes at the API level, it is already being in production builds in many large Java projects.
Key features of the 2.0.0-beta2 release are
- enhanced Maven2 compatibility, with a fully rewritten pom parser
- improved cache management, including dynamic revision caching
- with fine grain TTL
- namespace aware validation, allowing to use validation with
- extra attributes
- easier settings loading, which do not require an id anymore
- numerous bug fixes as documented in Jira and in the release notes
 JetBrains has released Structure101, a visualization tool that "creates an interactive visual model that helps you to understand software structure, control structural complexity, define architectural constraints and communicate these to other team members."
Structure101 sounds interesting, but it's $599 payware, and that doesn't even include support.
It's  a little pricey for what amounts to a static analysis tool.
JetBrains has released Structure101, a visualization tool that "creates an interactive visual model that helps you to understand software structure, control structural complexity, define architectural constraints and communicate these to other team members."
Structure101 sounds interesting, but it's $599 payware, and that doesn't even include support.
It's  a little pricey for what amounts to a static analysis tool.