When the Sun goes down - what happens to the OpenJDK?

View: New views
9 Messages — Rating Filter:   Alert me  

When the Sun goes down - what happens to the OpenJDK?

by Volker Simonis :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Now that the Sundown is getting closer, I would like to start a
discussion about various formal and legal aspects of the OpenJDK
project. In the past years, since Sun has open sourced its Java SE
reference implementation under the GPL, formal, legal and
organisational aspects have always been somehow "pushed aside" with
the argument that establishing a running infrastructure and a vibrant
community has precedence.

This has manifested itself in various shortcomings in the legal and
organisation status of the project:

- the Interim Governance Board which was initially created on Tuesday,
8 May 2007 had the duty to create a OpenJDK constitution, organize
elections for a permanent Governance Board and dissolve itself not
later than the 7 of May 2008.
- after one year, none of the objectives were achieved so the Interim
Governance Board decided to take another year time. It will now be
dissolved on 7 May 2009.
- after some changes in the Interim Governance Board the GB decided to
extend itself from 5 to 7 members, however since this decision,
nothing has happend.
- the last available minutes from a GB meeting are dated from the 10th
of April 2008
- applying for the "OpenJDK Community TCK License" is still obscure:
one has to sign the SCA in order to be eligible but nevertheless Sun
still reserves one's rights to decide to whom the license is granted.

These shortcomings have always been hidden by Sun's apparent will to
act in a "fair" and "reasonable" way. The community has honoured this
and has finally believed Sun to "not be evil" (although this is
another company's slogan:)

But if Sun will be taken over by another company (whoever this company
may be), the question arises how this new company will act with
respect to the OpenJDK project. Some of the questions are:

- what about the signed "Sun Contributor Agreements" - will they still
be valid (ICA, OCA, HPCA, ... :)?
- getting an "OpenJDK Community TCK License" is already a complicated
and nontransparent process where Sun reserve one's rights to finally
decide to whom to grant such a license. How will this be handled in
the future?
- will there be a OpenJDK Community TCK License for forthcoming Java versions?
- what will happen to the "Interim Governance Board" and the "OpenJDK
constitution" after the 7th of May 2009?

Probably nobody will be able to answer these questions now and exactly
therefore I think that it is crucial for the future of the OpenJDK to
base the project on a more solid ground. One of the most important
aspects in my opinion is to somehow grant OpenJDK implementers a
permanent and irrevocable right to use current AND future TCKs in
order to certify their OpenJDK implementations as "Java compatible"!

What are your opinions and concerns?

Regards,
Volker

Re: When the Sun goes down - what happens to the OpenJDK?

by Andrew Haley :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Volker Simonis wrote:

> Probably nobody will be able to answer these questions now and exactly
> therefore I think that it is crucial for the future of the OpenJDK to
> base the project on a more solid ground.

Indeed.  It shows that more effort should have been made to do this,
but people at Sun have been very busy and there have been layoffs.
Even so, the work to fix the governance issue really should have been
done.  It's still not too late.

> One of the most important aspects in my opinion is to somehow grant
> OpenJDK implementers a permanent and irrevocable right to use current
> AND future TCKs in  order to certify their OpenJDK implementations as
> "Java compatible"!

A nice idea, but I doubt that'll happen.  As we know, TCK access has
always been Sun's most jealously guarded prize.

Andrew.

Re: When the Sun goes down - what happens to the OpenJDK?

by Mario Torre-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Il giorno mar, 21/04/2009 alle 10.41 +0100, Andrew Haley ha scritto:

> A nice idea, but I doubt that'll happen.  As we know, TCK access has
> always been Sun's most jealously guarded prize.

But now the risk of having to do everything from scratch, with an entity
that could have different goals and objectives than Sun, is high.

Oracle has some reputation of being unfriendly with the JCP even, so I
share Volker's fears, controlling the TCK could make it worse.

Also, I don't know how much experience Oracle has in handling big
Free/Open Source Software projects, but apart from contribution to
Apache and PHP I doubt they can be considered an "Open Source" company,
like Sun is from basically the very beginning. Of course, this will be
something that has to be managed by the same people that are working on
that at Sun (and this is valid for every other Sun product like Solaris,
NetBeans and so on).

Maybe it's time to try to have some sort of real foundation to drive the
JCP and OpenJDK, this could help with the TCK too. I would likely see
Red Hat and some other Linux distributors like Canonical to jump into
this.

Some words from the oracles would be nice to have.

Cheers,
Mario


Re: When the Sun goes down - what happens to the OpenJDK?

by Geir Magnusson Jr.-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Apr 21, 2009, at 6:23 AM, Mario Torre wrote:

> Il giorno mar, 21/04/2009 alle 10.41 +0100, Andrew Haley ha scritto:
>
>> A nice idea, but I doubt that'll happen.  As we know, TCK access has
>> always been Sun's most jealously guarded prize.
>
> But now the risk of having to do everything from scratch, with an  
> entity
> that could have different goals and objectives than Sun, is high.
>
> Oracle has some reputation of being unfriendly with the JCP even, so I
> share Volker's fears, controlling the TCK could make it worse.

I'm not sure what you mean here about Oracle.  (BTW, I think that  
Volker is *right on* in general)

My experience with them on the JCP is that they've been very  
supportive of openness and implementors having the freedom (not  
'Freedom') to do with their code as they see fit, a value that Sun  
provably doesn't share.

I have no real understanding of what they'll think about using the GPL  
going forward - they may leverage the downstream restrictions placed  
on users the same way Sun has in order to preserve the licensing  
revenue, but maybe not.  Either way, shouldn't affect this community  
that much.

My guess is that they are going to stop the silly games with the TCKy  
have it.  Oracle doesn't strike me as a company afraid of competing in  
a market.

>
>
> Also, I don't know how much experience Oracle has in handling big
> Free/Open Source Software projects, but apart from contribution to
> Apache and PHP I doubt they can be considered an "Open Source"  
> company,
> like Sun is from basically the very beginning. Of course, this will be
> something that has to be managed by the same people that are working  
> on
> that at Sun (and this is valid for every other Sun product like  
> Solaris,
> NetBeans and so on).
>

I think you are correct here, but as you say, they can keep the same  
people from Sun and start building their own experience in this area.

> Maybe it's time to try to have some sort of real foundation to drive  
> the
> JCP and OpenJDK, this could help with the TCK too. I would likely see
> Red Hat and some other Linux distributors like Canonical to jump into
> this.

While I agree that making both of those independent is a good idea, I  
don't want to link the two - JCP and OpenJDK - since I think that  
general ecosystem governance should be kept separate from the  
implementation of any spec, including the RI of one of the platform  
specs.

geir



Re: When the Sun goes down - what happens to the OpenJDK?

by Mark Wielaard :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Volker,

Thanks for starting this debate.

On Tue, 2009-04-21 at 10:53 +0200, Volker Simonis wrote:
> Now that the Sundown is getting closer, I would like to start a
> discussion about various formal and legal aspects of the OpenJDK
> project. In the past years, since Sun has open sourced its Java SE
> reference implementation under the GPL, formal, legal and
> organisational aspects have always been somehow "pushed aside" with
> the argument that establishing a running infrastructure and a vibrant
> community has precedence.

In general I do think that was a good choice given the limited
resources. Rules without people don't make a healthy community. But you
are right that it seems to have resulted in no progress on the
formalistic governance setup, which is indeed a little disappointing. On
the other hand we seem to have various publicly active people now around
the OpenJDK code base, not just from Sun, but also from various
different corporations and various individuals.

> This has manifested itself in various shortcomings in the legal and
> organisation status of the project:
> [...]
> - applying for the "OpenJDK Community TCK License" is still obscure:
> one has to sign the SCA in order to be eligible but nevertheless Sun
> still reserves one's rights to decide to whom the license is granted.

And more importantly, the TCK itself is still proprietary software
hidden behind an NDA which makes the community as a whole unable to
cooperate publicly on the compatibility story. We have to rely on good
Samaritans like Red Hat, which accept such NDAs and do testing behind
closed doors without full community involvement.

> - what about the signed "Sun Contributor Agreements" - will they still
> be valid (ICA, OCA, HPCA, ... :)?

According to the Sun FAQ there are no guarantees in the SCAs that in
case of a takeover an acquiring party will honor any transferred rights:
http://www.sun.com/software/opensource/contributor_agreement.jsp#r_5

Neither are there any guarantees that I can see in the OpenJCK agreement
that it won't be terminated after a year.

All the copyright, distribution and patent rights granted under the GPL
by any party (re)distributing the code base once distributed don't
terminate, except if you act in breach of its requirements for providing
full source code of course.

> Probably nobody will be able to answer these questions now and exactly
> therefore I think that it is crucial for the future of the OpenJDK to
> base the project on a more solid ground. One of the most important
> aspects in my opinion is to somehow grant OpenJDK implementers a
> permanent and irrevocable right to use current AND future TCKs in
> order to certify their OpenJDK implementations as "Java compatible"!

The OpenJCK license agreement doesn't grant you any trademark rights
(and I believe Sun claims to have a trademark on the phrase "Java
compatible"). As far as I know there is no public agreement granting
such trademark rights.

But besides naming I agree that we should make sure to get a some free
compatibility kit. The problem here is the JCP which grants Sun[/Oracle]
special rights with respect to the platform TCKs. Hopefully a JSR for
Java7 isn't accepted without making sure that the platform TCK is also
available as free software.

Of course the TCK is just a small piece in the compatibility picture. In
the end the jtreg suite, mauve and running real applications are
probably more important to guard the compatibility promise.

Cheers,

Mark


Re: When the Sun goes down - what happens to the OpenJDK?

by Geir Magnusson Jr.-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Apr 21, 2009, at 7:58 AM, Mark Wielaard wrote:

>
>
>> Probably nobody will be able to answer these questions now and  
>> exactly
>> therefore I think that it is crucial for the future of the OpenJDK to
>> base the project on a more solid ground. One of the most important
>> aspects in my opinion is to somehow grant OpenJDK implementers a
>> permanent and irrevocable right to use current AND future TCKs in
>> order to certify their OpenJDK implementations as "Java compatible"!
>
> The OpenJCK license agreement doesn't grant you any trademark rights
> (and I believe Sun claims to have a trademark on the phrase "Java
> compatible"). As far as I know there is no public agreement granting
> such trademark rights.

Sun has claimed all sorts of odd things over the years.  They can't  
complain if you say that "this software is compatible with the Java  
specification" if it passes the TCK.  The trick, of course, is getting  
the TCK :)

>
>
> But besides naming I agree that we should make sure to get a some free
> compatibility kit. The problem here is the JCP which grants Sun[/
> Oracle]
> special rights with respect to the platform TCKs. Hopefully a JSR for
> Java7 isn't accepted without making sure that the platform TCK is also
> available as free software.

I'm not sure what you mean.   The JSPA grants Sun an effective veto  
regarding "platform JSRs" (EE, SE, ME), but they have no special  
rights wrt the platform TCKs.  The platform TCKs are just TCKs, and  
the licensing of them must conform to the JSPA.  (see "fight, Apache  
and Sun, Java SE TCK" for more information :)

I'm all for TCKs being open source or "free" software, but I'm not  
convinced that it's necessary.  I can live with non-free/non-open TCKs.

geir


Re: When the Sun goes down - what happens to the OpenJDK?

by Mark Wielaard :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Tue, 2009-04-21 at 08:10 -0400, Geir Magnusson Jr. wrote:

> > But besides naming I agree that we should make sure to get a some free
> > compatibility kit. The problem here is the JCP which grants Sun[/
> > Oracle]
> > special rights with respect to the platform TCKs. Hopefully a JSR for
> > Java7 isn't accepted without making sure that the platform TCK is also
> > available as free software.
>
> I'm not sure what you mean.   The JSPA grants Sun an effective veto  
> regarding "platform JSRs" (EE, SE, ME), but they have no special  
> rights wrt the platform TCKs.  The platform TCKs are just TCKs, and  
> the licensing of them must conform to the JSPA.  (see "fight, Apache  
> and Sun, Java SE TCK" for more information :)

It probably depends on how you interpret JSPA 5.F.IV. which seems to
explicitly exclude Sun from all such legal obligations except for
offering a TCK separately (but under its own terms) from any RI. But I
agree that the JSPA is a twisted document that can be interpreted in
multiple ways. At least to this reader it seems to grant a lot of
privileges to Sun above and beyond any other participant. The current
setup of the JCP at least seems not ideal for free software community
participation.

> I'm all for TCKs being open source or "free" software, but I'm not  
> convinced that it's necessary.  I can live with non-free/non-open TCKs.

We clearly differ on this point. I think it is necessary and that
"compatibility through NDAs" is just nuts and hurts the community and
users at large.

Cheers,

Mark


Re: When the Sun goes down - what happens to the OpenJDK?

by Geir Magnusson Jr.-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Apr 21, 2009, at 8:59 AM, Mark Wielaard wrote:

> On Tue, 2009-04-21 at 08:10 -0400, Geir Magnusson Jr. wrote:
>>> But besides naming I agree that we should make sure to get a some  
>>> free
>>> compatibility kit. The problem here is the JCP which grants Sun[/
>>> Oracle]
>>> special rights with respect to the platform TCKs. Hopefully a JSR  
>>> for
>>> Java7 isn't accepted without making sure that the platform TCK is  
>>> also
>>> available as free software.
>>
>> I'm not sure what you mean.   The JSPA grants Sun an effective veto
>> regarding "platform JSRs" (EE, SE, ME), but they have no special
>> rights wrt the platform TCKs.  The platform TCKs are just TCKs, and
>> the licensing of them must conform to the JSPA.  (see "fight, Apache
>> and Sun, Java SE TCK" for more information :)
>
> It probably depends on how you interpret JSPA 5.F.IV. which seems to
> explicitly exclude Sun from all such legal obligations except for
> offering a TCK separately (but under its own terms) from any RI.

Right - I don't know the history, but I assume that Sun wanted to  
protect it's existing agreements that didn't conform, and any  
subsequent renewals.

It's hard to imagine that anyone involved with the exception of Sun's  
lawyers thought it should allow Sun to do whatever it wants forever.

> But I
> agree that the JSPA is a twisted document that can be interpreted in
> multiple ways. At least to this reader it seems to grant a lot of
> privileges to Sun above and beyond any other participant. The current
> setup of the JCP at least seems not ideal for free software community
> participation.

We are 100% in agreement.  The current model is awful - it's a "hub  
and spoke" network of 1-1 contracts between members and Sun, which  
prevents any party other than a court in California from having any  
standing or ability to mediate a dispute, as the ASF's battle for an  
unencumbered Java SE TCK license has shown.

>
>
>> I'm all for TCKs being open source or "free" software, but I'm not
>> convinced that it's necessary.  I can live with non-free/non-open  
>> TCKs.
>
> We clearly differ on this point. I think it is necessary and that
> "compatibility through NDAs" is just nuts and hurts the community and
> users at large.

I didn't say I like NDAs.  They should and must be abolished.  But I  
can certainly accept getting software that's non-free or non-open to  
use for testing, as long as it doesn't require an NDA  nor encumber  
the tested work with terms or obligations for the user beyond the  
license that I choose to use for my own work.

I'm a Mac OS X user that has an iPhone, remember? :)

geir


Re: When the Sun goes down - what happens to the OpenJDK?

by Mark Wielaard :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Tue, 2009-04-21 at 09:11 -0400, Geir Magnusson Jr. wrote:

> On Apr 21, 2009, at 8:59 AM, Mark Wielaard wrote:
> > On Tue, 2009-04-21 at 08:10 -0400, Geir Magnusson Jr. wrote:
> >>
> >> I'm not sure what you mean.   The JSPA grants Sun an effective veto
> >> regarding "platform JSRs" (EE, SE, ME), but they have no special
> >> rights wrt the platform TCKs.  The platform TCKs are just TCKs, and
> >> the licensing of them must conform to the JSPA.  (see "fight, Apache
> >> and Sun, Java SE TCK" for more information :)
> >
> > It probably depends on how you interpret JSPA 5.F.IV. which seems to
> > explicitly exclude Sun from all such legal obligations except for
> > offering a TCK separately (but under its own terms) from any RI.
>
> It's hard to imagine that anyone involved with the exception of Sun's  
> lawyers thought it should allow Sun to do whatever it wants forever.

Which is why you should always read contracts before accepting and
signing them. And if clauses are unclear, or could be interpreted
literally to say something like the above, even if you personally
believe the other party is probably "well intended and doesn't really
mean it that way", to get a clarification beforehand, not at the last
moment when the relationship has already tuned sour.

That isn't to say that I think Sun acted in a sleazy way. After GNU
Classpath/gcj/kaffe & friends were never allowed to get the Java SE TCK,
even after applying for the scholarship more than 4 years ago now [1],
we formed Harmony. And I do very well remember the confidence we all had
that the Sun/Apache relationship would finally make all this JCP/TCK
nonsense easier to handle and that alternative free java implementations
would finally be granted free TCK access for the platform
implementations. And that we GNU/Apache/Sun and friends would all work
together in harmony. We all know how that turned out.

It was probably naive to think something would improve without drastic
reform of the way the JCP is setup. You acted very brave trying to do
that from the inside, but I think it is finally time to do it from the
outside and make the code leading, now that most of the java eco-system
has accepted Free Software as the base of the java platform. Lets run
with the code and just make it happen without these JCP dark room deals
between big (proprietary) corporate interests. Especially now that,
through OpenJDK we have the core platform reference implementation in
hand as Free Software.

> I'm a Mac OS X user that has an iPhone, remember? :)

Yes, you are probably used to accept one-sides, proprietary, unfair
agreements then :)

Cheers,

Mark

[1] By our mutual friend Dalibor of course:
http://www.advogato.org/person/robilad/diary/64.html