So Sun are working on yet another revision of their EJB specification - oh joy. I'm not really sure how shiny they can make this turd by continually trying to polish it, but it's quite obvious that while they've been spraying the Pledge and rubbing the duster that they've had plugs rammed tightly into their ears.
Last year when they released Java EE 5, including the EJB 3.0 specification, they almost did something right. They removed Entity Beans from the specification, but forgot to drop the rest of the crap along with it.
The problem is that there are still some that think that Java EE are good specifications, and there are even some that actually believe they're Sun products rather than uncomfortable toilet paper. Why is this? Well that's really for another rant, but the short version is that certain popular publications won't publish anything that criticizes Sun due to the fact that they get a ton of advertising revenue from them. So unfortunately many people in the Java community remain uneducated.
Sun don't listen to the community. They give lip service - but I can get better lip service for $5 by going to certain street corners in Tijuana. Last year they had the perfect opportunity to say "We were wrong, Java EE isn't working and there's much better solutions out there like Spring etc." But they didn't and instead produced another blot on the Java landscape in the form of Java EE 5 specifications.
The arrogance of Sun can be seen throughout Java's history. Take logging - when they introduced logging to Java 1.4 SE they had the chance to go with the community and use Commons Logging and Log4J. But no, Sun knew better, they produced their own logging solution that resembled the kind of log you see flushing down the toilet bowl on its way to the Atlantic ocean.
In Java EE 5 they had the opportunity to replace entity beans with something like Hibernate - which was being used by thousands of developers who were smart enough to avoid EJBs. Again they missed the point and produced another API and expected the world to refactor their code to use their API instead of Hibernate.
So what now. Well Java 6 SE is out, so we're now expected to wait with baited breath for Java EE 6. And everyone knows that Java EE 6 will contain the shiniest turd the world has ever seen in the form of EJB 3.1.
Now I'm not saying that EJB 3.1 won't be an improvement over EJB 3.0, but then George Bush Jr was thought to be an improvement on George Bush Sr. Even with these improvements the spec won't be finished for some months and Sun will expect everyone to wait for it rather than use other frameworks that are already out there and do things so much better than EJBs ever could.
The biggest problem is that the community (the people that keep Sun in business), particularly the superstars of Java, don't speak up enough or don't do it in a collective way. So Sun drowns out their voices with a 20 foot screen at JavaOne with Gosling and Schwartz spouting the Sun propaganda.
This has led to some of the greatest minds in Java moving to other languages like Ruby, which will result in less and less innovation in Java. Possibly this is what Sun wants as it will give them full control, but it's not something I or the millions of Java developers want.
So what I would like to see is the rock stars of the Java community getting together as one voice and saying that we don't want any more turds - even if the turd has been polished as much as EJB 3.1.
Subscribe to:
Post Comments (Atom)
2 comments:
Well, seems that I now need to create a Bile category in my blog subscriptions.
Great post.
I agree with everything you've written except the comment on Hibernate. There are better and more mature tools than Hibernate (i.e., TopLink) which weren't getting sufficient mindshare before. With the EJB 3.0 spec, Sun standardised persistence through JPA. JPA levels the field. Now Hibernate is seen as just another JPA implementation, and everyone except JBoss bundles TopLink as the default ORM tool instead of Hibernate. Another monopoly broken.
Regards,
Ganesh
Post a Comment