Wednesday, 26 October 2011

Transparency in action

Some days I think I have infinite patience. Today was a day I was reminded that I don't.

Here is what Oracle said in the JCP submission for Project Lambda (November 2010). Interspersed is what has actually happened (non contentious points snipped):

2.14 Please describe the anticipated working model for the Expert Group working on developing this specification.

A publicly readable mailing list for expert group communication will be the primary working model.

The expert group mailing list is not publicly readable. This has effectively created a 'them and us' environment where no rationale can be seen and no real input can be provided.

2.15 Provide detailed answers to the transparency checklist, making sure to include URLs as appropriate:
...
- The Expert Group business is regularly reported on a publicly readable alias.
We intend this to be the case.

Expert group business has occasionally been reported to the public lambda-dev list. However, feedback could in no way be described as "regular". Today (the straw that finally broke the camels back of my patience) I found that the most likely syntax for method references was being touted in an IBM developer works article without any input from the main public mailing list at all - I'm sorry but you cannot talk about transparency and then ignore the only vaguely transparent element in the system in key decisions.

- The public can read/write to a wiki for my JSR.
Rather than a wiki which the Expert Group must take time out to visit, we intend to implement a pair of mailing lists following the approach of JSR 294 and JSR 330. First, Expert Group business will be carried out on a mailing list dedicated to Expert Group members. Second, an "observer" mailing list which anyone may join will receive the traffic of the Expert Group list. The observer list allows the public to follow Expert Group business, and is writable to allow the public to make comments for other observers to see and make further comment on. Expert Group members are under no obligation to join the observer list and partake in public discussion. In addition to these lists we will maintain a private Expert-Group-only list for administrative and other non-technical traffic.

Nope. No observer list with public archives. And obviously not writeable. All meaningful discussions are in private and hidden.

- I read and respond to posts on the discussion board for my JSR on jcp.org.
In lieu of tracking the jcp.org discussion board, and in light of the considerable public attention that the observer list is likely to receive, the Specification Lead (or his designates) will read the observer list and respond directly as appropriate.

Obviously this fails too.

- There is an issue-tracker for my JSR that the public can read.
We intend this to be the case.

Anyone seen an issue tracker? Not me.

Now, I've been patient on this as I know privately some of the reasons why there is no transparency. But frankly enough is enough. If the management team cared enough about this they would have escalated the priority of this sufficiently by now to have removed the roadblocks.

After all, not even members of the JCP Executive Committee get to see what is going on, as per the comments for Java 7:

...
------------------------------------------------------------------------------
On 2011-07-18 Keil, Werner commented:
... want to emphasize again the concern about intransparent ways this umbrella JSR and some of the underlying EGs have worked.

Hoping greater transparency in the spirit of JCP.next and also more satisfactory licensing terms follow with Java 8 and beyond.
------------------------------------------------------------------------------
On 2011-07-16 London Java Community commented:
...
We note that the archives for some of the Expert Groups that comprise this JSR have not been made public. It is most regrettable that this did not happen prior to this being put to final vote.

We trust that no further platform JSRs will be submitted without full access to EG archives - we would be very unlikely to support any such JSR.

Summary

However you look at it, transparency simply isn't happening with key JCP Java SE projects. (The same issues afflict other Java SE projects)

But don't worry, its all going to get magically better! Oracle recently signed up for more transparency in JSR-348. Is anyone out there still willing to believe its actually going to happen?

5 comments:

  1. It's been abundantly clear that Oracle doesn't really care about openness or the community, they care about milking the cow they bought.

    With the latest redrawal of the JDL (i.e. no HotSpot available in Ubuntu's software reposatory), I'm now convinced that Oracle's agenda is to offer an optimized proprietary (read: expensive) server JVM and a mediocre open source client JVM (which they control 100%) and disallow alternatives (Harmony).

    And that's their right, but then they should come out and be frank about it. The open community that Sun cultivated is most likely going to die or morph into corporate legacy mode. That's bound to become a problem for Oracle in the long term, since frankly, openness and community was probably the single largest selling-point of the stack.

    ReplyDelete
  2. Geir Magnusson Jr26 October 2011 at 10:55

    I don't believe that according to the JSPA, Oracle has any right to disallow alternative implementations of the Java SE specification (like Harmony). Anyone that chooses to implement any JCP specification is entitled to use the appropriate TCK to demonstrate that their implementation is fully compliant with the specification, and then distribute their implementation under whatever license they choose. But if Oracle withholds the TCK, you have little recourse but to sue Oracle, and who wants to sue Oracle?

    Oracle continued insistance to withhold the TCK from the Apache Harmony project (and the JCP Executive Committee's implicit approval) is a demonstration that the vision of the JCP as an open specification ecosystem is dead, instead becoming something more akin to a commercial consortium implementing what amounts to little more than the proprietary documentation of Oracle Corp.

    ReplyDelete
  3. I strongly suspect the legal issues that Stephen alluded to in his post are holding things up.

    I understand that it takes some time to perform due diligence on what was previously a closed arena.

    I'm pretty confident these will get cleared up soon, as JSR-348 has undoubtedly bumped up the priority for the legal folks at Oracle. I've certainly seen nothing but willingness on the side of the spec leads etc.

    ReplyDelete
  4. @Caspar: I don't think you're right. Ubuntu comes with the OpenJDK Runtime Environment (IcedTea7 2.0pre) and includes the hotspot server compiler "OpenJDK 64-Bit Server VM (build 21.0-b17, mixed mode)". From my benchmarks there's absolutely no speed difference between OpenJDK and JDK 7.

    Yours,
    Stefan

    ReplyDelete
  5. @Stefan: I hope you are right and that the OracleJDK will be deprecated for OpenJDK as font rastaration etc. is deemed mature enough in the latter. Perhaps I'm being overly cynical based on how Oracle deals with their other products.

    ReplyDelete