The software and server company published very early versions of the source code of the Java 2 Standard Edition (J2SE) 6.0 on its Web site so Java programmers could better see and participate in its development, said Graham Hamilton, a Sun vice president.
"They want to see more of what's going on, and they want to give feedback," Hamilton said. "We're exposing very early, raw drops."
Java 6 is due in the first half of 2006, Hamilton said.
Ultimately, Sun wants outside developers to participate in Java programming the way outside organizations collectively set the Java agenda through the Java Community Process, Hamilton said. The JCP votes on what new Java features, called application programming interfaces (APIs), should be added.
"When we started doing API design with others in the JCP, our APIs got a lot better. We're trying to apply more of that principle to the J2SE source code itself," Hamilton said. "Having more eyes looking at it will improve the product over time."
The move is the latest adjustment to Sun's long-running attempt to balance the openness of Java with the risks of letting outsiders hold sway. Sun's first Java foe was licensee Microsoft, which added Windows-specific features to Java in a way that undermined the software's primary benefit of letting the same program run on any computer.
But particularly with Sun's legal settlement with Microsoft, the new tension over Java is with the open-source advocates who chafe at Sun's refusal to release full control over the software. Sun has been wrestling with the open-source Java issue for years.
Sun executives have in the past expressed reluctance to make Java open-source software. But now one part of Java is open source, and Sun pledged in June that the rest will follow suit, eventually.
Sun lets others see the Java source code after agreeing to the Java Resource License, which Sun introduced in 2003 to encourage broader involvement.
The company has accepted some major outside contributions to Java--for example, work by computer science professor Doug Lea on the interaction of simultaneously executing instruction sequences called threads. But Sun now wants more.
To submit their own code, programmers will have to transfer copyright ownership to Sun, Hamilton said. The bigger barriers will be cultural, he predicted: outside programmers convincing Sun programmers that their code is up to snuff; and Sun programmers helping outside programmers learn the ropes of the Java code quality review processes.
Sun learned that there was too much secrecy around its last version of Java, code-named Tiger, Hamilton said.
"Tiger was a very big project, and we went dark too long," Graham said. "We're trying to make it more transparent, so developers can see what we're doing on a week-to-week basis."
Sun is also giving a glimpse of some of the changes coming with Mustang.
The new version will be easier to manage, exposing information that outside management software can use to make control decisions, said Mark Reinhold, chief J2SE engineer. And it will be easier to find problems, with an "attach on demand" feature that can let debugging software graft onto software while it's running instead of just before it's launched.
Another item on the list is support for a basic set of Web services called WS-I, Hamilton said. That basic set, standardized through the Web Services Interoperability organization, had been scheduled for the Tiger release.
And Mustang will have better integration with graphical user interfaces, including Microsoft's upcoming Longhorn version of Windows, Reinhold said.