If you didn’t see it, RedHat announced earlier this week that their completely Open Source Java implementation (IcedTea) had finally passed the Java Test Compatability Kit (TCK).
While most folks rejoiced, I think there were a fair number of us that sighed and thought: Goddamnit, here’s the beginning of the Java fragmentation.
Or if that not, were at least sufficiently annoyed at two such large significant and completely parallel efforts. Well I suppose Linux did this for 20 years and look at the incredible market-share that has given it for a billion-times the man-hours of development that has gone into Linux distro-dev across the board compared to Windows or Mac.
Today we get the news that Sun is right around the corner with releasing their own completely free Java implementation (after Open Sourcing or replacing encumbered code). Now that is actually good news, but I have to imagine that RedHat’s announcement pushed that schedule up.
I know there are folks reading this that think “The more the merrier” and more folks that figure “How can open sourcing all this code be bad?”, when it was the GCJ or the Apache Harmony project, I didn’t really care. Neither of those projects had significant distribution capabilities and most folks would need to use them by choice if they wanted… neither were likely going to get significant footholds, especially in business deployments. But this time, it’s freaking RedHat… you know, the company that sells server solutions to companies.
RedHat isn’t going to abandon this IcedTea project anytime soon, not after all the money they pumped into it… so that means going forward, Fedora and RHEL are going to ship, out of the box, with an almost/mostly/kinda/sorta/ok/maybe-not 1-off version of Java that is just good enough and just compatible enough and, oh yea, covered in RedHat’s support contract with it’s customers that people will begin deploying to it. I’m guessing at least one other significant distro will pick it up and ship it as well.
NOTE: I’m happy IcedTea passed the TCK, but still expect a significant amount of differences between the platforms in hard-to-debug places that you only notice when your app starts behaving differently after a week of runtime… you know, those bugs that make you want to kill yourself.
To clarify, it’s not that I’m anti-Open Source or anti-RedHat or anti-Sun, I’m just insanely frustrated at the wasted resources and duplicated efforts to copy each other instead of actually providing solutions to developers… to make our lives easier.





















June 28th, 2008 at 12:43 am
hmm,
but as a developer myself i wouldn’t be too worried.
when am coding for java am doing so for “Sun Java” not IcedTea.
They have such different names for a reason.
it’s like what happened to #C and C++
But the main culprit is Sun, they decided to open it up, but not open it the “right way”…
Both of them are big companies, so am sure they’ll resolve their differences soon enough.
just take the recent example of Mobile linux uniting to avoid fragmentation also:
http://www.infoworld.com/article/08/06/26/Mobile_Linux_groups_join_forces_1.html
i think that news made all of us happy
it’s a big win i believe, what you think Riyad?
ps. My old pc broke and i lost all my feeds lol
it’s good to be back , i have to get updated on your blog(s)
June 28th, 2008 at 12:44 am
oh and i love the new theme colors, easy on d eyes
June 28th, 2008 at 12:54 am
Manny,
Great to have you back, and sorry to hear that your PC broke… that’s never fun.
As for opening Java, I ended up writing this article for JavaLobby on the topic after I made this post:
http://java.dzone.com/news/suns-open-source-java-right-ar
There were a lot of noisy answers but one in general, that actually resonated what you said, was by John Franey that pointed out something similar… saying that there are actually safe-guards built into the community (like the TCK, GCJ test suite… Muad or something? I forgot the name, and also all the apps that are out there… like NetBeans, Eclipse, etc.) that implicitly define what “Java” is and will force any implementation into a compatible arena.
I’m still a little concerned about what a big commercial entity might try and do with Java, especially when they own their own implementation of it… *but* I do feel better about it in the long run after reading a lot of that feedback from the readers. It will help expand/define the language in a more broad sense.