I was reading this entry by Ted Neward on IBM’s Developer Works analyzing if Java’s demise is imminent.
Like it or not, Java is now competing with languages which are faster, less verbose along with the positives of functional programming like closures, monads, etc.
So whats Java’s defense?
1. Java Virtual Machine(hell yeah!)
2. Java libraries – although there’s one too many, no other language even comes close in providing multiple tools for every possible situation.
3. Third and most importantly, I think Java language is going to survive because of the multi-paradigm languages which will run on the JVM (scala, groovy, Jaskell, Jruby, Jython, etc).
These multi-paradigm languages are going to succeed because they are less verbose, have most of the features which the functional programming crowd approves of, easy to learn syntax and we don’t have to give up our favorite editor! This is great news for us.
As soon as IDE support for these languages improves, I believe there will be a big wave of adoption of these languages.
One thing this does imply is that we cannot stay content in just knowing Java along with a few frameworks, we have to stretch ourself go through the learning curve and learn these languages, if not, its Java’s demise which is imminent, but its the Java Programmer’s.