The JCP is dead; long live Java

The Apache Software Foundation has just announced it’s resignation from the Java SE/EE Executive Committee. After several other recent community departures from the EC, and scathing commentary supplied as comments with the votes from other EC members for the recent Java 7/8, it’s clear that Apache is not alone in it’s dissatisfaction with Oracle’s complete and overt control over what is purportedly a community effort. As another Apache member has said:

The Executive Committee is clearly not a Committee of Executives, nor is the Java Community Process a Process involving the Java Community.

I applaud everyone who has done technical work on recent versions of Java, and I’m sure plenty of people will still want to program in Java. That’s great. But please – when you do use Java, please remember that it is *not* built on open standards. It is built on technology (and patents) and licenses that Oracle controls, and is quite happy to exercise it’s control over all things Java.

If you’re happy paying Oracle more and more licensing fees in the future, more power to you. But if you’re not, then you really need to understand the problem of the TCK Trap.

Stay tuned for more updates from the ASF’s Foundation blog on what this means for the many many excellent Java based Apache projects. And, follow the #jcpisdead hashtag to understand what impact it may have on your Java future.

For more reading, follow my set of ‘oraclemess’ Delicious bookmarks.

Java: no longer free as in speech

El Reg has breaking news that the JCP vote on the Java 7/8 JSR’s has passed. Apache and Google voted no, and the rest of the players sadly (but perhaps unsurprisingly) voted yes. This effectively changes the game around Java standards stewardship – you might say it turns the JCP into “Just Customers, Please“, removing any real community input that Oracle doesn’t choose to accept.

There are plenty of past links to learn about what this really means, and I’m sure that Stephen Colebourne will have some insightful commentary once he wakes up and has a cup of jav… er, tea.

A key indicator of the feeling of the JCP are the signing statements that most of the “Yes” voters supplied: all (except Oracle) agreed with Apache and Google that the FOU restrictions Oracle is mandating are objectionable and inappropriate (not to mention apparently incompatible with the JSPA). If only wishes were horses, and signing statements had real force, then we could all be happy.

I’m not that surprised that the larger software vendors cast their votes where they think their bottom lines are, and went with a “Yes”, FOU reservations in their signing statements notwithstanding. I am a little surprised that Eclipse and Red Hat caved into Oracle, given that their businesses are also open source, and they’re clearly going to have to pony up to Oracle somehow to get sufficient licenses to continue shipping Java related software.

Don’t get me wrong: for all the Java developers who don’t care about how their underlying technology is licensed, I’m happy for you! You now have Oracle’s Java roadmap, and presumably Oracle will start delivering some cool Java technology. But please: don’t fool yourself or your friends into believing that the Java standards ecosystem is open, free, or community based in any real way. Oracle owns the court now, and don’t be surprised if it starts charging some people for renting balls along with court time to play.

It’s a sad day, since I really do like programming in Java. I still will, sometimes; but not as often. And not without realizing that Java is no longer free as in speech. We’ll see how long that Java remains free as in beer, now that Oracle’s realized they run the JCP.

OpenJDK += Oracle, IBM

The big news this week is the sudden move by IBM to join with Oracle in collaborating on the OpenJDK. You can read the formal joint press release, or browse some of the first set of thoughtful commentaries here:

Required reading: everyone should re-read the ASF’s open letter to Sun Microsystems about the JCP. If you don’t remember why that letter is important, then go back through the Graphical Overview of Sun’s JSPA violations. If you like using the word “open” anywhere near the word “Java”, then you need to remember that they don’t really go together these days.

Apache new(s): officers, projects, commits

A brief roundup of recent Apache news:

Please welcome a number of new top level projects that have recently been created:

  • Please welcome the Apache jUDDI project, a Java implementation of the UDDI v3 specification, which graduated in August from the Web Services project to be come a top level project.
  • Welcome also the Apache Pig project, a platform for analyzing large data sets often used with Apache Hadoop – where it recently decided to move from being a subproject to a TLP in it’s own right.
  • Likewise, the Apache Hive project has also split off from Apache Hadoop as well, providing a data warehouse providing a simple query language called Hive QL.
  • The Apache Shiro project recently graduated from incubation to become a TLP, and provides a security framework for authentication, authorization, cryptography, and session management.

Finally, I’d like to extend the appropriate thanks and appreciation (which are very large!) to our recently outgoing executive officers:

  • Justin Erenkrantz, our outgoing President, who’s literally traveled the world speaking at events and companies on the ASF’s behalf.
  • Sander Striker, our outgoing Executive Vice President, who’s also been a help in outreach and our infrastructure in many areas.

July Apache news roundup: Greg! Adobe+Day! FOP! FOP?

A brief listing of some of the news around the ASF this past month.

Oh, and the ASF elected a new board of directors as well – there are some different (and one new) faces, but overall, we expect steady sailing into better waters.

Want to get your own news about Apache projects? Read or feed from the announce list, official Foundation and project blogs, or get the Planet Apache community perspective.

Apache is at at OSCON!

For those of you lucky enough to be attending OSCON this week in Portland, there will be a number of well-know Apache folk there, as well as some talks about Apache projects. Plus, the ASF has an official exhibitor’s booth, #812 at the expo.

Sadly, I won’t be attending, but I did pick out a handful of cool Apache-related OSCON sessions you should check out. Be sure to stop by the ASF booth and say hi to Sally, Justin, and all the Apache volunteers who will be there to answer your open source questions, Apache Way style.

While OSCON is about everything open source, Apache both as a Foundation and a community of projects is about a specific kind of open source. The power of “Community Over Code” which epitomizes much of The Apache Way that Apache projects follow is brought to light by a great blog posting by Noah Slater of his CouchDB Retrospective. Thanks Noah for a great essay on your journey to a true community led project!

Have fun at OSCON – wish I were there!

Congratulations to the new Apache Board

The Apache Software Foundation held it’s Annual Member’s Meeting this week and cast votes to elect a new board of directors as we do each year. We also elected a number of new potential members, who may be receiving their private invitations shortly.

The new 2010-2011 Board of Directors comprises:

  • Shane Curcuru
  • Doug Cutting
  • Bertrand Delacretaz
  • Roy T. Fielding
  • Jim Jagielski
  • Sam Ruby
  • Noirin Shirley
  • Greg Stein
  • Henri Yandell

We welcome Noirin Shirley, who will be a new face on the board this year. We also welcome back Henri, Sam, and Bertrand who have served on the board in the past; the remaining directors are incumbents.

A big round of thanks went out during our meeting (on irc) for all of the non-returning directors Brett, Geir, Brian, and especially for Justin Erenkrantz who has also been serving as the Foundation’s President as well as a director.

See also the official ASF Foundation blog posting with the announcement.

A graphical history of the directors of the ASF is also available.

Likely Fraud Alert: “apache-project dot org”

Several people have contacted the ASF recently asking about an “Apache Indonesia Project”, something to do with “Digitization of Indonesian Population”, and/or something to do with an Apache 4.3 database server. The reports reference the domain name “apache-project dot org” (which I won’t link directly to here).

PLEASE NOTE: all of these projects or organizations have nothing to do with either the Apache Software Foundation, nor anything to do with any Apache projects. Their use of the “Apache” name is certainly not approved, and it is likely a violation of the ASF’s trademarks. Any references to an “Apache 4.3 – anything” are either bogus or a direct violation of our trademarks, since the ASF ships no such product.

Unfortunately, we’ve had a couple of recent reports of people sending them cash to get some sort of training DVD for an outsourcing project, and then wondering why they never hear back from the organization. Sadly, it seems that some scammer has decided to try to make some fast cash using the Apache name.

Remember: software from the ASF is always free to use following the conditions in our license, and the ASF will never ask for money for the software products that any of our projects create, nor to participate in any of our mailing lists. The ASF certainly appreciates anyone who voluntarily chooses to Sponsor the ASF, but material donations are never expected nor solicited in exchange for any Apache software.

If you’re ever in doubt about the source of information, remember: if it’s not hosted at apache.org, it’s probably not officially from the ASF. Much like here at Community Over Code: posts here are Shane’s own thoughts, and do not reflect the official position of the ASF. In this case, however, I’m confident that many other ASF members are equally upset about this seeming mis-use of our good name.

mybatis.org forks from Apache iBATIS

The bulk of the active development community for the Apache iBATIS project has decided to fork the code, and move their development efforts to the new project they’ve founded called mybatis. While this may be old news to iBATIS/mybatis users, I thought it deserved a wider mention, both about the fork and some of the thoughts behind it.

What is mybatis?

mybatis.org is a new, independent project run by Clinton Begin and most of the PMC members and active committers of the Apache iBATIS project. It’s a fork of all the iBATIS code under a new name. They’ve recently released mybatis 3.0.1 GA, which will be the primary focus of development for the new mybatis team. They currently ship mybatis releases using the Apache License.

Since it’s a fork of the existing iBATIS code, it provides the same advanced SQL data mapping functionality that existing users expect. “MyBatis couples objects with stored procedures or SQL statements using a XML descriptor. Simplicity is the biggest advantage of the MyBatis data mapper over object relational mapping tools.”

Who is mybatis?

Clinton Begin, the original creator of iBATIS in 2001, is leading the project. Along with him are the bulk of the active developers of both mybatis (for Java) and mybatis.net. They are using Google Code to host the projects, along with source code, mailing lists and bug trackers. The project is independent, and is not directly associated with the ASF.

What will happen to Apache iBATIS?

The ASF is a public charity with the mission of provide software for the public good. Thus, we will continue to provide the complete source code under the Apache license in the future. In terms of the project as a whole, it’s expected that due to lack of community still participating at the ASF, it will be moved to the Apache Attic during the upcoming mid-June board meeting. That will mean the PMC and officer positions associated with Apache iBATIS will be dissolved, and some time thereafter, the website, mailing lists, and code for the project will be moved to the Attic for future read only reference.

Projects are moved to the Attic when there isn’t a sufficiently active and healthy community (primarily at the PMC level) to provide oversight to the project and it’s releases. The decision to move projects to the Attic is not a technical one – it’s purely a community issue. A project’s code and past history are always freely available to users, although in a read-only state. If, in the future, a sufficiently diverse community wishes to re-activate the project and follow the Apache Way, we welcome that.

What’s the difference? Why did mybatis want to fork?

Obviously, you’ll need to ask the mybatis team for the answer to this question. From emails I’ve exchanged with Clinton, and seen from other members of the mybatis team, my impression is that the difference wasn’t specifically technical, more organizational. They simply have a different vision for how to develop open source software projects than the ASF does.

ASF projects are expected to follow a number of procedures roughly known as “The Apache Way”. We believe that software projects with a diverse community; that use a consensus process to make decisions; and that do all their work in the open results in the best overall quality and longest lasting projects. While the ASF expects it’s projects to follow the Apache Way, we certainly understand that not everyone believes that our way of software development is the right one for everyone or for all projects.

While there were some unfortunate miscommunications (not necessarily anyone in particular’s fault) in the process of the fork, I hope there is no ill-will between the ASF and the mybatis team. While it’s sad that the ASF is losing a project (and the community with it), we wish the mybatis project luck in their work.

Is it OK for them to fork the project?

Of course! The Apache License is written to provide the maximum freedom to the users of our software. This means you are free to re-use any of the code we produce in almost any way you wish, including building atop it to create a proprietary product, or by forking the code and re-architecting the whole thing. While we always appreciate developers who choose to contribute fixes and new code back to our projects, we’re perfectly happy for people to take our code and do their own thing with it, either privately, or shared with the world.

So, good luck to mybatis, and mark this as (I think) the first time the ASF has had a coherent community choose to fork themselves and move elsewhere in a productive manner!

Congratulations to six new Apache projects!

In last week’s monthly meeting of the Board of Directors of the ASF, we approved the creation of six new Top Level Projects (TLPs) at the ASF. This is the most new TLPs ever created at once, followed only by the meeting of November, 2008 where 5 new TLPs were created (CouchDB, Buildr, the Attic, Qpid, and Abdera).

In this particular case, much of the growth comes from within existing projects, wherein subprojects communities within Hadoop and Lucene have matured sufficiently to deserve to manage their own fates, and to create their own Project Mangement Committees (PMCs) to take charge. To put this in another perspective, this is also reflective of the ASF’s growth; before this meeting we had over 70 TLPs and over 30 Incubator podlings, so an addition of 6 new TLPs is less than 10% growth for the month.

We should congratulate the Apache Traffic Server community first, since they went through the Incubation process and successfully graduated from an Incubator Podling into their own TLP. Soon to be served (once the website migration is complete) from http://trafficserver.apache.org/, Apache Traffic Server is fast, scalable and extensible HTTP/1.1 compliant caching proxy server. Congratulations to the whole team in showing a strong and diverse community around this new product.

Next up come three subprojects within the well-known Apache Lucene project which have grown organically from modules within Lucene to be diverse and active projects within their own right. You may recognize some of these product names from the Lucene world.

  • Apache Mahout, which is building a system for creating scalable and effective machine learning libraries which can perform recommendation mining, clustering, classification, and grouping into itemsets.
  • Apache Tika is a toolkit for detecting and extracting metadata and structured text content from various documents using existing parser libraries.
  • Apache Nutch, integratable with both Lucene and Hadoop, adds web-specific crawling, fetching, and organization features.

The Apache Hadoop project – another wildly distributed computing technology – has also grown two of it’s subprojects to the point where they deserve their own fame.

  • Apache Avro is a fast data serialization system that includes rich and dynamic schemas in all it’s processing.
  • Apache HBase is the Hadoop database – designed to provide random, realtime read/write access to Big Data – billions of records – using commodity hardware.

Why did these subprojects spin out to become their own TLPs? The driving factor is not the technology, but rather the community and oversight aspects of how the ASF organizes it’s mostly self-running projects.

From the oversight perspective, the ASF Board relies on every project’s PMC to manage their project’s operations within the broad guidelines of the Apache Way, and to report their project’s progress and issues to the board. This means that there must be enough PMC members who can actively monitor and participate in their project’s activities, and can especially show due diligence and responsibility in voting on any official product releases the project makes. With the rapid growth in both community and technology areas in the Hadoop and Lucene projects, it’s a difficult job for the PMCs to truly understand and help manage all the subprojects they’ve created or added over the past two years.

While the scope of oversight may have hinted that some subprojects should be promoted to TLP status, the gating factor is community. Does a subproject have a strong and diverse enough community to provide their own, independent PMC that can manage their own affairs? Becoming a TLP is both a benefit and a responsibility: the community through it’s new, more focused PMC can better run itself; however the new PMC is also expected to provide accurate reports and responsible oversight of their community and product releases.

Congratulations to all six new projects! Please note that as the websites are updated, each project will be moving it’s home page to http://projectname.apache.org in the near future.