As I'm an Enterprise Architect for a large financial corp, I wish I had enough time to vent on this one, but I have to get back to some production Java issues *cackle*
First off I have to answer chromatic's question because he's answered so many of my own and I can't believe I'm capable of providing him an answer of any sort:
What exactly is an "enterprise level requirement" and why would I have one?
According to J2EE 1.4 spec a Enterprise Information System Resource (closest I could come to the question) is defined as:
Just for clarification (according to Sun --Caution! Never stare at Sun directly!!) An Enterprise Information System is defined as:
Now to the original question J2EE is too complicated - why not Perl? This is easy.. Perl is unmaintainable in a large enterprise. (5000+ employees.) Of course it appears Java is unmaintainable in a large enterprise too, however, millions are invested into it therefore, "It's gonna work dammit or your fired!".
What's scaring the hell out of me is .NET. Just this week I saw two non-coders develop 2 fairly sophisticated apps that utilize web services in less than 7 days just by following the right-click on error method of programming. Intel platforms are cheap and apparently monkeys can create applications with it. Now we all know that as soon as MS upgrades they'll all break, but what will management think of it? Well guess who the monkies were...
I love Perl up down and sideways but have a hell of a time working on anyone else's Perl code (monk level/CPAN level quality excluded). The truth is that I'm tickled pink whenever I run into someone in the organization that even knows what Perl is.
There are issues like Perls speed and memory management (Can't get them to upgrade from 5.005), but these are not what keeps Perl from the enterprise. "It's the management stupid!"