Monday, October 11, 2010

Apache Board Should Consider Dumping Java Development

I have been contributing to open source since 1993. I have been a server side Java developer since 1997. I was one of the primary people who started doing Java development within the Apache Software Foundation. I became one of the first members of the ASF based on contributions in Java. I was a party to the discussions which convinced Sun to open source Tomcat and Ant. I helped create the Jakarta project. I started or contributed to dozens of projects over many years. My code is used on servers all around the world. I continue to work with Java on a daily basis and have created many other open source projects on my own. I am a huge fan of Java for enterprise software, because I've personally seen it work exceptionally well.

Based on what I read today about IBM giving up the legal fight over the issues which have surrounded the JCP since day one, I feel that now is the time for the ASF to stand up and stop supporting Java development. The process that now surrounds Java does not reflect the open nature of the ASF.

In the past, the thought has been that as long as we are part of the (JCP) process, we can continue to exert our pressure on corporate forces to engage them and encourage them to embrace openness in what they do. Working from the inside gave us an advantage. In a lot of ways we were really successful and that help Java grow immensely as a language. I feel that door has now been closed and we've been left outside, only to get Sun burned.

This isn't about forcing projects to leave because of choice of language or being angry or being the loud voice in the room. It is simply about standing up for what you believe in and knowing when to throw in the towel. The ASF tried for many years to take a hard stance about what they believed in and failed. It is time to realize that and give up. It is hypocritical for the ASF to support a language and set of corporations which doesn't want or need its involvement anymore.

That said, I truly believe Java is not dead. Not for a long shot. Especially since there really isn't anything better to replace it for large scale enterprise applications. With IBM backing Oracle and Java7 and the legal roadblocks now removed, I think there is actually a bright future for it to grow. OpenJDK is technically open. Maybe not in the way the ASF would like, but the truth is that there is still billions of dollars being invested in this technology. I actually look forward to seeing what is in store next.

I know that some people within the ASF will worry that the foundation will become irrelevant without Java. It makes my heart flutter a tiny bit to think that I had a hand in creating something so huge. However, the irrelevance happened long ago for ASF's Java projects. The process for developing code within the ASF has become so inundated with bureaucracy that the fun has long since dried up. It is far easier to create your own project, get free hosting and check in whatever you want than it is to work within the ASF's walled off garden. As far as I can tell, the only projects that really thrive are those with corporate backing. At which point, the ASF is relegated to being a method to garner notoriety and free development resources.

Other communities have developed far better tools for supporting collaborative software than what the ASF can ever hope to provide. I suggest that current ASF Java projects be moved onto github or googlecode project hosting. These services provide a better environment in the long run anyway. Links should be made to the new project pages and the ASF should focus on development elsewhere.

In the end, I really feel that the ASF should put its weight behind languages that aspire to reflect the sense of openness that the ASF embodies. We tried for many years with Java, but the reality is that with IBM gone, there is nobody left to back us. The fight is over, move on.


afsina said...

Maybe they should stop development with .Net php etc too then. I call this BS. Apache stops Java, people stops caring about Apache.

exuberance said...

Nicely put. I think the question of ASF beuracracy isn't necessary to the argument; and adding it lets people ignore the real problem that has arisen.

Unknown said...

I think there's a difference between continuing Java projects and continuing pushing from the inside, ie being a JCP and EC member. ASF can continue to be successful in one without the other.

Whether has the state of the art tools to support development seems a different discussion.

J. Anthony said...

There are just so many other great, unencumbered languages out there right now. And all they need to break out as the leading enterprise choice is the backing of a few larger interests such as the ASF.

Java is great, but so is C#... neither should be the choice language going forward, as they are both held in corporate IP prison.

So what do you think? Python + github? :P

Tim O'Brien said...

Odd, when I read this I had a visceral negative reaction, but I agree that such a change would be somewhat liberating wrt to the entrenched b-cracy.