Sun Microsystems has announced that it will be relaxing its Java license to give developers greater access to source code and an easier path in steering its future direction and contributing enhancements, but fears of forking have prevented Sun from adopting an Open Source license.
…I feel weird, now.
It probably doesn’t matter at this point whether Suns “open sources” Java or not.
It works on the server, there are great tools out there that something like Mono won’t have for years to come.
The one thing that probably does matter is Java’s EULA that makes it a pain to get an official JRE for some distros.
On one hand, open sourcing java probably would have offered some language and JVM enhancements to compete with .NET, Sun loses control, and who knows about incompatible forks (Does one get dominant?)
All the interesting client-side stuff is being done on the Eclipse platform anyway.
I’m not fully aware of Sun’s case on open sourcing Java or not. I’m wondering : why do they “fear” forking so much ? What do they have to lose ?
I just felt weird too!
that now beos and other alternative OSes can easily get their fully working native java ports.
i had to laugh when i read this headline … it could have come at any point in the last eight years!
Microsoft forked java before. and this was paid badly by many MS java dependant stupidness. i support Sun’s policy on java and open source. However, they need to make a better mechanism for getting patches from developers. i guess they are working on it. and again, java’s source code is accessable for yers, get t , compile it if you wish..
Anyone here tried out the Java Desktop OS?
What are your thoughts on it in terms of available applications, and performance?
Is it any better on hardware other than i386?
Is their Gnome any better than the Gnome on Linux?
thanks
Or at least feels like a regular column
cheers,
dalbor topic
“I’m not fully aware of Sun’s case on open sourcing Java or not. I’m wondering : why do they “fear” forking so much ? What do they have to lose ?”
It’s all about guaranteed compatibility. Sun’s customers repeatedly tell Sun they want more compatibility enforcment. Not less, which is what open source Java would mean.
As Gosling said at the announcement, companies don’t just want “Hi, I tried it and it worked for me” or “Hi, my friends tested it to”. They want methodically put together tests and some guarantees that those tests are actually done.
As Gosling said at the announcement, companies don’t just want “Hi, I tried it and it worked for me” or “Hi, my friends tested it to”. They want methodically put together tests and some guarantees that those tests are actually done.
I’d love that too. Where can I find the results of Sun’s J2SE 1.5.0_02 on the 1.5 TCK on Debian Sarge? How can repeat those tests?
I can’t find any and I can’t repeat those tests because they don’t exist, at least in public.
The whole current notion of ‘gueranteed compatibility’ is just a major excercise in handwaving that’s not verifiable by customers on their actual platforms they use, and will remain that way until a trustworthy, independent and open compatiblity test suite emerges. Mauve looks like a good nucleus for it.
cheers,
dalibor topic
“Sun doesn’t do methodical testing afaict, either”
Yes, they do. In fact, there are over 50,000 compatiblity tests that are run on each Java release. Sun’s testing is very methodical and through.
“How can repeat those tests?”
By purchasing the test suite, which vendors who want to produce their own Java versions have to do. IBM is required to pass the rigorous suite of over 50,000 tests before they can release their version of Java. Apple is as well. They have to pay for the test suite.
If you are a regognized open source group like Apache, you will soon be able to get the test suite free of charge from Sun. But you have to be a recognized open source group to qualify for the free testing.
Yes, they do. In fact, there are over 50,000 compatiblity tests that are run on each Java release. Sun’s testing is very methodical and through.
And you’ve got a links to the test logs to prove that? Without verifiable results, there is no difference in that claim to “Hi, I tried it and it worked for me”.
No, seriously. I’m sure that Sun has some test suite somewhere, and I’ve started the scholarship process application as a qualified individual, but there is no practical way a Java user in general can be sure that what she gets from any Java vendor is actually compatible with anything else. Unless she trusts the vendor blindly or the cute logo. None of which is really reassuring.
In particular, if I run anything but the specific platforms the release has been tested on, I’m on my own. Does J2SE 1.5.0_02 pass the TCK on Debian Sarge? Woody? RHEL with the latest security patches applied? No idea. Noone knows.
By purchasing the test suite, which vendors who want to produce their own Java versions have to do.
And that’s available for purchase where? And costs how much?
I’m not talking about other vendors here, I’m talking about having a chance as a user to verify compatibility claims of different vendors on my chosen platform.
I’m suprised about the claim that customers want more compatibility enforcement, as currently they have no easily accessible means to verify such claims, afaict.
cheers,
dalibor topic
I personally think that there is every reason for the Sun boffins to not let their precious Java be made Open Source. While that does hinder its development a bit, I for one am not complaining…much. I think that Sun should make it so that a lot of the users who want to contribute to Java can dload the source make mods and then be able to test it using their suite for free. Then if the tests are passed with flying colors they should then be able to submit it to the Java community for review and say hey guys do you think it would be a good idea to include this feature by so-and-so in the next release? If people say yeah man its a great feature to have, they add it.
“And you’ve got a links to the test logs to prove that?”
No. I have first hand directly from James Gosling.
And if you read the license agreements, you will see it is right in there that IBM and such need to pass the compatibility tests to be able to call it Java. It is right in the agreement that you must pass the strict compatibility tests. And any company that has ever done will tell you that those tests are very rigorous.
“and I’ve started the scholarship process application as a qualified individual, but there is no practical way a Java user in general can be sure that what she gets from any Java vendor is actually compatible with anything else. Unless she trusts the vendor blindly or the cute logo. None of which is really reassuring. ”
Sure there is. They can’t use the Java logo unless they have passed the strict compatibility testing. If they do, they are in trademark violation and violation of the license agreement and will be sued by Sun.
“And that’s available for purchase where? And costs how much?”
You would have to talk to Sun about that. It is not sold publically. It is only sold to vendors who are specifically creating their own Java implementations as far as I know.
If you look back in the OSNews archives, there were recent flamewars about JDS and Solaris. Try to focus on the neutral to positive comments, because JDS and Solaris really are pretty good and YMMV with respect to other Linux desktops. Don’t forget that there are both Linux and Solaris variants of JDS.
http://www.osnews.com/story.php?news_id=9965
http://www.osnews.com/story.php?news_id=9865
http://www.osnews.com/story.php?news_id=9820
http://www.osnews.com/story.php?news_id=9771
No. I have first hand directly from James Gosling.
Good connections!
TCK logs for Sun’s J2SE would be very interesting to see.
I’ve been browsing the TCK section in SCSL 2.3, and it’s pretty interesting. It seems like Sun’s notion of compatibility is having a static snapshot at a specific configuration pass the tests, and then you get to certify yourself as passing, but you are not allowed to publish results and all that. So it still boils down to unverifiable claims, i.e. “Hi, I tried it and it worked for me” for a specific point in time on a specific setup. Whether those results are transferrable to my own system is unclear at best.
That’s not a huge issue on a proprietary system, as most proprietary platforms stay somewhat static. They don’t change much. On the other hand, the difference in compilers, kernels, toolchains and all that can vary immensely between open platforms, so it appears as if that certification model is not very well suited to give customers such compatiblity guarantees on their platforms unless they use a specifically certified one.
In other words, is J2SE 5.0 still Java(TM) on, say, Debian or Gentoo? Sun never certified it for those systems, and the results on, say, RHEL, don’t mean much on other, more dynamically changing distributions.
Which, as you can imagine, is pretty interesting for free rutnimes, if they get certified. What would such a certification mean? Kaffe would be certified on Debian Sarge from last week, but not on the one from this one?
It is not sold publically.
Then it hardly can be used as on objective way to measure compatibility for such customers demanding more compatibility. That’s unfortunate.
“It seems like Sun’s notion of compatibility is having a static snapshot at a specific configuration pass the tests, and then you get to certify yourself as passing, but you are not allowed to publish results and all that. So it still boils down to unverifiable claims.”
Well, to a certain extent, yes, you can’t actually run the tests yourself. But it would be false advertising and be highly illegal if Sun were making such claims and they were just lies. So I think we can safely assume that if Sun is making the claims, it is true. And I doubt IBM and Apple and such would be perpetuating such a thing if they weren’t really passing the tests. And I certainly think open source products that have been J2EE certified would not perpetuate it. But these open source products have passed the compatibility tests as well.
“In other words, is J2SE 5.0 still Java(TM) on, say, Debian or Gentoo? Sun never certified it for those systems, and the results on, say, RHEL, don’t mean much on other, more dynamically changing distributions.”
Sun doesn’t require testing on every Linux distribution. Only testing on Linux. The fact that it might work on one Linux distro and not another says more about the fragmentation of Linux than it does about Java and any kind of compatibility problems.
BTW, Sun does now make available the development snapshots of new versions of Java in source code form. These of course, have NOT been tested since they are changing rapidly But they are there because Sun wanted to get users more involved in the development process with providing feedback and even submitting bug fixes.
But it would be false advertising and be highly illegal if Sun were making such claims and they were just lies.
Isn’t that simply projecting a ‘yes-or-no’ technical issue, i.e. compatibility, into the legal domain of ‘maybe-if-you-can-persuade-the-court’?
That sounds like the obviously wrong solution to me, to what appears to be a fundamentally simple, technical issue: just run objective, vendor neutral tests and you can be sure that you’re not getting a cat in bag.
I don’t see how any user, in such a hypothetical case, without access to the test suite from Sun, would be able to get a court judgement on illegal advertising from a non-compatible vendor. And what would it be good for? It wouldn’t get you a compatible release, at best you’d get an update whose compatibility claims you still can’t verify.
Assuming that vendors control each other, is again no different from the claim Gosling is trying to make about lack of testing in open source projects: “Hi, my friends tested it too”. It again boils down to unverifiable claims for the users without access to an objective, vendor neutral compatiblity test suite.
That feels a bit like a ‘compatibility cargo cult’
The fact that it might work on one Linux distro and not another says more about the fragmentation of Linux than it does about Java and any kind of compatibility problems.
Well, what’s a compatiblity certification good for then? J2SE 5.0 offers IPv6 support, but if your distribution does not support IPv6, whose fault is it? The VM vendor’s for not having a full IPv6 stack in the VM? The distributor’s? Who do you complain to?
More importantly, though, how do you find out that something is missing, without access to a test suite?
The emperor seems naked to me. That notion of compatibility seems suitable for Windows 98SE, or Solaris 2.6, but falls flat on its face in presence of a wide choice of configurations at the deployment stage.
In my opinion, compatibility is not a static property in time and space, it’s a process. A rapidly evolving environment requires a new approach to verifying compatibility: ‘auto-certifying runtimes’ that come with their compatiblity test suites allowing the customer to verify their integrity and specification compliance. *That* would be something worth talking about to customers to give them trust into compatibility of an implementation in their specific circumstances.
I don’t see that happening with Sun, though, and providing real, verifiable value to the currently pretty vague, unverifiable notion of compatibility, which is essentially a rather simple technical issue. I’m afraid that Sun will decide that handwaving and cute pictures are good enough for them and their customers, which would be unfrotunate.
cheers,
dalibor topic