""Sun CEO Scott McNealy has finally answered the long awaited question that has been on the minds of open source and Java developers. Will Sun open source Java? No. He stated today that Sun sees no solution solved from open sourcing Java that isn't already addressed." "

Probably it will take another year until the topic comes up again. Maybe the situation will have slightly changed by then. My hope is that Sun will support Open Source implementations of Java (which means not to stand in their way). The clear answer from Sun has a good side, because it probably motivates the people working on free Java implementations.

Maybe I just missed something, but does Sun now stand in the way of free open source java implementations? I didn't think so.I also think the open source java discussion is mostly a political thing. Although I respect IBM's attempt and I would have liked a different outcome, seeing Sun actually did a pretty damn good job at delevoping the java standard, I don't think Sun's decision is a bad one.

Sun has moved to a new license the Sun Community License, like the GPL it is a viral license, but making all it touches subject to Sun licensing fee. The SCSL even goes so far as to define any implementation of a Sun specification as a "Modified Work". Basically, this means that if you implement any part of the new 1.2 API or Jini API, even from scratch, Sun will "own" your implementation and you will have to pay them for the right to use it.

13. "Modification(s)" means (i) any change to Covered Code; (ii) any new file or other representation of computer program statements that contains any portion of Covered Code; and/or (iii) any new Source Code implementing any portion of the Specifications.

5.3.1.3 What is the SCSL?

The SCSL is the "Sun Community Software License" that can be found http://java.sun.com/communitysource/. It is not compatible with Free Software for several reasons, and agreeing to this license (e.g. by downloading source covered by the SCSL) will make it impossible for you to contribute to free software clean-room implementations. According to Sun, this includes using documentation and API specifications available only under SCSL.

To quote one open source developer, the SCSL is "about as free as the former Soviet Union".

However, if you have never agreed to the SCSL, then it is still permissible, barring any patents that Sun has for the technology, for you to create your own clean room version of the 1.2 API. It is important that you never agree to the license, even for the documentation. For example, if you buy a printed book which describes the API, there is a long legal history (in the US at least), that prohibits attaching these kinds of contracts to books.

5.3.1.4 Can I use jdk1.2 while working with the free Java implementations?

Clause 1 of the Supplemental License Terms says:

[You] may not create, or authorize your licensees to create additional classes, interfaces, or subpackages that are contained in the "java" or "sun" packages or similar as specified by Sun in any class file naming convention;

Which seems to prevent one from making his own implementation of the standard Java classes using the JDK.

However, it is unclear whether or not the word `additional' includes reimplementations of existing classes, or whether it applies only to classes with new names.

5.3.1.5 Why is (some) free software not implementing Java2?

Sun has made public statements in connection with their legal strategy in the Sun-Microsoft lawsuit that indicate that the company considers the published specifications of Java2 to be intellectual property that can not legally be used by persons involved in efforts to create Java2 clean-room implementations. For this reason, some open source projects have decided to not implement Java2 any time soon. One example is Kaffe. Some projects (like the Japhar/Classpath project) have decided to challenge Sun's legal position and are going ahead with Java2.

Classpath is _the_ effort to implement the Java libraries. Especially interesting is 1.4:

Quote

1.4 What do we need to make Java free?

Though it would be helpful if Sun would open their sources, this is not the most important step toward a free Java. Even more important for a free Java are:

* Access to the TCK (Technology Compatibility Kits) on acceptable terms * Involvement in the JCP without contamination or other unacceptable constraints * Easing of the requirements on subsetting. The free software community doesn't work well with the "one big perfect release" model that Sun seems to want.

That seems to totally block any open source implementation, doesn't it?

The last statements of Sun were, that anyone is allowed to do an Open Source implementation. However if Sun changes their opinion, there could be legal problems. As a prerequisite the developers must not agree to the SCSL (classpath hacker's guide). If there were no legal problems at all, we'd already have more complete Open Source implementations (kaffe&co already exist for a long time). However in the past months classpath made quite some progress, so I'm not to pessimistic.

The bar on changes within the java/javax heirarchy seems to block Open Source implementations (note capitals). Otherwise there are significant but not impassable barriers:a) All developers must not have seen any of the Sun implementation.b) The inadequacies of the published API documentationc) the sheer size of the project (bearing in mind the ban on subsetting).d) Cost of approval testing

The last statements of Sun were, that anyone is allowed to do an Open Source implementation. However if Sun changes their opinion, there could be legal problems. As a prerequisite the developers must not agree to the SCSL (classpath hacker's guide). If there were no legal problems at all, we'd already have more complete Open Source implementations (kaffe&co already exist for a long time). However in the past months classpath made quite some progress, so I'm not to pessimistic.

And that is the exact reason why Java needs to go standard body before anything serious can happen.

The bar on changes within the java/javax heirarchy seems to block Open Source implementations (note capitals). Otherwise there are significant but not impassable barriers:a) All developers must not have seen any of the Sun implementation.b) The inadequacies of the published API documentationc) the sheer size of the project (bearing in mind the ban on subsetting).d) Cost of approval testing

Yes, that's correct. Nevertheless there are quite a number of people working on it. This shows, that there is a need for a modern and powerful Open Source object orientated general purpose programming language.

The bar on changes within the java/javax heirarchy seems to block Open Source implementations (note capitals). Otherwise there are significant but not impassable barriers:a) All developers must not have seen any of the Sun implementation.b) The inadequacies of the published API documentationc) the sheer size of the project (bearing in mind the ban on subsetting).d) Cost of approval testing

a) ah, well, who's gonna proove you've seen the impl? Just as long as it's not too obvious and it is your own code, I don't see any harm in just looking how sun did it.b) dunno about that, what inadequacies for example?c) yeah, I suppose it's not a walk in the parkd) iirc, a sun person mentioned here they sometimes help out with that, which seems to imply they are not at all *against* OS, they just seem very defensive for their baby

The really big problem is the Open Source advocates demand to be able change anything they like. In my opinion this demand is excessive and unreasonable. Especially as in the case of Java you can add whatever you like to packages in your own namespace (i.e. not java or javax). I and many others like the fact that to change the language or the core packages you have to get your proposal through the JCP process.

The really big problem is the Open Source advocates demand to be able change anything they like. In my opinion this demand is excessive and unreasonable. Especially as in the case of Java you can add whatever you like to packages in your own namespace (i.e. not java or javax). I and many others like the fact that to change the language or the core packages you have to get your proposal through the JCP process.

I don't think it is too unreasonable for Sun to stop calling technology that has been written 99% in C++ as "Java technology"

Why did Sun introduce JCP instead of FSF or GNU? It is, because Sun's intention is no where near close to Open Source. They want more control and control is the reason why true Open Source can't happen. JCP is Sun driven and eventually Sun has the biggest word in it. If they want that some project gets canned, they get it canned.

This is where JCP goes wrong

Quote

Q: Does it cost anything to be a JCP member? Why?A: The JSPA carries a nominal fee to cover administrative costs:

a) ah, well, who's gonna proove you've seen the impl? Just as long as it's not too obvious and it is your own code, I don't see any harm in just looking how sun did it.

I seem to recall you also cannot have agreed to the SCSL. For example, I think to download a couple of Sun (source only) products in the past I've had to sign up and agree to (I think) the SCSL. That would strike me out as a starter, because I've been 'contaminated' for doing that sort of Open Source work.

Quote

because Sun's intention is no where near close to Open Source.

How do you explain OpenOffice.org then?

Personally, I'm hopeful that market conditions, and community pressure will eventually force a turn around in Sun's thinking. If they want 10 million Java developers, they're not going to get to that level by developing high-level tools for the drag-and-drop programmers of this world alone. They'll need to target different market segments as much as possible -- and OS developers are a fairly large market segment by all accounts.

I'm actually starting to understand why a Merril Lynch analyst wrote an open letter calling for a more toned-down Sun CEO. When you make a cocky statement like "open souce has never known a better friend than Sun", you better make damn sure that a big competitor like IBM can't challenge you on it and force you to back down.

The source-code licenses are the GNU General Public License and the Sun Industry Standards Source License. The document license is the Public Document License.

AND OPEN OFFICE DOES NOT NEED JRE TO BE INSTALLED TO RUN.

kthx, problem solved.

But that's not what JasonB's getting at, at all. The facts are that Sun is currently developing StarOffice, at one point they donated the entire codebase to the OS community allowing them to produce OOo from it, and they migrate much of the technology that they've spent time and money developing straight into the current OOo builds. You cannot deny that Sun are very much involved in the Open Source world through projects such as this.

To give another example, Sun produced a number of APIs as part of the internal research/development of a JSR, and once they realised the OS world was a more appropiate place to develop them, they released them under the BSD licence. They still expend time and effort in improving the libraries, namely JOGL, JOAL and JInput.

Sun is attempting to boost the java gaming community by letting the users to develop the applications, because SGI is not going to give up to their(Sun's) selfish demands.

The problem is that Sun is not allowed to make 'official' OpenGL port, because Sun/SGI licences conflict. SGI does not let Sun to do what Sun wants to do. Sun wants direct control over the API. SGI does not want this to happen. Sun gets direct control over the Open Source community. Problem solved.

It is easy to explain Star Office like this, too. Sun can't take advatange of toolkits like GTK. Users can. Sun does not want to develop own toolkits. Licence and copyright remains still at Sun. Problem Solved.

"Sun Open Source" is not charity. It is about boosting the competibility of Java without the tariffs to SGI. It is simply business.

You obviously don't know what you're talking about, or you wouldn't make a blanket troll like that.There are numerous definitions of open source (with or without the capitals), but charity isn't one of them. Just because the source has been made freely available does not mean it's a charity. MySQL is a good case in point. That's a company, not a charity, by the way.

It is a myth that all developers and software houses favour open source J2ME. In the fast moving mobile world, the main fear is of anything that slows down or confuses Java and so makes it less appealing to the operators. A quick look at the Java games development community site, java-gaming.org, shows that most phone-based games creators would prefer Java to remain closed, feeling that Sun's control results in a higher quality, more consistent platform (although the site is hosted by Sun, it does not moderate this forum).

Some representative comments include: "If this happened I'd probably never use Java for any more commercial projects. I have been a professional C programmer, and if I'm to go back towards that hell (the chaos of an uncontrolled mainstream language) then there are better languages to use. C++ as a value proposition gains a great deal (comparatively) if Java becomes yet another open source limp biscuit without standards and with-out control."

which came from earlier on this topic:

Quote

<opinion>If this happened I'd probably never use java for any more commercial projects. I have been a professional C programmer, and if I'm to go back towards that hell (i.e. the chaos of an uncontrolled mainstream language) then there are better languages to use [1]. C++ as a value proposition gains a great deal (comparitively) if java becomes yet another opensource limp biscuit without standards and without control.

- I can view whatever source code I need to in Java right now. When I had an issue with some RTP stuff, I got the source and looked it over to get a better understanding of what was going on.

- Open Source, as it relates to GNU and all the others, seems like more of a buzz word than anything useful. As I understand, its up to the creator/licensor to enforce the license. When's the last time you saw some poor dude who stuck his GNU license on code enforce it? How would this person even know if his licensed code had been modified/compiled into a commercial app? Why go through all the circles of stamping code with headers and such, if it never really gets you anywhere? I'm not advocating hijacking code, just stating what I see as the silliness of all this open source worry.

- I love learning from others and don't mind sharing either. If I make a commercial product, then I don't see the problem with keeping my hardwork my own. If I trust someone to show them my source, knowing they will learn from it - great. If I give somepeople my code for use in their commercial projects great too.

- Sun should keep trucking along they way they have. Having one distribution/access point to Java works. I don't have to go to downloads.com or rpmfinder.com or wherever for the latest versions for my platform. I like that consistency. I don't see where it benefits Sun to invest all the resources they would need to, to redo their licensing model and redo the way java is managed as a language.

- Open Source projects are great and I'm glad for them. Source forge and other sites are a wonderful resource both for apps and for learning. I don't think it means everything should be that way.

When's the last time you saw some poor dude who stuck his GNU license on code enforce it? How would this person even know if his licensed code had been modified/compiled into a commercial app? Why go through all the circles of stamping code with headers and such, if it never really gets you anywhere? I'm not advocating hijacking code, just stating what I see as the silliness of all this open source worry.

Off the top of my head, look at Mplayer (linux mpeg video/audio player). They have some long-standing issues with noticing commercial companies (even hardware manufacturers!) taking their GPL code without credit. Last time I checked, it hadn't been resolved yet, but could be worth watching if you're interested in such things (their case is fairly open and shut).

I went to the homepage of Mplayer and poked around to find some of the stuff you mentioned.

The only thing is, he isn't doing anything about it. Think of all the time and money he'll have to put in, just to enforce that the sources used with his have to be available. It really isn't worth it for him.

The only way it might be beneficial for him is if he could show that by not letting people view the source, it robs him of any recognition as a great programmer. This could harm his ability to work, since he wouldn't be as valuable to people. Ie - I'm a nobody programmer vs I'm the programmer who wrote app XYZ and it was used in blah blah blah projects.

Thats the only think I've thought was always goofy about marking all your code as open source for all time space and eternity. It actually puts more burden on you to enforce it.

One thing it also does for the people who abuse the original software is mark them as 'not nice people'. This could of course hurt them.

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org