
Java is becoming the new Cobol - shayan
http://www.infoworld.com/article/07/12/28/52FE-underreported-java_1.html
======
mdemare
Does this article contain any facts that are actually correct? Java losing
marketshare to AJAX?

"One bit of good news: developers and analysts agree that Java is alive and
well for internally developed enterprise apps." Has Java ever been alive for
anything else?

Java's big problem is incompatibility across platforms?

Ruby gaining popularity because of built-in shopping carts?

And what's the connection between losing marketshare and becoming the new
Cobol? I mean, Perl is losing marketshare...

This article is utterly clueless.

------
geebee
There's so much bashing of Java lately. It reminds me of the kind of daytime
TV rants that begin with "Well, Oprah, I think that man needs to..."

When people decide to end a relationship, they often start to think of all the
ways they have been wronged to justify it. I always think, eh, maybe "that
man" was fine, you just got tired of him. You don't need to justify a break-up
to me - feel free to go.

Personally, I don't feel as aggrieved by Java as some people do. It was
certainly better than working in C++. It certainly made web programming
easier. Tomcat was simple to install and configure. Ant was a good build too
(but I did start to wonder why all the XML configuration for something that
could probably be standardized). Struts was heavy and cumbersome. Hibernate
got on my nerves - why do I have to deal with all this XML. Spring was an
improvement, but I broke up with Java when I started reading about Inversion
of Control and all the design patterns. Why am I doing this when the actual
code I care about is going to be, oh, maybe a thousand lines, tops?

"Well Oprah, Java is no good, let me tell you about what he did, in the
beginning he was so nice, always bringing me flowers, but now he just sits on
the sofa an plays video games, why even last week, when I got home, working
hard to pay the bills, he's just sitting there..."

Eh, my take on it is that technologies and programming frameworks move on
(often by finding something that was done better in the past and modernizing
it, or even just dressing it up). Many if not most of the "breakthroughs" in
rails were already present in other languages.

There's really no need to hate Java or decide it's a foul language that has
wronged you. Maybe you're just ready to move on. Nothing wrong with that.

(of course, if you're a Lisper who suspected Java was stupid from the very
beginning, I suppose you are entitled to your victory fist pump when everyone
starts to wake up and get it).

I'm sick of programming in Java now. I'm not sure what's next, but Ruby and
Rails certainly opened my eyes to how much more pleasant and productive other
frameworks and languages can be. I just don't feel any real need to hate Java,
because it did make my life a little better (almost) a decade ago.

~~~
davidw
The reason people get irked with languages is the lock-in and network effects
that essentially force people to use things that they don't want to.

~~~
geebee
There's more freedom of language choice now than there was in the past,
especially for web applications. But I do agreee with you - there is certainly
pressure from network effects, which does make it harder to just "break up"
with a language as a purely personal choice. Not impossible, just harder.

As for me - I'd disagree that I'm _forced_ to use java, but I am definitely
under pressure (financial and otherwise) to do so. For instance, I use an API
for a mathematical engine (ILOG) that is available in java, C#, or C - and
everyone around me at work uses Java. Technically, I could write an extension
for ruby in C (maybe there's already one out there?) But I have a feeling this
wouldn't fly with my company. I could also quit and find a new job - there are
plenty of good projects in Ruby out there. So to some extent I am "forced" to
use Java, but if I'm totally honest with myself, I have to admit that there's
more than a small element of personal compromise (as opposed to pure coersion)
in the language I use at work.

I read an interview with David Heinemeier-Hansson where the interviewer
repeatedly asked him about "why not use X for reason Y" (X= Java, .NET, etc,
Y=performance, availability of programmers, scalability, etc)... and his
response was something like "previously I was direct, now let me be blunt: I
don't care about you."

That's what I'm getting at with the "well, oprah" analogy. At some point, you
just have to decide what you're going to with. Keeping an open mind is
extremely important, but it's equally important to remember that you don't
need to convince anyone other than yourself. If you find yourself justifying
things too often to other people, maybe you need to restructure your life a
bit (not meant as a criticism: I know I do).

------
brlewis
From the "Info-Tech Research Group" paragraph, this looks like submarine PR by
Microsoft.

~~~
snorkel
With no less than 3 favorable mentions of .NET? Do ya' think?

------
henning
Cobol doesn't have useful libraries like Lucene.

Cobol didn't convince pointy-haired bosses that technology which only 10-15
years before was considered an academic curiosity ought to be standard for
business application development.

------
bayareaguy
Relative to the other languages mentioned, I think the only significant way
Java is similar to Cobol have is that common conventions require a lot of
typing.

Consider an example from the programming language shootout:

Java:

    
    
       public static void main(String[] args) throws Exception{
          int sum = 0;
          StreamTokenizer lineTokenizer = new StreamTokenizer(System.in);
           while (lineTokenizer.nextToken() != StreamTokenizer.TT_EOF) {
             sum += lineTokenizer.nval;
           }
           System.out.println(Integer.toString(sum));
       }
    

Ruby:

    
    
      count = 0
      l=""
      STDIN.each{ |l|
        count += l.to_i
      }
      puts count

~~~
Tichy
I don't think that Java programmer was up to scratch, although admittedly Java
won't get as short as Ruby. I would count that readline construct of Ruby as
kind of cheating, though. It's a specialized feature that doesn't say much
about the brevity of Ruby in general.

~~~
brlewis
Cheating would be putting an open paren at the top of the file, a close paren
at the bottom, and implementing it in Scheme as

    
    
       (apply + (read))

~~~
jimbokun
I've done things like that often enough (putting parens around file contents
or each line of an ascii file) that I wonder if it would be worth writing a
macro that inserted the parens for you on the fly as you read the file before
handing it off to the code you want to execute.

I know that was vague, but I just get the feeling I'm often doing something
semi-manually in Emacs that my code should be doing for me.

------
mynameishere
I think I first heard the phrase "Java is the new COBOL" about 3 or 4 years
ago.

 _Ronen says Ruby offers pre-built structures -- say, a shopping cart for an
e-commerce site -- that you'd have to code from the ground up using Java._

Fact-checking 101:

[http://www.google.com/search?hl=en&q=%22java+shopping+ca...](http://www.google.com/search?hl=en&q=%22java+shopping+cart%22)

<http://www.google.com/search?q=%22ruby+shopping+cart%22>

[http://www.google.com/search?hl=en&q=%22ruby+on+rails+sh...](http://www.google.com/search?hl=en&q=%22ruby+on+rails+shopping+cart%22)

------
pg
I wonder what _Infoworld_ was saying about Java 5 years ago. But I can
probably guess.

~~~
dag
Title: Java Under Siege

[http://www.infoworld.com/article/02/03/22/020325fejavastrat_...](http://www.infoworld.com/article/02/03/22/020325fejavastrat_1.html)

Can't seem to access the website right now, though. Google cache at
[http://64.233.167.104/search?q=cache:UmQdAoYGKp0J:www.infowo...](http://64.233.167.104/search?q=cache:UmQdAoYGKp0J:www.infoworld.com/article/02/03/22/020325fejavastrat_1.html+java+2002+site:infoworld.com&hl=en&ct=clnk&cd=2&gl=ca)

Also, "Java Web Services High in Potential" at
<http://www.infoworld.com/article/02/02/22/020225feweb_1.html> , but the
website isn't responding right now.

------
qaexl
Though that means that if the adoption of Ruby on Rails in the enterprise
becomes widespread enough, it too will take the crown of "the new Cobol". Or
it might be .NET

What I mean is the rising population of unskilled so-called programmers who
have no business programming entering into the marketplace. I've already seen
crap Ruby code floating around, including ones that were "ported" (I use the
word lightly) from PHP or Perl. (They copied-pasted the code and change things
here and there to make it Ruby-like ... doing things like retaining the $ in
front of variables, or ...)

The DailyWTF is a monument to these pseudo-programmers.

When a language is sufficiently popular enough that pseudo-programmers
perceive it as a way of getting secure income ... without having to expend
skull sweat ... that language is flooded with utter crap. The result? COBOL.

People have said you want the top n-th percent of the programmers. For me, I
just want to work with programmers that don't suck.

------
shabby
And the memory footprint thing....

I understand the concern for mobile/embedded stuff and don't know much about
how well Java does there.

However, when a half gig of RAM for a server costs well under $100, it just
doesn't matter much for regular 'ol server apps. Even a "bloated" J2EE app
doesn't usually require more than a gig of heap (unless you're doing massive,
in-memory caching). Yeah, it's nice to use less memory, but there are 50 other
things I'd give equal weight to (the availability of libraries being about 25
of those 50).

As I write this comment, I am tuning a Java rules (rete) app that is using an
11 gig heap :)

------
simianstyle
In related news, black is becoming the new white.

~~~
icky
And they both run things in Treasure City...

------
projectileboy
I haven't seen anyone else comment that this whole thing is just a friggin' PR
piece from Twiki. And before all you 19-year-olds-fresh-out-of-logic-101
scream "ad hominem!", let me remind you that in the _real_ world you should
always consider the source.

I'm not about to defend Java, but what a lot of the Ruby newbies are too young
to know is that we _had_ a dynamic language in the enterprise. It was called
Visual Basic - you just declared everything "Variant". The result was a bunch
of god-awful messes.

Personally, I like flavors of Lisp. But I don't know that I'd prescribe it for
the IT department at Wells Fargo.

------
streblo
great, all my cs classes are taught in java.

~~~
pius
Trust me, if you were planning to ride on the language you learned in college,
you've got a rude awakening coming. :P

Ideally the classes are trying to teach language agnostic principles and
techniques.

------
apathy
About time...

------
Readmore
It really is true. Nobody wants to program in Java anymore, if you do it's
just because you don't know any better. However, just like Cobol, there is
going to be money available for a long time for anyone that keeps their Java
skills sharp.

~~~
hello_moto
I do. For my shrink-wrap web-app I will do next year, Ruby, Python and PHP are
not a viable choice.

~~~
michaelneale
JRuby or Rhino? Why not have best of all worlds.

~~~
hello_moto
Shrink-wrap is the keyword here. Imagine FogBugz written in IronRuby.

~~~
michaelneale
Fair enough. Yes shrink wrap is not "in vogue" so the particular issues it has
are often ignored on the internets ;)

