Skip to main content

Java Library Development Process..

7 replies [Last post]
Joined: 2003-06-08

As I started thinking about the issue of open-sourcing Java, I came to the initial conclusion that open sourcing J2SE Libraries would contribute to a more robust J2SE.

However, what I've come to realize is that open sourcing Java may not be the issue after all. The issue in my opinion (July 2004) is: Sun adopting the open source way of developing software. It works and it's successful. This must include: releasing often.

So far we've had six releases of J2SE (1.0 -> 1.5) over a period of roughly 9 years. That's approximately 1.5 years between releases. I'd like to see more of a linux model of releases. The linux kernel version at the moment is 2.6.8-rc1. Minor releases occur on the order of one per week.

I'd like to see J2SE managed the way the Linux kernel is, where Sun developers act primarily as project managers, distilling contributions, and releasing often.

Source versions of J2SE are already downloadable. That can be made a little more prominent so that folks out there with the time and interest can try out new minor releases and further improve upon them. Ever 18 months or so a major release can be cut.

I don't think it makes sense today to synchronize, say, releases of Swing with releases of JDBC because they both happen to be a part of J2SE.

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Joined: 2004-03-04

Release often might help and I think the current snapshots of Tiger are a good idea but I don't think Java should make more frequent 'official' releases.

One of the things I like about java is it's stability: I download the JDK/JRE and expect it to just work.

"Frequent releases never hurt Linux."

Right but most people doesn't compile they own kernels, they use ditributions that, as eirikma says 'work out of the box' (or almost).

"On the other hand I see slow progress in J2SE"

I agree with that. But Sun would have to be willing to listen to a beta-tester community and more frequent releases would be a natural result. I believe the Tiger snapshot are a good experiment in that direction.

Just my opinion.

Joined: 2004-04-23

The frequent releases may not be the primary cause, but is IS virtually impossible to get software to run on a different linux installation than the developer's. There is always something missing, in place but the wrong version, in right version but binary incompatible due to compilation flags being set different than expected etc.

I'd hate to see java develop into a system where you have to be a professional developer or sysadmin in order to make an application run. If you want to win the big audience it HAS to work out of the box with no action or decision-making required by the end user. There is no point in splitting up the libraries and apis until there is in place some kind of auto-management device that combine the functionality of webstart, debian 'apt' and dotnet 'assemblies'.

Joined: 2003-10-20

Just a simple conter-example: J2SDK runs nice on any Linux flavor, no? And please do consider that the "linux releases" where more about the KERNEL release that the distribution relases.

Joined: 2003-06-12

I share your frustration with j2se progress in certain areas. However, I don't know how more releases will solve that problem. Yes, if a fix is in place and ready to be released, then you'll get that fix quicker, but unless frequent releases translate into more developer time spent(not likely) on the api then I don't see anymore progress than current. The downside is that developers will have to deal with 50 different runtimes instead of maybe 3 or 4. I like the idea of quarterly releases from Sun. I can't imagine dealing with clients who have a hundred different nightly builds!!!

Joined: 2003-06-14

Maintenance releases have come between dot releases to address some bugs and performace releated issues. We have 1.4.2_04 for example.

If new features were released at too rapid a pace developers would complain about that as well.

I'm not in favor of a release often model, but rather a release often enough model.

Joined: 2003-06-08

Frequent releases never hurt Linux. I don't hear anyone complaining there. In fact I'd say it was a competitive advantage for Linux. It enabled rapid progress.

On the other hand I see slow progress in J2SE. I respect your right to differ with me on this issue but imho this is just the medicine that Sun needs. I also believe it could alleviate Sun's workload in terms of maintaining J2SE.

I see many new technologies being worked on and then being seriously revised because it ended up being something that developers didn't want after all. I think the process should be more organic.

Thank you for your opinion and feedback on this issue.

Joined: 2003-06-11

I beg to differ. Sun's COO Jonathan Schwartz makes a very compelling case for synchronized releases. I think you are dead-on in pointing to the "Java Library Development Process". There are too many black boxes in J2SE development.
- bugs and RFE's can stay hidden for many months prior to being evaluated
- the contents of J2SE release are black boxes until well into the release cycle
- the same goes for many JSRs
- there is no way for the community to submit bug-fixes and view proposed bug fixes (including documentation bugs)

Most importantly, however, there is no formal or obvious migration path for a class or patch to go from an open-source project to part of the J2SE. The most the Java documentation does is hint at the existence of third-party tools. Where Java provides a framework to be completed by others, the documentation should point to forums and other tools to help developers find and evaluate the missing pieces.