James Gosling of Java fame answers recent charges against Sun. Even more interesting, he has directly addressed Miguel de Icaza’s assertion that Java is just as encumbered as .Net by pointing out that Sun has offered a patent grant to anyone who wishes to implement the Java specification. Update: Havoc Pennington of freedesktop.org/Red Hat/Gnome fame replies to Gosling.
Makes solid sense on all fronts.
Thank God Sun is not abandoning Java in any way and have not sold themselves into the hands of the Evil One.
Go Sun – I believe you. Surely, I expect the Java programming language to grow to a further position of strength in the near future.
Gosling, thanks for putting my mind at ease.
Agreed. It was very well argued.
I know there will be some later who will probably complain about his take on the GPL, but what he said was reasonable. A license which requires one to subscribe to a certain political view isn’t completely free, is it?
Not to say it’s completely bad, either. GPL products, Java, and software released under other licenses, such as Perl, are a wonderful gift to all end users like myself. I’m grateful for all of it.
But each person who creates is entitled to release thier product under any terms they want; holding on to that aspect which is important to them: recognition, political stance, purity of the platform, or financial reward.
From article:
Unlike GPLd software, the Java sources don’t come with a viral infection clause that requires you to apply the GPL to your own code.
That is definatly noy true. Code compiled under gcc does not even have an inklining to need to be under the gpl. If you write code for use in the gcc then, yes it needs to be udner the gpl. But how is that worse then Suns’s JDK where you can’t write code for us in it?
Also, somehow claiming that the GPL has somekind of ‘hidden political agenda’ is complete FUD. When have any of RMS’s political agendas been hidden?
We believe that for a developer who has built a Java application they have a right to trust that when some other developer says “I have a Java VM for you to use”, that their application will work.
This is also FUD as he (deliberatly?) confuses the difference between a number of matters.
1) trademark
2) language standard
3) development model
Having the development model of the JDK Open/Free does not affect Java’s control over the language standard or the trademark of Java. If Sun’s JDK was under a Open/Free model, then it is true that forks could sptrout but:
1) Sun could still mandate that you can’t call it Java unless it follows a very strict set of guidlines. (simmilar to what they have now) They could make the guidlines even stricter (so, for example, all implementation specific iterms fo into java.not-portable.{platform name})
2) Does not affect the fact that they still control what is java and what is defined in the spec in the next version.
Second, having the language specification standerdized, like MS did for C#, and like most popular things (X/HTML, XML, and many more) does not affect the development model of the JDK and dosn’t mean that they have to open source thier product. It just means that people who try and develop competing products dont have to work on a black box with bad documentation. Infact, it will only help people be more java compliant, which he states is what sun wants!
Third, lets look of some examples of simmilar platforms:
1) POSIX/UNIX – Many implementations, a number of specifications that people can follow. The specification had some holes and is not really up to date with recent additions so there are incompatabilities, but with the basics a program that will compile on SUN on SPARC64 will work on an i32 with Linux or BSD.
2) cPython/Jython/.. – Multiple implementation, a single specification, but there is no strong mandating here that a Python compatbtible VM will be 100% compatible (even though, from my understanding, Jython will run any Python code from 2.1 perfectly)
3) Linux – Many forks in many areas, and no strong mandating, but that is what made it so popular. Due to the large amount of forks, many of those improvements in the forks went back to the core of linux (such as selinux, and so forth).
There are quite a few more examples, but those are the three that I think are the most dominant.
[continuation]
Please let me just clear up one thing. I dont feel that Sun is required/obligated to become open source (not necceserally GPL) but his answers leave a great deal to be desired and don’t seem to address the main issue that everybody has been asking Sun for. For example, he dosn’t really state why an open license is bad for sun (Except for half a paragraph which I explained above why is not 100% correct), instead he attacks GPL. Ok so don’t use the GPL. I agree it is not the end all of open/free licenses. Use an open/free license that does fit your needs.
From License link:
Text printed on recycled and acid-free paper
(is my monitor really acid free?)
Also, somehow claiming that the GPL has somekind of ‘hidden political agenda’ is complete FUD. When have any of RMS’s political agendas been hidden?
Go back and read the article. He didn’t say a hidden political agenda, he said a strong political agenda.
Second, having the language specification standerdized, like MS did for C#, and like most popular things (X/HTML, XML, and many more) does not affect the development model of the JDK and dosn’t mean that they have to open source thier product. It just means that people who try and develop competing products dont have to work on a black box with bad documentation.
Now why the hell would Sun want to make it easier for somebody else to make a competing product? Same thing for MS – people just expect them to open up the file specs so that competitors can incorporate MS file formats into their own products. Maybe it makes ethical sense, but it doesn’t make a whole lot of business sense.
Personally, I think the OSS community needs to quit bitching and whinning about what Sun is doing. If they don’t like the Java license, then let them build their own damn VM and shut up already.
The GPL is the GPL now and ever.
Sun, its employees and their software licenses won’t be the same forever.
And if Java is so free, why the hell the linux distributions aren’t allowed to freely distribute Sun’s implementations of J2SE and J2EE ?
<p>And if Java is so free, why the hell the linux distributions aren’t allowed to freely distribute Sun’s implementations of J2SE and J2EE ?</p>
<p>There is only ONE reason. Java is not GPL.</p>
<p>Otherwise any Linux distro can bundle any of the Java stuff.</p>
<dewd>
and if java is so free why the ____ the linux distributions aren’t allowed to freely distirbute Sun’s implementation of J2SE and J2EE?
</dewd>
The problem is not with Sun but with the GPL. Because Linux is GPLd, you can not bundle Sun’s JVM/JDK in a Linux distro.
Why is the FOSS community (RMS, Raymond, et al) crying out against Sun to “open source” java. As Gosling pointed out, Sun is not keeping anyone from developing an open source implementation of the JVM/JDK.
The real question is, why aren’t RMS, Raymond, and co. pleading with Linus and co. to release Linux under a less restrictive license than the GPL? Why not “free” Linux under a _truly open license_? (e.g. Apache, CPL, or BSD)
<gosling>
He has his own rather peculiar definition of “Free” that I think violates the First Law of Thermodynamics
</gosling>
Very VERY good
I followed the link and read the copyright thing. It looks like if you don’t have everything they specified, they don’t grant the licence. It also requires that you pass the tests. Are the test free?
Thanks, even though it’s hard to believe.
java can’t be bundled with linux distros because it’s not GPL?
so what about apache? apache isn’t GPL. yet every linux distro in recent history has it
And what about the Sun Java Desktop System ?
Now why the hell would Sun want to make it easier for somebody else to make a competing product?
How is the community building upon and improving[1] Sun’s JDK to make Java a more powerful, featureful, standardized language considered ‘competition’?
How many of the ‘competition’ in the Python/Perl/Ruby arena were made from copied code? (note that CPython and Jython are implementations and thus not competing since they both adhere to the specification)
Sun does not make it’s money by providing the JDK! They make money by the things that lie on top of the JDK. Also, by open sourcing thier implementation of the JDK its not like they dont have the last say of what goes into Java the specification and Java the de-facto implementation.
Personally, I think the OSS community needs to quit bitching and whinning about what Sun is doing. If they don’t like the Java license, then let them build their own damn VM and shut up already.
You are missing the point, arn’t you? People (IBM, not slashdot trolls) arn’t saying make Java open because it will be beter for themselves. They say make Java open because it will be better for Java (which will be good for Sun which will be good for Java and so forth).
Another thing is the competition with dotNET. dotNET is an amazing platform on many levels that Java dosn’t have (such as the hard work MS put in for the CLI it to be compatible with as many language implementations as possible). By making Java open, any advantage that dotNET has becomes negated due to the huge advantage that an Open Java will have. Open languages are more popular by definition of them not being tied completly to a company.
Also, currently the FOSS stack is becoming more and more popular (BSD or Linux kernel, Apache web server, and so forth). By making Java open, it automatically gets added to the stack, meaning that distributions like RH can descently support it (by backporting patches if needed and so forth), and companies using the FOSS stack from enterprise distributions can automatically use J2EE for thier buisness model. Otherwise, why shouldn’t they use mono instead, which is free’er and currently has a much better chance of being supported by the FOSS stack?
(dont tell me how its tied to MS, since mono’s library stack, like Gtk#, is independent of MS’s one, like Winforms. Furthermore, mono would still be an amazing platform, even if it were to stop supporting the MS library stack tommorow and would completly MS free)
I can continue to state more and more reasons for why it would be good for Sun to open Java up. What most people are complaining about is that Sun has not given any real satisfactory answer as to why they don’t want to open it. Nobody is forcing them, but that dosn;t mean people can;t try and convince them to what they believe is the correct decision for them to better themselves.
[1](such as the aio and generics code, that from my understanding was mostly pushed by community written code)
Apache: It has a GPL compatible license.
The issue is not that you *can’t* bundle the Java stuff. It’s Linux distros won’t bundle it because of its license. This is where even I get muddle on the why’s and wherefor’s. From what I read on Debians site it is strictly a licensing issue.
I would settle for it just being an option to install during setup. That is choice.
I think that’s because the Java license forbids you to distribute both Sun’s Java and other implementations. Since many distros distribute Kaffe or gcj, they can’t distribute Sun’s JVM. It’s just that.
> Apache: It has a GPL compatible license.
It doesn’t.
http://www.fsf.org/licenses/license-list.html#GPLIncompatibleLicens…
Isn’t that the current license? I think the prior ones were.
Bob said:
Isn’t that the current license? I think the prior ones were.
I used to think so too, but it never has been, actually.
It’s gpl compatible. (couldn’t resist)
Apache is not gpl compatible and has never been. They wanted to change thier license for 2.0 to be gpl compatible but due to a small ‘hiccup’ it might not be. This incompatability will, from my understanding, probably be fixed on the gpl side. (It has to do with an additions on patents that the gpl does not address but people agree should address)
The reason distributions dont distribute Java isn’t because of it not being GPL but another reason (I am not sure why). For example, Mandrake, Suse, RH, etc.. do not distribute Java in the freely downladable version but they do in the version you buy. This could be somthing simmilar to the legal reasons they can’t redistribute the flash mozilla plugin (Which are due to the fact that it is illeagel for them, not because they don’t want to).
If Apache isn’t GPL compat then why are we not bitching and moaning at them?
Btw, Havoc Pennington of GNOME fame has bloged about this, might be an interesting read http://log.ometer.com/
Hi
Did you read the license. its actually x11. its also patent encumbered by microsoft. so just because you have the code doesnt mean its safe. now if you claim its rand i will tell you that rand means that you can charge for it and if you tell me its royalty free give me a link from the patent office or microsoft to prove it.
HP has given a very good reply. read it too
http://log.ometer.com/#13
Hi
“If Apache isn’t GPL compat then why are we not bitching and moaning at them?”
apache isnt gpl or gpl compatible for historic reason. as long as you dont want to develop gpl modules for apache its no use bitching about it
That they’re worried about what’s being said at /.
…and realize that “non-free” software which is “freely distributable” should be distributed, too.
I think I’ve said this a hundred times before on OSNews, but, here goes again.
I don’t see a clear reason why everyone (namely, Linux distributors) go crazy over sending out “non-free” free/gratis stuff. Yes, if you have non-free software there’s the possibility you could get “locked in,” but why does that assumption have to be made every time? Why can’t we use are heads? Sun has made it clear that Java will continue to be freely distributable. Why not distribute it, then?
The main reason, I think, is political, and stupidly so. I love the Debian project, but their rules for what gets put in official apt sources or not are frankly too strict. It’s clear that a TON of people use Java, and it’s clear that everyone who knows what they’re doing (in Debian, for example) finds an unofficial apt source for either Blackdown or Sun’s version. But why not just “cut the bullshit” and put it in official sources under non-free.
It’s all RMS’ fault. I’m not even being sarcastic. His license isn’t the thing that’s viral–it’s the flawed thinking that goes on in his big head! Let’s stop pretending all software will become Free, and stop trying to “convert” everyone to this “religion.” Let’s just get on the right track and get our work done, for crying out loud!
Hi
How do you trust SUN to distribute it freely for ever. If its going to free for ever why dont they open source it and hold the trademark to assure java compatibility. anything else cannot be called java. jvm can be licensed under lgpl. nobody has to pay anyone and every modification has to be distributed with source and noone else can call anything else java as long as SUN holds the trademark. what their problem with that. if they dont want to open source it they let them give valid reasons. why bitch about gpl and say that java is already open source when it isnt
read here
planet.gnome.org
regards
Jess
Of course they care what people say on slashdot! Those are thier future (or current) market. A bunch of microsoft (and therfore .net) hating developers (or technologically savvy cheerleaders).
Its the GPL that protects the ideas of libre software from being taken advantage by those who do not support it (ie. MS and the BSD net code).
First, ignore the slashdot trolls. There are MANY respectable programmers I know of that go to slashdot daily, and one even has it as his home page. They don’t post much, but use it alot for a break and as a convinient news source.
Second, the type of people that go to slashdot and other simmilar news sites are the people that will promote the technology to the management. Most of the current Java developers are people who learned it because that is what the market needed, because that is what manegmant wanted.
Third, this current topic is about open sourcing java. A topic that the 5 mil. java developers dont give a crap about. This is somthing that the ‘community of geeks’ (once again, not the trolls on slashdot, but the respectable geek developers that spend free time browsing slashdot and other such sites) cares about much more. Java is ‘losing’ in the ‘geek’ community, so this is targeted towards them.
Fourth, obvioussly, since not company cares about the slashdot crowd, that is why so many CEO’s and CIO’s of pretty respectable companies come and do interviews on slashdot?
Fifth, a difference of opinions is no reason to call someone a moron
Apache is not a big problem due to the fact that one does not need to link against apache when developing software which work with apache. Apache has been trying to come up with a GPL compatible liscence, and many at Apache and the FSF are committed to seeing this happen-but it has not been a siginificant issue up to now.
Java is a problem. If Redhat(or distro X) wishes to distribute Java they have to certify a) Java on that particular version of that particular product(which costs lots and lots of money) and b) certify that each and ever java application which is to be distributed with that particular version of that particular product work with the certified Java- an impossible task because Redhat does not write most of the software they distribute and cannot overtake stewardship for the many, many, many pieces of software they distribute.
Oracle can do this, BEA can do this, Microsoft could do this-chose not to and got sued, and IBM can do this- No Linux distributor can. Sun’s JDS can do this by virtue of definign which packages which it is going to distribute-JDS in not a “linux distribution” it is a collection of specific versions of specific Linux and FOSS tools which are specifically chosen to enable the “Java Desktop”. Sun has granted SuSE the right to distribute Java-Sun using a subset of SuSE 8.0 as the basis for JDS has certified SuSE to be able to distribute Java-for this particular version of this particular product…
I do wish that Sun would release Java under a true FOSS licensce-yet Java has not and probably will never be a prime candidate for desktop application development-it it was under a FOSS liscence we might see developpment in the IDE tools for Java which might enable it to become a primary candidate for such-but these are big, big if’s.
Sun is only open and free as regards their competitors-ie. Huge multinational corporations. For small, loosely knit development communities which are working in the FOSS world-Java is neither free nor open.
I suspect IBM will place one of it’s internally developed JVM’s under a FOSS liscence. IBM told Sun that if Sun would put Java under FOSS that IBM would deliver the code. Intel released ORP which works with the GNU classpath(mono is using ORP for Garbarge Collection). If IBM would release of their VM’s a number of things would happen-1) Eclipse with SWT support would become the FOSS RAD tool par excellence for Java. 2) The GNU classpath would rapidly be completed as well as Kaffe. 3) The ongoing work towards system wide GNOME introspection would reap real rewards, beyond simplifying the bindings of others languages 4) GNU classpath + Kaffee +ORP would compliment the freed IBM Java and command a compelling Java development environment.
The UNO work at OpenOffice coupled with introspection work both in GNOME-2.8 and QT 4 and a eclipse-based module for RAD for Mozilla and Mozillas new-found interest in Linux/GNOME promise really, really interesting things.
It’s a little disappointing to see Havoc’s response regarding Mono as an alternative to Java or this Python, XPCOM/UNO, GObject introspection homegrown stuff he’s talking about. He calls it a .NET clone trap. A trap? It’s only a trap if ECMA 335 and 336 turn out to not be RAND + Royalty free. Gnome doesn’t care about winforms, ASP.NET, or ADO.NET.
I wonder why he didn’t just call it Mono instead of using the phrase .NET clone. Well, at least we know where he stands regarding Mono.
After posting this, I’m going to do some research on XPCOM/UNO and see what’s it all about, but I know one thing it won’t make life for those of us who who want to leverage our .NET or Java libraries for cross-platform work any easier.
… is very simple: There is a paragraph in the license text in which you agree that if you ship SUN’s JDK/JSDK you idemnify each and every recpient of the software.
Obviously, no free software project has the resources to do that.
Oh, and btw: As far as I know, java (blackdown) is in the non-free branch of debian distros.
Regards
He calls it a .NET clone trap. A trap? It’s only a trap if ECMA 335 and 336 turn out to not be RAND + Royalty free.
But this is exactly the problem here. While i like the .NET framework, i can certainly understand why many OSS people are hesitant to use it. I have never seen a direct confirmation from Microsoft or the ECMA that the .NET ECMA standards are royalty free. This is what the ECMA published in one of their presentations ( http://www.ecma-international.org/activities/General/presentingecma.ppt ):
How Ecma deals with IPR Issues
Ecma does not assess the essentiality of patents
Ecma does not define the term “Reasonable and Non Discriminatory” (RAND)
Default precondition for acceptance as a member is that company’s declaration to offer RAND terms
Licences are not necessarily royalty-free
If contributing members do not accept RAND terms there are several options:
Ecma stops the project
Participants collectively buy the licence
Participants circumvent the patent
It clearly states that licences are not necessarily royalty-free. Miguel de Icaza and others say that the .NET license is royalty free, but afaik they have never provided any proof. Perhaps someone can provide me a document which confirms that the license is royalty free.
At Jess, I don’t know that Java will remain free. I am just 99.9% sure. How about this, if Sun starts selling Java, I’ll eat my shorts.
Second, what kind of FUD is it to say, “The reason Java needs to be open sources is that distros right now have to certify that it runs with every single piece of Java software.”
Where they hell does that come from? That has nothing to do with why distros won’t distribute Java. How would what you say above CHANGE with a GPL or LGPL license?
There have been suggestions that OSS developers should code extentions to Java and send them to Sun (Java already has a system for coding extensions which is widely used). There’s a way of respecting a companies licensing choice while still
contributing to the coding cause.
But everyone, please, repeat after me: this is a political issue, not a technical one.
<gosling>
He has his own rather peculiar definition of “Free” that I think violates the First Law of Thermodynamics
</gosling>
Very VERY good
Wrong !
Dr. Gosling may have a good understanding of physics but has not yet understood the application of thermodynamics to biology. Biological systems appear to violate the laws of thermodynamics because they are Open systems. The laws of thermodynamics only apply to Closed systems.
Open source works on a biological evolutionary model as suggested by Dr. Torvalds (he might only have done a masters but he has enough honorary doctorates like Dr. Stallman). Therefore the laws of thermodynamics do not apply to Free Open Source Software but only to MS and proprietary closed source software companies 😉
Yes, Royalty Free is really the crux of the whole matter. Supposedly, Novell lawyers are now looking at this issue. Novell should make a statement regarding this issue before Mono 1.0 comes out (supposedly in June) so that people that have concerns and people that are thinking about targetting Mono can have these issues cleared up once and for all.
I think I’ll do a little bit of research right now to see if I can find any Microsoft statements regarding Royalty Free. Of course, I doubt I’ll be the one to find any legally binding documents regarding this, but I’ve never even seen direct quotes by any Microsoft representative regarding this and have relied on Miguel de Icaza’s comments concerning this.
>The laws of thermodynamics only apply to Closed systems.
Not true, no system can violate the laws of thermodynamics, if they do, or appear to do, it’s only at the expense of other parts of the system.
Open source works on a biological evolutionary model
Not quite. There is a mind or many minds behind open source.
But hopefully the best code does win, although I am not sure it always does
>>The laws of thermodynamics only apply to Closed systems.
>
>Not true, no system can violate the laws of thermodynamics, >if they do, or appear to do, it’s only at the expense of >other parts of the system.
No, you are wrong. The laws of Thermodynamics state explicitly that you have to be dealing with a closed system. In the example given, the earth is _not_ a closed system, as it recieves energy and matter from space. Therefore, the laws do not apply to it, and hence you can get biology that is more ordered (which does not break the 2nd law). The universe itself will still increase in entropy, but locally you will get a decrease in entropy.
My main problem with this statement is that he is using the laws of thermodynamics as an analogy to software development. I think that he is far off base with this. Note, he says that if things don’t balance out the the system falls apart. Why not invoke the 2nd law and state that energy will always be lost (for this law states that you will never be able to break even!)? Becaue, software development is not a closed system and has nothing to do with thermodynamics! These laws don’t apply! FOSS is more like a self-organizing system (which locally don’t follow the laws of thermodynamics), where entropy decreases. By adding something to the community, you can reap benefits that are greater than your own contribution.
Dr. Gosling invokes this ‘law of science’ in the same manner that Social Darwinist invoke evolution: incorrectly and to back up there own preconcieved notions.
“In the meantime though, to me it looks increasingly like we need to go down the road of Python, XPCOM/UNO, GObject introspection, and other half measures; hopefully stay out of the .NET clone trap; and maybe in time create an open alternative to .NET and Java both. It’s a shame however, because Linux and Java are natural allies that could both be more successful in combination.”
From Havoc.
The more I think about it and the more research I do on this whole Python, XCOM/UNO, GObject instrospection thing the more I’m convinced that if they go this route it will probably seal the fate of Gnome as a modern, viable platform to do development on. Havoc, himself adds on to this hodpodge of technologies…”and other half-measures; to hopefully stay out of the .NET clone trap; and maybe in time create an open alternative to .NET and Java both” “Maybe in time”? ROFL. What…in 20 years?
Ok, fine Havoc, we get that you hate .NET/Mono/Dotgnu. But it’s ridiculous to think that Gnome hackers will come up with a viable alternative to all the work that has gone into Java and Mono within the next 10 years is absolutely ridiculous. Parrot was started before Mono and its still years off from being production worthy.
I’m thoroughly convinced that Java or Mono are the only reasonable solutions for an official Gnome runtime. I would vote for Mono, but if that’s not the case then you have to go with Java. With attitudes like his it’s no wonder that KDE is so far ahead of Gnome as a development platform.
I guess I’ll go emerge kde.