Some thoughts about OpenJDK Constitution

Andy Tripp atripp at
Tue Oct 16 12:15:03 PDT 2007

Here are some random thoughts on the OpenJDK constitution.

I assume you're way ahead on this, but using the
OpenSolaris constitution as a starting point would make sense.

One thing that the constitution should be explicit about is the scope of
"the OpenJDK Community". From your first two meeting minutes, you seem to
be clearly headed towards covering just the OpenJDK implementation, not
other implementations or the Java development community in general.
Clarity on this in the constitution is needed so that later
you don't get stuck if confronted with
an issue where you have to decide between what's best for
the OpenJDK community and what's best for some larger community.

The constitution should specify the bounds of the JDK:
Is the TCK considered part of the OpenJDK?
Are licensing issues part of OpenJDK?
Is compatibility with other implementations considered part of the OpenJDK?

What will your relationship be with alternative implementations? For 
should you be having any discussions about Harmony at all? At what point 
would IcedTea
be considered a part of the JDK? Will you support the interests of 
OpenJDK only,
or also other implementations? For example, suppose you need to handle a 
dispute or a
request that involves an alternate implementation; would it matter 
whether that alternate
is Harmony, Classpath, or (a not-yet-merged) IcedTea? Or suppose you 
need to choose
between two competing implementations for a new feature, say one from 
Sun and one
from IcedTea. What would be the guiding principles for choosing?

What will be your stance be on "Open Source" and "Free Software"? I 
noticed that
in your first two meetings, you often talked about "open source" but rarely
about "free". The OpenSolaris constitution mentions "Open source" and 
the OSI,
but never "free software" and the FSF. The easy answer is "we're both", but
what if some issue comes down to "that goes against what Free Software 
is all about"?
Is Freedom a goal? For that matter, assuming that "Open Source" a goal, 
should that
be stated in the constitution? And if stated, should you specify
that OSI compliance is a goal, do you say something about "Open Source 
or just leave it ambiguous? The reason I bring this up is that if you 
look at the current
TCK/Harmony issue, you might find that it comes down to whether to 
follow the
spirit or the letter of "open source". Better to get the GB all on the 
same page
of guiding principles right off the bat.

What will the relationship be between the GB (and OpenJDK in general) 
and Sun?
The OpenSolaris contitution simply says that their GB is the "official 
liaison" to Sun.
I think this may be too vague. For example, if OpenJDK decides on a 
change, but the
Sun employees can't or won't make the change, what happens? What's the 
between the GB/OpenJDK and the JCP?

Will there be any mechanism to avoid "ballot stuffing", for both the GB
and the groups, such as Microsoft just
did with OSI for OOXML? What's to stop one company from adding
a few hundred JCP members and controlling the JCP elections and the GB?

I'm surprised that the OpenSolaris constitution says nothing about 
overall principles.
I think it should state some guiding principles, such as:
* The ongoing maintenance, enhancement, and viability of OpenJDK
* Increased community participation in OpenJDK development
* Collaboration with alternative implementations (or not)
* Collaboration with ports of the reference implementation (or not)
* Adherence to principles of Open Source and/or Free Software (or not)

Finally, you say the GB will be both a legislative and a judicial "branch".
But I haven't seen what "laws" or rules the GB would be creating, so I 
see how it's legislative. Will the GB have any role in creating rules, 
or is
it strictly for settling disputes?

I hope you find these thoughts useful.
Thanks for making the process open, and good luck with it.

Andy Tripp

More information about the gb-discuss mailing list