Rails will continue to grow at a dizzying speed, and Ruby will in consequence inevitably become one of the top two or three strategic choices for software developers. But at the same time, other frameworks and tool-sets are learning its lessons, so Rails will get some serious competition.
Now you may remember that I made my own prediction about Rails:
...the important point is that Rails peaked somewhere in the middle of 2006 and is now declining.
While I disagree with Tim on the future of Rails, I do agree with him on other frameworks learning the lessons of Rails:
All of that should not diminish Rails, but instead should put it in proper perspective. The real value in Rails was a singular, opinionated vision of how web development should be done. That vision moved the bar for the whole industry, which is quite an accomplishment. But there's nothing magical about Ruby, or Rails. All of the underlying concepts of Rails can be 'ported' to almost any other language, which is exactly what were seeing today, with Rails-like frameworks appearing in Python, Perl, etc. Rails success was defining the platonic solid for second generation web frameworks. Framework 2.0.
The differences between our predictions are that I said Rails would decline and not continue to grow at a dizzying speed - I made my prediction 14 months ago, and finally - my prediction is right. Here is a Google Trends chart for "ruby on rails", in which you clearly see that Rails peaked in the middle of last year.
Tim seems to be suffering from confirmation bias, what with all the Ruby and Rails conferences he's attending, and the company he's working for which is working very hard to find a future life for the JVM. I personally have my doubts about how fit the JVM is for anything but Java. For example, here is a quote off the Factor front page:
Factor began as a scripting language in a Java game project and quickly grew into a general-purpose language. While this was happening, the limitations of the Java virtual machine were making themselves apparent, and an effort to write a native Factor implementation with a minimal core in C was kicked off. The native implementation was bootstrapped from Java Factor, and soon thereafter native Factor became the de facto implementation, work on the Java implementation stopped.
A good check against confirmation bias is to pick an unbiased measure for your prediction ahead of time. I didn't choose Alexa ahead of time for my measure since its numbers can be questionable and open to gaming, but it appears in this case to confirm the Google Trends data.
So what have we learned? Tim's prediction is already wrong, unless there's some new and unusual definition of "grow at a dizzying speed" that means "shrink". We've learned to take any prognosticating that comes without a pre-selected unbiased metric of success with a huge grain of salt. Finally, we've learned that even the O'Reilly hype machine has its limits and can no longer keep the Rails ball in the air. Maybe next year they'll rewrite "RESTful Web Services" with all the examples in Scala.
Update: Michael Foord in the comments points out a similar flat-lining of Ruby in the TIOBE index. That would be three independent sets of data (Google Trends, Alexa, and TIOBE) that show at the very least that neither Ruby nor Rails are growing at a "dizzying speed". Note carefully that we aren't talking about predictions anymore. We're talking about Tim's statement that Ruby and Rails grew at a dizzying speed this year; the thing you have to believe is true before you can even get to the prediction.