content: Scala, Groovy, Clojure and other languages are starting to make their way into more major projects.  These are not Java.  But today we have newer theories like having the compiler insert free/deletes at compile time.  So, 20 year old idea (at least).  The write once, run anywhere...generally works. It really does.  I have a horde of stuff I wrote in college back in the early 2000s and none of them run.  At all.  It was such a pain in the ass to have to clean them up.  Java is there for a good reason. It's still good at some things, ancient in others.  Everyone who could has switched from Java to C#.  Once C# can run on *nix as officially supported by MS, everyone else will jump ship as well. What Sun got right with Java: JVM, Enterprise Edition, Applets.  JVM has turned out to be a great thing as those languages you mentioned at the beginning are pretty cool.  But reallly the effort has been one running parallel to gcc and clang. To this day, most people don't understand what the fuck Java Enterprise Edition is or what java beans are, how they work or what they're supposed to do.  It's amazing to think how Sun understood what it would take to architect an "enterprise" application. The web is trying to become today what applets were back in, like, '98 or '99.  The web is still struggling with layout issues, javascript and dom compatibility issues, and messaging.  If Sun had provided the tools for Java Applets that Macromedia had provided for Flash, we would have seen the HTML/CSS/JavaScript stack die out. As someone doing web back then, I would gladly have welcomed that.  Unfortunately, most web developers were not knowledgeable enough to program in Java, as evidenced by the horrible state of web technologies today.