In the wake of Doug Lea leaving the JCP, I just want to say that I think the JCP is salvageable. This idea the JCP is an unworkable entity is plain and utter myth. A myth propagated by those that want to see it fail (i.e. SpringSource) or those that want to create their own, and controlled, specification efforts (IBM), or those that are more interested in doing their own thing than collaborating with others (i.e. Google and SpringSource). Don’t believe me? Well, let’s discuss it a little more.
First case in point is JPA. In J2EE 1.4 and earlier we had the crap that was CMP and its unloved and unwanted step-sister JDO. The Persistence story and message within EE was divided, unclear, and (in CMP’s case) inferior and fundamentally flawed. This allowed Hibernate to flourish and practically become a de facto standard. If the JCP was broken and unworkable, we would have never been able to get JPA into the EE 5 specification. JPA was such an important direction for the EE platform. Firstly, it brought the innovations of using annotations, but more importantly it unified the platform bringing de facto proprietary implementations like Hibernate and Toplink under the EE umbrella, retiring CMP and bringing the EJB community into the fold, and finally, forcing a shot-gun marriage with the JDO crowd. The platform needed this, needed this badly to remain relevant.
Second case in point is CDI. Spring’s rise has always been more about EJB’s incompetence rather than any real technology. Java EE had three huge holes to fill: injection/IoC, true integration across various specifications, and most importantly an SPI to be able to extend the platform and foster innovation outside the specification process within the Java community. CDI filled all these holes. The fact that little Red Hat who is dwarfed in market cap and marketing muscle by the likes of Google, IBM, and Oracle, could push such a game-changing specification through with all the political opposition in place, is a testament that the JCP does work and can work if the participants are willing to focus on technology.
Third, the JCP was already changing pre-Oracle acquisition. It was already becoming much more open. Specifications like CDI, JSF, Validation, and JAX-RS all were defined within a completely open process. Many had open source RIs and TCKs. Things were improving.
As far as Doug goes, its a big loss. I know a few of my JBoss colleagues enjoyed working with him. Personally, I think his departure was premature. I don’t think the dust has settled yet after the Sun acquisition. All Java JCP major participants knew that the JCP had to change. We wanted change. We still have to give Oracle the benefit of the doubt and, more importantly, time. Time to get organized. Acquisitions take time to settle (believe me I know). From what I’ve seen, Oracle had in the past always been an innovator supporter on the EE specification process. I don’t see why this couldn’t continue. They have some good people over there that recognize innovation and want to move the Java EE platform forward. Whether or not they will have say over the Oracle business people remains to be seen IMO.
Oct 26, 2010 @ 16:27:12
Thanks Bill for the comments. The ServerSide seems to have become the bash JEE/Java/Oracle site. For those of us who have a lot vested in the Java/JEE model, this constant droning is becoming suspiciously religious vs. technically motivated.
Oct 26, 2010 @ 16:43:46
TSS isn’t as bad now, under Cameron, as it used to be under Joe Ottinger.
Oct 27, 2010 @ 14:46:27
Hi Bill,
thanks for your thoughts!
One little thing: Could you maybe put things like “They have some good people over there that recognize innovation and want to move the Java EE platform forward. Whether or not they will have say over the Oracle business people remains to be seen IMO.” at the beginning of your post in the future, so I can stop reading right there?
Oct 27, 2010 @ 19:44:11
I agree with you Bill to give Oracle the time to settle. When JCP had its inception, I’m sure there were so many challenges to get it started. I think the reactions towards Oracle acquisition of Sun simply imply “resistant to change”. At the end of the day, JCP is still a collaboration-oriented process.
Life at Eclipse » Blog Archive » Take a Deep Breath, Then Vote for Eclipse: Our View on the JCP
Oct 27, 2010 @ 21:48:34
Open Letter to the JCP Executive Committee calling for JCP reform | OcpSoft
Nov 01, 2010 @ 20:09:43
Nov 02, 2010 @ 06:28:19
Title is possibly misleading (‘JCP In Trouble’), but worth a read
http://www.osgi.org/blog/2010/10/jcp-in-trouble.html
Slightly off subject, I have not read your blog regularly, but I do pick quite a bit of antagonism against Mr SpringSource.
If one feels the EJB and JSF specifications are wrong and get in the way of you doing your job, what do you do? Bite the bullet and tag along, or go your own way? By your own admission EJB 1+2 were a mess, JSF 1.0 was considered by most as a mess. As an application developer what are you supposed to do when the ‘standard’ specs are a mess. C#?
Personally I disagree with the architecture of EJB/ORM and of JSF. The fact that I can choose to do something else is a strength of the Java platform not a weakness.
Mobile Java is, as far as I can ascertain, not well loved. So is Google doing their own thing because they do, or because they feel the Mobile Java spec is unworkable? The fact that Android has taken off validates their approach in many ways.
Dave
Nov 02, 2010 @ 13:54:06
For Google, I’m talking about the enterprise side of things and mainly JSR 330. You’re right about Java ME. Java ME was/is a mess because of IP issues and a revolt was coming there whether or not Google created Android. My only experience is on the enterprise (EE) side of the JCP, and I stand by my comments both against Spring and Google.
If you do not like a specification, don’t use it. Having coded through the rich-client golden years of the mid-90s (VB, VC++, PB), I personally don’t like any service-side MVC web framework. They all suck, IMO.
ICT loket | Blog | Apache legt bom onder Java
Nov 10, 2010 @ 13:20:02
Gibizz News » Apache Declares War on Oracle Over Java (PC World)
Nov 10, 2010 @ 16:22:43
Apache declares war on Oracle over Java | ITworld | Infinite Software
Nov 10, 2010 @ 21:05:44
Dec 10, 2010 @ 00:26:14
Still feel the same today after the Apache resignation?
Dec 10, 2010 @ 15:07:44
Sure do, why? Because Apache doesn’t do anything on the JCP except filibuster Java 7 JSR. You should probably focus
Dec 11, 2010 @ 06:03:37
https://blogs.apache.org/foundation/entry/the_asf_resigns_from_the
“The Apache Software Foundation concludes that that JCP is not an open specification process – that Java specifications are proprietary technology that must be licensed directly from the spec lead under whatever terms the spec lead chooses”
Given Apache’s role on Java to date, and their commitment – this is a bad day for Java. Regardless of your personal feelings on Apache vs JBoss et al maybe one should focus on the reality that people will now begin to no longer consider Java to be open and essentially view it as Oracle’s .NET.
Dave