“Sun today announced that Java Platform, Standard Edition 5 is now available for redistribution by GNU/Linux and OpenSolaris operating system distributors under the new Operating System Distributor’s License for Java (also known as the ‘Distro License for Java’ or DLJ). Developed in consultation with, and for use by, the various GNU/Linux communities, the new license allows distributors to ship Sun’s Java SE 5.0 Java Development Kit and Java Runtime Environment as installable packages for their operating systems.” At the same time, Sun also promised to open-source Java.
From the second article:
“Vendor asking for community input on how to balance open source with preventing fragmentation”
Open sourcing it is definitely not the answer for that. Sun is getting desperate it would seem.
Please don’t troll.
Firstly, forking (fragmentation) only works if people support the fork. People may have supported {Free,Open,Net}BSD, even DragonFlyBSD, but many other BSDs (not to mention versions of XFree86 under the new licence) have fallen by the wayside, and the future of some (PCBSD, DesktopBSD) is at best unclear.
Secondly, what is clear is that choosing the GPL is the best way to prevent forks. Yes, there are plenty Linux distros, but they all take the Linux kernel from the same codebase, GNU binutils from the same codebase, and so on.
Not trolling at all, I just really see this as a bad move for Java. Only time will tell though…it just seems as if Sun got a little bullied around by IBM, they should have stood their ground.
You have to keep in mind Sun said they would open source the code and allow Java to be freely distributed. They still retain control and direction of the design of java as a programming language since it is not GPL’d. So if you want feature XYZ and Sun rejects that request then you are out of luck.
Secondly, what is clear is that choosing the GPL is the best way to prevent forks. Yes, there are plenty Linux distros, but they all take the Linux kernel from the same codebase, GNU binutils from the same codebase, and so on.
That isn’t necessarily true. In fact, I don’t see how the GPL prevents forking at all. It seems to encourage it, just look at the hundreds of Linux distributions that exist. Not only are they different in what they package, many of them have different patches applied, etc. They may have the same sources for code, but that doesn’t mean anything.
In fact, I’m not sure how the GPL ensures that people will obtain it from the same source, when obviously, the different kernel patches they use often don’t come from the same source.
I think the correct thing to say is that the GPL is *one* of many open source licenses that can *encourage* a centralized project. However, I’m not aware of any that would actually *prevent* forking.
I think the correct thing to say is that the GPL is *one* of many open source licenses that can *encourage* a centralized project. However, I’m not aware of any that would actually *prevent* forking.
I didn’t say it would prevent forking, any more than DRM will prevent illegal copying. What I did say is that it is the best way to prevent copying, just as making code closed-source is the best way to prevent your algorithms being copied by someone else. But it’s still not impossible.
In fact, I don’t see how the GPL prevents forking at all. It seems to encourage it, just look at the hundreds of Linux distributions that exist. Not only are they different in what they package, many of them have different patches applied, etc. They may have the same sources for code, but that doesn’t mean anything.
I already addressed this in my post. Distros are *collections* of OSS, and as such they can differ in their choice of what goes into the collection. Yes, I know many distros do submit patches to GPL’ed programs and such (Gentoo and SuSE being two of them which I use), but since they must be open-sourced, they can’t be “taken away” from the community in the way that, say, you can take FreeBSD, make changes to support your proprietary architecture, and keep the changes to yourself, such that (say) only your GUI can run on top of your architecture. Anyone who does so is in violation of the GPL.
I didn’t say it would prevent forking, any more than DRM will prevent illegal copying.
Actually, you did:
Secondly, what is clear is that choosing the GPL is the best way to prevent forks.
At the very least you implied that it would “prevent forks.”
I already addressed this in my post. Distros are *collections* of OSS, and as such they can differ in their choice of what goes into the collection. Yes, I know many distros do submit patches to GPL’ed programs and such (Gentoo and SuSE being two of them which I use), but since they must be open-sourced, they can’t be “taken away” from the community in the way that, say, you can take FreeBSD, make changes to support your proprietary architecture, and keep the changes to yourself, such that (say) only your GUI can run on top of your architecture. Anyone who does so is in violation of the GPL.
So then, wouldn’t *any* open source license with roughly the same terms as the GPL be just as good at “preventing forking” as you said earlier? Why the GPL? What makes it better than other OSI approved licenses with similar terms?
Because the GPL is, afaik, the only one which *requires* you to make your changes available. AFAIK all the others are more relaxed on this point.
Because the GPL is, afaik, the only one which *requires* you to make your changes available. AFAIK all the others are more relaxed on this point.
It isn’t the *only* one. LGPL, CDDL, MPL, etc. Unless you mean *all* changes, even ones that some might consider “derivative works.”
If you mean *all* changes, there are many licenses that have the same basic requirements of the GPL for modifications:
http://www.opensource.org/licenses/rpl.php
or the QPL used by Qt:
http://www.opensource.org/licenses/qtpl.php
the nethack license:
http://www.opensource.org/licenses/nethack.php
the Jabber Open Source license:
http://www.opensource.org/licenses/jabberpl.php
I could list more, but the point is that there are a lot of licenses that require *all* changes to be made available under the original license. The GPL just happens to be the best known.
Yes, I did mean all changes.
If there’s more than one like that, I stand corrected.
The GPL might be the best way of preventing forking, but IMHO it opens a totally different can of worms. What would happen to my code that was written and compiled by a fully GPL JVM? The compilation itself shouldn’t be an issue, but if the entire JVM was GPL’ed, that would mean that my code was linking to GPL’ed code, which would then require me to release the source code to my programs.
Unless I am mistaken in my interpretation of the GPL, using such a license would spell death for Java. Instead a different license like the BSD (very unlikely) or the LGPL (more likely) would be more suitable.
What would happen to my code that was written and compiled by a fully GPL JVM?
A JVM isn’t a compiler, it’s a virtual machine…
There already are GPL implementations of Java (GNU Classpath, gcj, Kaffe etc). The solution is to add exceptions that explicitly allow developing and running non-GPL code with it.
You do realize that the JVM is a JIT compiler, and as such it does compile bytecode to native code? Hence my original question.
While there are GPL implementations of the JVM I am free not to use them if I disagree with the GPL. If Sun releases their JVM under the GPL, where does that leave people who have no wish of touching the GPL?
“Vendor asking for community input on how to balance open source with preventing fragmentation”
they want to ask the linux community for input to prevent fragmentation? if that is the case. i thought they were discussions about the linux community being fragmented, and that was one of the problems for linux not being able to succed in the desktop.
Edited 2006-05-16 23:47
is this the same java that FreeBSD foundation had to pay a huge sum of cash to sun to have permission to redistribue it with the freeBSD os?
can you backup your “huge cash” claim?
can you backup your “huge cash” claim?
here you go, in the freebsd foundation site.
The FreeBSD Foundation
Profit & Loss
January through March 2006
Professional Fees
Consulting (Java binaries for 5.4 and 6.0 Project) 27,050.00
here you go, in the freebsd foundation site.
The FreeBSD Foundation
Profit & Loss
January through March 2006
Professional Fees
Consulting (Java binaries for 5.4 and 6.0 Project) 27,050.00
That doesn’t say that they paid the money to SUN, which you implied earlier. They didn’t pay for Java, they paid for consultation fees (likely legal ones). I’m not sure I see the connection.
as other reader noted, i see no “Sun” on this information.
Also, there is a posiblity that Sun has dedicated engineers for this port or providing support-consultancy to the FreeBSD engineers which may also not be free. Of course someone from FreeBSD developers can answer this question better.
The FreeBSD foundation would still have to pay to redistribute Java under this new license.
All Sun’s done is agree that x86 GNU/Linux distros (and OpenSolaris distros) may redistribute its binaries (which they were already doing, albeit in breach of contract).
AFAIK there are no distributions with Sun JRE / JDK on the install media.
However, they tend to have binary packages in their repositories, and this is actually legal.
Slackware ships Sun JRE on the install media.
Well done Sun! I think this is a great move. Make it very freely distributable will increase its popularity and allow many users to access a great many java applets and apps that are out there. Also it will make Linux a better development platform for Java purposes.
And the open sourcing of Java is also amazing because JEE 5 is a great step in the right direction. IT is very easy to use and it got developed and released very quick if I am not mistaken. This open sourcing I hope means that Sun will still have final control over Java but the process will be more open and thus Java will evolve quicker and better with many more features and advancements with input from other big java houses. I think this is a good news for Java fans and enterprise developers and a slightly bad news for the .NET platform.
Now Linux is complete!
Come to Linux and use the best development OS.
Correction:
Come to Linux and use the never ending beta version OS (always in development).
I thought that was Vista?
Now Linux is complete!
Come to Linux and use the best development OS.
it is a good os to learn software development and os design for a computer science student or anybody who wishes for free, but being the best that is a other story that can branched into.
Edited 2006-05-17 08:57
The linked article begins with:
“Sun Microsystems is planning to release the source code of the Java programming language …”
The same thing said on CNET:
<quote>the event won’t see developers get their hands on the source code for the actual Java programming language</quote>
From “Java inches closer to open source”:
http://news.com.com/Java+inches+closer+to+open+source/2100-1007_3-6…
<quote>Attendees to JavaOne will not be getting their hands on the source code for the Java language</quote>
From “Sun promises to open-source Java”:
http://news.com.com/Sun+promises+to+open-source+Java/2100-7344_3-60…
Correct me if I’m wrong:
The source code for Sun JDK/JRE – Sun’s implementation of Java – has been available for a long time under these licenses:
http://java.sun.com/j2se/1.5.0/source_license.html
Anyone can get the source immediately under those license.
So the issue here is not “release the source code”, but rather choosing a “Open Source” license for Java so that it becomes a “Free Software”.
( I am not a Free software zealot, just get tired explaining that the source code is already available. )
Yes yes, we all know it’s been available for a long time, but the old license is not an Open Source license.
In regard to “Free Software”, one must remember that “Open Source” is not necessarily “Free Software”, while “Free Software” always is “Open Source”.
Just as to correct a few details
They did so many stupid things to put interested persons away from it!
There are other interpreted languages today which are much better in every way.
But it’s good to have it distributed in Linux (Debian) !
No harm done.
There are other interpreted languages today which are much better in every way.
Like? …I remind you that Java is a language and an entire framework. Name one framework that is better.
OK. You are right but…
Python, Tcl and komodo (from ActiveState.com) do everything better *for me* (and many others), or do the same that Java does with less pain !
And it’s cross-platform.
And it’s faster than Java.
And it’s easier and simpler to maintain.
And you can find other Langs and Framework that are better and more efficient than Java for multi-purpose dev.
It’s just that Java has had a lot of ads and hype.
>>>
Python, Tcl and komodo (from ActiveState.com) do everything better *for me* (and many others), or do the same that Java does with less pain !
And it’s cross-platform.
And it’s faster than Java.
And it’s easier and simpler to maintain.
And you can find other Langs and Framework that are better and more efficient than Java for multi-purpose dev.
It’s just that Java has had a lot of ads and hype.
I don’t know what kind of work you do with either of those, but they don’t compare in any way to Java. Python is a nice scripting language but its in a different league.
I dont know if you noticed but Java is also cross platform and in NO WAY is Pythong or TCL faster than Java.
they don’t compare in any way to Java. Python is a nice scripting language but its in a different league.
No way is Python or TCL faster than Java.
Java is also cross platform.
Fast is fast, anywhere.
OK Java is on a different league, there is millions of Dollars backing it up.
(I don’t work for Sun or any other company).
Never seen popular aplications made with Java. Seen plenty with other Lang (Red Hat installer is made with Python, other Linux config tools also use it). Python doesn’t run on mobile phones like the Java Games do (they finaly found some use for the language
Java has been better on speed lately (2 years) but swing not as much.
I don’t want to get in a religious war here.
Regards,
–
I thought like you a week ago, but it seems java is a lot more popular than what a simple linux user would think. Java is like windows in the enterprise.
Look: http://www.dedasys.com/articles/language_popularity.html
I think I know (knew).
Sun sells a lot of hardware with solaris for enterprise level (like ISPs, Banking, …) and they (Sun) support Java integration and push it into the IT departments.
(Even the IRS online filling in my country has a Java web application, I always use the optional HTML version).
You have no clue what you are talking about. Moving along…
Well, make up your mind:
either,
1) There are other interpreted languages today which are much better in every way.
or,
2) Python, Tcl and komodo (from ActiveState.com) do everything better *for me* (and many others)
If the latter, then no comment.
you are not serious on those right? did you actually say Python and TCl is faster then Java? and easy-simpler to maintain for multi purpose dev? what are you smoking?
Python, Tcl and komodo (from ActiveState.com) do everything better *for me* (and many others), or do the same that Java does with less pain !
How much simpler can you get than Netbeans 5 and Studio Creator 2?
And it’s faster than Java.
Don’t mean to be rude, but this isn’t slashdot, you’ll need to provide a link to some numbers.
Considering that JDK 5 is competitive with C++ (and thrashes mono), I seriously doubt your claims:
http://www.shudo.net/jit/perf/
OK you people know. Suit yourselves with what you prefer, no problem about that.
Numbers would be like the cpu benchmarks, if you know wha I mean.
This page explains better what I meant:
http://www.ferg.org/projects/python_java_side-by-side.html
I have given up.
Long live Java.
How much simpler can you get than Netbeans 5 and Studio Creator 2?
Have you ever compared Java with Python code? Python is much simpler and more compact than Java. Python programmers can write a program off the top of their head. Java programmers have to resort to the documentation much more often because the language is so huge and verbose.
Don’t mean to be rude, but this isn’t slashdot, you’ll need to provide a link to some numbers.
Considering that JDK 5 is competitive with C++ (and thrashes mono), I seriously doubt your claims:
It all depends on what you are testing. Python is faster in some instances although I would say Java is faster overall. For example Java sucks at small apps because the VM initialization time is so much longer than Python.
Have you ever compared Java with Python code? Python is much simpler and more compact than Java. Python programmers can write a program off the top of their head. Java programmers have to resort to the documentation much more often because the language is so huge and verbose.
I wouldn’t say the Java *language* is huge. It’s quite a simple language (compared to say C++, or C# 3.0). I would agree that the set of Java class *libraries* for Java, and open source libs available is HUGE.
Python code is more compact, shorter, etc. but that is offset by the fact that Java has better tools support. Sure, the python code will be more compact, but there are many other factors to consider (vendor support, tools, number of classes and libraries available – don’t mind using docs if there is a richer set of functionality).
It all depends on what you are testing. Python is faster in some instances although I would say Java is faster overall. For example Java sucks at small apps because the VM initialization time is so much longer than Python.
I’ll agree Java startup is slower. A small Java app takes aboud 300 milliseconds (JDK 6 b82) to startup on my system if it is a warm start, but about 4 or 5 seconds for a cold start. Not the most suitable for small utility type apps.
On the other hand, if you focus too much on startup time, it’s a bit like saying DOS is faster than Windows, or that Access is faster than Oracle simply because it starts faster and uses fewer resources.
Python programmers can write a program off the top of their head. Java programmers have to resort to the documentation much more often.
I know most of the core Java APIs and regularly code in Java for days at a time without needing to refer to the docs.
Overall it’s really just a tradeoff between the terse syntax of dynamically typed langauges, and the raw performance of their statically typed counterparts.
I wonder what impact this will have with Mono? If this is done correctly then Java will be in a good position to bury .NET and Mono just might go with it. But I think this will hurt Mono much more than it will .NET …If Mono was poorly justified before I can’t see it go any further after Java is open sourced.
Tremendous victory for open source and extremely good news for Linux.
For those who use Java, it has always been a pain to have to navigate through Sun’s download pages, accept license, d/l the package and then put it somewhere your package manager can find it.
As for fragments, well no one uses the less popular fragments which eventually disappear from the community. Solution for SUN, maintain Java so it’s users continue to enjoy it.
When we see it!
Is the JVM(virtualmachine) coded in C++ or C ?
Gosling or anyone else know ?
JVM is C++ and assembler.
code is there, you can check.
Under Sun. don’t know if any C in there though.
http://www.research.att.com/~bs/applications.html
But you can’t modify and redistribute. Hope it will change soon.
I guess RedHat and GNU were doing too good of a job in making Sun’s Java implementation irrelevent. Most distros today now come with GCJw/Classpath(No thanks to Sun.) My guess is that this is a desperate attempt by Sun to keep its Java implementation (and Solaris) relevant. However, I think most people have already pretty much committed to making GCJ a real alternative. Shame on Sun always trying to fragment the open source community. First it was Solaris, then it was their Directory Server (versus Fedora Core Directory Server), and now it is Java. When will Sun show it is truly committed to opensource and actually opensource something the OS community has not already made irrelevent.
*scratching my head trying to understand your point of view*
Are you the same person who wrote:
http://www.osnews.com/permalink.php?news_id=14462&comment_id=119198
So Why so hard on Sun… ?
good catch. one word: bipolar
No, I am not (unless you mean Sun is.) I am just disturbed with the way Sun acts. If they want to be an open source player, be my guest. But please do not play the half-ass game (where Sun is half-ass open and half-ass closed.) Before all this, Sun said they will not opensource Java because it will cause fragmentation. That is their decision, their right and it is something everyone respected. Now, they have changed their minds. Now why is it that they changed their mind?
My concern with Sun is that they use opensource as a reactive measure. My challenge to Sun is to lead, not react. If you want to opensource Solaris, good. I love Solaris. If you want to opensource Java, better. I love Java even more. But I will beg Sun & co, opensource because you believe in your model. Please do not constantly react to everything to stay relevant. One time is ok (Solaris). Twice is a little fishy(their enterprise suite). Three times is outrageous(Java).
i am sorry if i offended, it was a joke, apologies for that word.
But i dont understand your last point here. why are you trying something evil on the changes in Sun? in the recent years basically they changed their strategy. it is perfectly ok for a commercial company to change their strategies. aparently in the OS arena they understood that it is difficult to live without open sourcing it. Same way, their enterprise suite was not selling they preffereed to open source it and focused on service.
The thing is, Java should be treated a little differently when subject is Open Source. it is being used by so many third party companies, open sourceing it should be done with extreme care, they cannot allow code to be changed without strict test and quality measures and i guess they feared fragmentation may break backward compatibility and VM or language may change in not so experienced hands. Also, being open source does not add too much vaue to SUn’s Java since code is perfectly downloadable and comunity contributions are already accepted by Sun. To me , All they need to do is to make contribution easier, provide version controlled source access and building much easier, thats it.
Not really true.
most people actually uses sun’s implemetation. Especially in servers, i dont think nobody actually uses Classpath and gcj.
Classpath, especailly GCJ still needs to mature. Java 5 is out for almost 2 years and GCJ does not support it (stable versions). also both of them are very slow comparing to Sun or IBM’s Java.
Sun does not fragment OS comunity, open sourcing Solaris or directory server is a bold move if you ask me. if something is better then linux kernel or Fedora’s directory server implemetation, just be happy that there is an alternative, instead of throwing meaningless crap.
If you program in Java, you’ll know that GCJ and Classpath are nothing much more than hobbies. Most (all?) large scale Java development is done using Sun’s JVM.
I’ve used the make-jpkg script to use 1.5.0_6 but now that Debian has it in Unstable I’ll have to see what, if anything is still missing. So far it looks like they’ve debianized the source tree under such intersting paths as /usr/lib/jvm. Of course it was all once under /usr/lib/j2sdk1.5-sun/
I don’t see the actual jdk-1_5_0-doc.zip which is an additional 44MB.
Java Platform, Standard Edition 5 is now available for redistribution by GNU/Linux and OpenSolaris
Of course, they are hoping that GNU distributions will stop shipping Classpath-based Java implementations, and ship Sun’s Java implementation instead.
Let’s hope the distributions resist this change until Sun’s Java is actual free software.
This could alter the linux distro map as we know it and the spark to set off the desktop as java 5 apps appropriately licensed can now be bundled ready to run.
Will it extinguish the LAMP is the question, it’s now competing with tomcat, jboss, jdbc etc.
Oh, and I admit the IBM DB2 does have a nice Java implementation …
Reading the license (http://download.java.net/dlj/DLJ-v1.1.txt) I see that Sun still doesn’t get it. Here’s a few points to consider:
1. If it’s even distributable with GNU/Linux (they only mention the Linux kernel in the license), it’s not distributable with any other free OS’s (besides their “OpenSolaris”).
2. It misses the whole point of open source and doesn’t allow you to modify the source and redistribute.
3. It leaves the door wide open for sleight of hand by saying that, “Subject to the terms and conditions of this Agreement, as well as the restrictions and exceptions set forth in the Software README file, …” (my emphasis).
All this new license does is supposedly allow you to package and distribute it with GNU/Linux. It’s just a silly trick to try and get distro’s to distribute Java instead of users having to download from Sun’s site. That’s it. Nothing to see here.
“Rich Green, Sun executive vice president of software, told InfoWorld open-sourcing of Java will happen at some point. “I think at this point, I think it’s not a question of whether, it’s a question of how,” Green said. “So we’ll go do this.””
Well I for one am kinda blown away at the moment. So many questions and now a few answers this year especially.
For those of you that have felt that IT was in so much flux these past few years, and almost felt like quiting; you’re not alone.
At this point because money isn’t the prime issue with Free software, it’s the strongest who survive, not the richest. Depends on what richness means I guess too. The Bible explains it in various ways. I’m not against money, but I think it’s more morphed into online transaction data, because, think about all that info we have now to know exactly what your customers are purchasing and how they purchase it, all the time retaining their privacy, we hope. It’s so much more informative then simple credit. As far as knowing what your customer wants, it seems better.
When you don’t ask for money you can demand more from your customer.
Forks???
How many people use Overclockix?
C’mon, there are about 5 top distros that are mainstream and then a few very quality Slackware spinoffs. To me that’s pretty healthy.
As a matter of fact with all the distros, none really seem redundant and the ones that are are at the bottom of the barrel.
Well, hmmmmmm. I really don’t know too much about Java but a decent amount about .NET. With .NET, when I was working with it, it seemed limited unto itself. Interop and stuff.
Is this the same with Java? Will Java not have that problem now? It seems like Java is very cross platform obviously when you can run it anyware unlike .NET and the Eclipse project seems to emphasize that. Now liberarting it, who knows…
Wild wacky future.
If I understand the implication correctly, this is great news for me. I have a Gentoo server (headless) that uses the Sun JDK, and currently updating means I have to:
– Identify when a newer version’s appeared in portage
– Attempt to download the package (fails) to get the URL for download
– Go to said page on another computer with a GUI browser (before anyone chip in, the Sun click-thru EULA page uses Javascript so Lynx is a non-starter) and download the binary
– If the URL is out-of-date because Sun update faster than Gentoo release ebuilds (this has happened more than once), forage around the site for the older binary
– SCP the binary over to the distfiles directory on the server
– emerge the package
– repeat all the above for the jdk-doc package
If the move means the days of these shenanigans are over, Sun will certainly have brightened my day.
/apologies for punnage
Will any of this help the native compiler implement the whole of Java 5? I like the language, but it’s just not practical to right small unobtrusive utilities when you need the jumbo/slow to startup JRE either bundled or assumed to be installed on the target PC.
Have you looked at the dependencies of GCJ compiled applications? Do an ldd of a generated executable and see all those libraries it links to. Is that going to be any smaller than just bundling the JRE with your program? Another thing people seem to be misinformed about is the assumption that GCJ will somehow speed Java up. It doesn’t. Ever tried running the GCJ compiled version of Eclipse? Try it and then you’ll run straight back to the Java version of Eclipse.
Will this allow the BSDs to distribute java now too? I realize that freeBSD has binaries now, but it is a major hassle if I want to install it on OpenBSD (enough of a hassle that I avoid it all together).
Will this allow the BSDs to distribute java now too? I realize that freeBSD has binaries now, but it is a major hassle if I want to install it on OpenBSD (enough of a hassle that I avoid it all together).
don’t know. but i would think so after java is opened sour,ce and since freebsd the the rest of bsds are also oss projects it might as well apply.
https://www.zarb.org/pipermail/jpackage-discuss/2006-May/thread.html…
The concern is about the license being too restrictive.
Hourra for sun, for many linux users, we wont have to maintain our own /usr/local/java-sun-jre-blah-blah… to avoid poluting the distro base.
Now what about GCJ and other? How do developers of these projects feel (like: “Oh shit, I have been doing all that while I could just have copy/paste most of it!”)? Not sure about the future of these projects also.