A step forward with Java SE for Business
Today marks the release of Java SE for Business, a new product offering designed improve the ability for ISVs/enterprises to develop/deploy Java SE for production use. Getting to this point has taken a while with the initial work going back a couple of years, however we are now in a position where we can address some of the pressing needs and allow us to better understand and address future needs.
Having any software program span a broad range of needs is hard, one usually runs into cases where the requirements of one set of users conflicts with others. Over the years with Java SE there have been moments where it has been hard to resolve the needs of one group over another, but we are today in a position where essentially the same binary runs on the backroom servers of the world's leading enterprises as well as the home PCs of millions of consumers. At some level quite an accomplishment, it is not often one works with a product which is downloaded across the globe within a matter of days. However that is not to say that it could not be improved and with the new Java SE for Business (JFB) offering we are looking to see if we can provide a better experience for the enterprises that run their business on Java SE.
The goal is not to come up with a new platform, nor a new specification, JFB is solidly based on Java SE and is firmly the same from a spec and implementation level. Where the differences come in are around some of the intangibles: what platforms is it supported on; how long is it supported for; can I get support; and, does it work well across my enterprise? For consumers and developers these questions don't usually come to fore when one considers Java, but for the IT administrators trying to manage maybe 100's of applications across 1000's of machine they are key.
Before getting to where we are wanting to take JFB it is first worth reviewing what it means for the key constituents of consumers and developers. For both the goal is that they continue to have access to the JREs and JDKs in the way that they are used to either from java.sun.com or java.com. For consumers Sun will continue to ensure that Java is available on machines "out of the box" and make the upgrade to newer versions as they become available. In that respect Sun performs the sys-admin role for the consumer and for that reason the JREs off java.sun.com and java.com will continue to be configured to provide as straightforward an upgrade path as possible.
When considering the impact of JFB for developers it is harder to give a summary as there is clearly a wide range of developer needs. For the casual developer or those targeting consumers these changes are of minor consequence as staying up with the latest release is something that we have encouraged from the beginning. For example all consumers that want to stay current are on the 6 JRE and the majority of JDK downloads are again for 6. There are not many cases where starting development of a new application using an old JDK would be appropriate. Given this we believe moving forward with 3 years of support for Java SE with not have a significant impact especially for browser applications. For those developers who create a standalone application that they want to continue using a particular release then again nothing changes all releases are and will continue to be available on the archive page for as long as necessary. For open source developers OpenJDK remains the focus of attention, we are looking at ways in which we can offer support on these platforms but that is not part of the model at the moment. Finally the main improvements come for the developers (both within ISVs or development groups within an enterprise) who continue to develop and/or support applications on older release families and the Sys Admins who take those applications and deployment across an enterprise.
Moving Java SE from an individual developer focused offering to one that meets the needs of the ISVs and enterprises that now depend on it is not an overnight task. In essence we will continue to work under the old model for about another year or so as it is not until Java SE 5.0 finishes maintenance next year that we will start to diverge from the plan of record we have today. However the goal was to make the transition as smooth as possible and start with some of the key requests that we have received.
Extended Support
We have historically provided between around 5 to 6 or so years of support for Java SE (certain version were supported for longer when bundled with Solaris). However what has become clear is that we need to provide far longer support. For example when talking to large ISVs they point out that they may not adopt a new release family (5.0 say) for 1-2 years after Sun ships the release they then start selling they products with an expectation of 5-10 years of support. This clearly isn't close to what we have been providing and so one of the drivers of the release of JFB was to enable ISVs to continue to get support on 1.4.2.
Broader Access to Escalation Fixes
Since the early 1.1 days we have provided customers with support contracts access to fixes to issues they escalate to us. Once a fix was available we would then provide them with a version of the fix to verify it works and then integrate it into the next update. This has been something that I have been trying to change since taking over the role as while the customer had the fix their customers didn't gain access to that fix for a number of months. So with JFB that has changed and we have introduced a new release type called a Revision which will enable broader access to those fixes within a matter of weeks.
Enterprise Management Features
As mentioned earlier Sun is in effect the SysAdmin for the consumer and as such works to make sure that consumers can easily download Java SE, stay up to date and are configured for the best experience on the web. Within an enterprise setting there is likely to be a group dedicated to the administration of the machines within that company's intranet and the way we deploy and configure the JRE does not always match what they need. Now that there is a separate set of downloads for JFB we can provide different out-of-the-box configurations and over time will work to have the JFB JRE integrate more fully into the software management infrastructures that are used within an Enterprise.
I'm going to leave it there for the moment, for more details check out sun.com/software/javaseforbusiness Making change is hard and it is clear that there are opportunities to refine the offering and add additional elements, however before moving forward with that I want to make sure that the efforts of the many customers and those within Sun Services and across the Java SE organization itself are acknowledged. It has taken a substantial effort to get us to this point, with more to come.