Sam Ruby has a post up about his long bets and Tim Bray replied with comments and his own set of prognostications. Tim’s comments around concurrency trends (particularly with respect to Erlang and Hadoop) were interesting as I think there is another way forward in slightly different vein: Terracotta‘s Network Attached Memory (NAM).
NAM allows you to scale out your JVM cluster, storing your data on disk in a persistent heap, rather than using a database. Tim talks about deploying Java EE and letting the JVM “sweat the concurrency”, which is great till you run out of heap. Terracotta lets you scale out beyond that to a large cluster of JVMs and even move from relying on a dbms, if you’re willing to think in a new way. (You are of course, still welcome to use a dbms to share state among the cluster if you want, but Terracotta opens some interesting new doors.)
I think right now we are definitely at an interesting point in terms of programming and concurrency. I’m certainly far from the first to point this out – seems to be all the rage lately. I’m no expert but I’m doing my best to immerse myself in it right now trying to understand things a notch or two deeper.