Pure Danger Tech


The Next Big Language is….

15 Dec 2009

Ok, I hooked ya there didn’t I?

Jeff Brown mentioned some surprise today at hearing that Scala had been anointed as Java’s “heir apparent”.

I say that there will be no “next Java”. Get over it people. There is no “next big language” coming that will capture 20-25% of the market like the Java’s or C’s of old.

The world of languages has changed. Information about new languages and techniques flows much faster than 10 years ago due to the net. VMs have drastically lowered the bar for implementing high quality languages. So many apps are accessed via the web or remote APIs that it makes no difference whatsoever what the app itself is written in.

Make no mistake – this is a glorious development in my book. We are emerging from a decade of language tunnel vision into an orgy of choice and variety. A year ago I kicked off the St. Louis Lambda Lounge user group, which looks primarily at functional and dynamic languages. In the last year, we’ve had talks about Erlang, Haskell, F#, Fan (now Fantom), Fortress, Python, Perl, Scala, Clojure, Squeak, Factor, Groovy, Ruby, Javascript, OCaml, Objective-C. I grant you there are a few languages in there that are not well known or used but MOST of those are actively used by real people in production.

At the inaugural meeting of the Lounge, there was a comment (by Kyle Cordes if I recall) that a decade ago the alpha geeks were running towards Java and now they’re running away from it. Some truth there. The key is they’re not running towards one NBL – they’re running towards what solves their problems.

If we just constrain our focus on JVM languages, Java will continue to dominate the market for years to come. But beyond that we have real choices in Groovy, JRuby, Jython, Clojure, and Scala. I can easily name real companies and production-level products built on all of those. Beyond that I can think of a few more in the next tier like Fantom. A year ago I would have had a hard time citing success stories for some of those, but not today. If you want to know what the next big language on the JVM is, I’d say ALL! Gimme the beauty of Ruby, the thoughtfulness and concurrency of Clojure, the static typing and OO/functional hybrid of Scala, the dynamic vibe of Groovy, the simplicity of Jython, and always my good old friend Java.

There will of course be bigger and smaller languages. Over time we’ll see some of these languages drift up and down in popularity and community but there might be 10 (15? 20?) languages out there with a robust job market. Even that’s not essential anymore. If I’m putting together a web site, the only important thing about the language I use is whether it is the most productive language for me.

I can’t wait to see how our languages evolve in the next few years with this bubbling idea pool.