Too Cool for Internet Explorer

Monday, December 31, 2007

Ruby x COBOL, the final... combat ?

Again and again. Recently this InfoWorld article, sparks some Ruby x Java flames again.

I try to find some references about the author, but now I realize: it don’t matter, I think there is a pattern. People simply HAVE to write something. And they really do…

Regards the article's title, it again put RoR x Java, trying to convince us that: first COBOL is dead. It is ? It really is ? Java / J2EE, DB2, COBOL CICS integration is the recursive task that I work TODAY. And Second RoR is forcing Java programmers to invest in new skills. What I can say about that ? at least ridiculous ?

On the first paragraph we have this pearl: “Java is losing ground to Ruby on Rails, PHP, AJAX and other cool new languages”.

New languages ? Ruby is a language, RoR is not, and if we consider the first public release date, Ruby, PHP AJAX (read, JavaScript + XML) and Java it self are ALL born in 1995.

Next, another good one “Simply put, developers are saying that Java slows them down”.

Hehey… with these new “auto everything, super smart” IDEs, there is no excuses like “that language slows me down”. That is the crucial point. So many people are confusing and mixing languages with platforms and / or frameworks (may be Sun is partial guilt to don't clearly put the language and platform apart, commercial interests ?).

I really don’t waste my time comparing languages performance, and that is the point where I really agree with Matz: “machines are not important, people are important”. So, the language you choose must be the one that gives you more fun. OK, there are some practical issues that must be considered, but that is the spirit.

You run a performance test, You have a point. The same program runs faster on one language then the other, but witch language will give you the best software ? It will be the one which your programming team feels better.

And what is really slowing us down ? I think, the platform is guilt, it is really a mess trying to configure ALL the “possibilities”, because we can do anything anywhere "Write once, run anywhere" remember ? We just have to “configure”, or in other words, tie those “compatible” pieces together.

There is a Java vs Ruby (Gregg Pollack and Jason Seifer) video that illustrates this situation, if you don't know, take a look. In fact, these videos are becoming a hype on RoR community.

Now the best: “CEOs of, and Sendori states that Java platform (J2EE in this case) is becoming more and more complicated … and RoR on a shopping cart for an e-commerce site...” is the heaven ? Dahaha. Just a simple matter of “convention over configuration” baby.

And it continues… “Another area of (Java) weakness is the development of mobile applications …and no wonder Google is creating its own version (Android)”

And what is this Android ? "Android as it is currently defined is a fork of the Java ME, it is similar to the Java ME, but it's a (open source), non-conformant implementation, In fact, it's not really Java".

The real problem here is the fact that JavaME is a proprietary copyrighted solution. This new open source platform is a mutch better aproach. Android supports Java (the language) now, but could support Ruby in a near future. And again, we are talking about platforms, not languages.

And the grand finale "developers and analysts agree that Java is alive and well for internally developed enterprise apps. On the back end, there is still a substantial amount of infrastructure available that makes Java a very strong contender, says Zephyr's Shah. (CEO of software testing provider Zephyr)". Haha, another CEO "de facto" statement…

Gonna have to really disagree, I'm experiencing J2EE slowing me down every major change or upgrade needed by the application. A recent practical example:. this new resource adaptor was needed by a recent implemented Java / J2EE application. We spent two weeks to the support team install and configure it, two weeks for "configurations" and tests with a sample application and just two days to change and test the application. Who is the guilt? Java language? I don't think so.

Let's try another formula ? May be COBOL vs Ruby !

On the blue corner we have: the first, the oooonly and all procedural oriented: COOOOOBOOOL.

On the red corner we have: the neeeew, the funniest and totally object oriented: RUUUUUUBYYYY.

Sorry. I feel it will never ends…


Anonymous said...

Nice info

Abhijit Mandavkar said...

COBOL will never die. New software generators, solutions and languages have come and gone. Cobol is still here. If you need more information have a look on COBOL and Java/J2EE integration