J2EE has nothing new happening ! J2EE is a back-end language ! JCP is too heavy ! Java language is not open sourced ! Ruby on Rails is the next thing ! JRuby looks interesting ! Java is dead ! .Net is easier to develop than Java ! Ruby is more flexible than Java ! J2EE is too complicated when you want to do web development ! And what about PHP ?
This is what we can read here and there in blogs, articles, web sites. I have to admit, I’m starting to get confused too. I arrived at the early stages of Java, coming from C and C++, and I thought that was great. When J2EE arrived I was the first one to say “this is cool, developers will have to focus on business requirements rather that wasting time with technical issues that will be held by the server”… and so on and so forth. Unfortunately, J2EE has become so complex that developpers have to read tones of specs and design patterns before developping a simple web app. And what about Ruby, and what about Rails, and what about COBOL !
Maybe like me you have coffee breaks, and maybe like me you work in big companies who have developped their system 30 years ago in Cobol. These companies have started to move to, so called, new technologies. But of course, there are still millions of lines of code written in Cobol. So, when you meet these guys at the coffee break (you can’t miss them, they usually wear suit and ties) they tend to look at you with a nasty smile. “So, I’ve you been developping in Ruby lately ? What about J2EE, we thought it was the next thing ? Have you updated your CV to find another job ? So Java is dead ?”… and it goes on until you live the coffee room.
What these guys are trying to say is “5 years ago, with the 2000 year bug everybody thought Cobol was dead. Here we are, 6 years after, Cobol is still alive, we still have our jobs, and Java, which is not even 10 years old, is dying, under the J2EE over weigh, under the JCP ruled-by-business-interest, and new technologies that popup here and there every 6 month”.
Are they right ? Are new technologies killing each other because there are too many ? Is CICS good enough, do we really need J2EE ? Is OO better that procedural ? What about component architecture ? Do we really reuse our components ? And what about these Cobol programs that have been running for 20 years and make more money than all our new technologies ?
Is Cobol the winner of the new technology wars ?