You ever debug a terse Perl program written by a really "smart" person?
Actually, yes I have. And I've found it an absolute joy. Oh, line for line it can take more work to understand. (Though often it is set up so that you can ignore most lines.) But compared to what the same code would have been written out in a more "straightforward" and repetitive fashion?
However there are a lot of people who THINK they are smart but aren't. Working with their stuff can be a nightmare. The difference is painfully obvious once you dive into the code. If you're experienced in Perl, it is usually obvious at a glance.
The problem is that most of the people who think that Java is too constraining are in that very group who think they are smarter than they are. (This is not to say that there aren't people who can be more productive with a language less constraining than Java.)
Indeed, most people who think they are smart, aren't, including myself.
Well, I think lots of people feel smarter with a better programming language. For instance, my ability to come up with better solutions is better when programming with Clojure than with PHP. It's like that saying, that perspective is worth 80 IQ points.
(Of course, I don't put any stock in IQ; it's just a saying.)
So maybe a more charitable view is that these people (who think Java is too constraining) wish to be smarter than than they currently are. And anyway, who wouldn't get a little frustrated with all the childproofing features in their everyday tools?
I suspect that you are "smart", you may just not be "the smartest." Indeed, if you're lucky your intelligence is only average in your peer group.
It's very easy to lose sight of where you fit in the larger scheme of things on the great bell curve of humanity. But I assure you, it's almost certain that if you can post to Hacker News you're smarter, richer, luckier than at least a billion people.
Actually, yes I have. And I've found it an absolute joy. Oh, line for line it can take more work to understand. (Though often it is set up so that you can ignore most lines.) But compared to what the same code would have been written out in a more "straightforward" and repetitive fashion?
However there are a lot of people who THINK they are smart but aren't. Working with their stuff can be a nightmare. The difference is painfully obvious once you dive into the code. If you're experienced in Perl, it is usually obvious at a glance.