Let’s peer back into my past :
I laughed at Oak when I was a C programmer - why would we want it. And why would Sun create a language - don’t we have enough of them already? (That language became Java.)
A while ago (measured in years) I had the opportunity to rewrite an app that was in PHP. In the process of making the choice - I made fun of Ruby - asking if someone had decided pick the most obscure language they could find and gotten it on the list. (If you follow the blog you know how I feel about Ruby now)
I once gave a presentation about how Web services would change the face of hosting and eliminate the need for mid market hosting. (I don’t know if you follow the hosting market but I can assure you - there is a lot of need for hosting of all flavors - that’s what I get for spending 2 days in Microsoft’s booth learning about Hailstorm.).
About four years ago, I was using a feature of Mozilla called XMLHttpRequest - it seemed really really useful. I didn’t get very far convincing anyone that it was going to be awesome. (That function is the basis of everything you know as AJAX)
My point with all of this is not that I can predict the future - quiet the opposite. I end up being a bit of Cassandra. Actually, I suppose it is more like I make predictions on opposite day. I have mocked a lot of technology that turned out to be useful ( eventually) .
So here’s my prediction ( I actually made this about 6 months ago but I forgot to put it up in the blog) - Erlang is going to be the next big thing.
It has some stuff going for it - terrible name, horrible syntax…. Oh wait - I’m supposed to be talking about the good right - well it is designed to handle concurrency and distribution. It can be fully fault tolerant. This means a lot in the future of always up. It will also end up being a big deal when everyone has to write apps that actually use 4 cores without just forking processes.
I saw my first proof that this is going to be the path - behold
Programming Erlang from the Pragmatic Programmers.
Lean how to write truly concurrent programs—programs that run on dozens or even hundreds of local and remote processors. See how to write high reliability applications—even in the face of network and hardware failure—using the Erlang programming language.
I originally started all this as a tongue in cheek joke - mostly to poke fun at the rise of Ruby and the special place Erlang/OCaml/Haskell have on programming.reddit.com. Now I’m making my prediction - so that one of two things can happen.
1) I break the curse - by predicting something that comes true I harness my power for good.
2) I stop the rise of Erlang by predicting that it will be successful. Since my predictions don’t come true, maybe I can stop this thing….