10. Adaptability for modern architectures is key. David Goodger says that the Python team invests a great deal of time in improving multicore performance. Earlier versions of Pythons could handle threads, but threads were still bound to a single core. That changed after researchers with big data sets pushed for better performance that can take advantage of the hardware.
If your applications are naturally multithreaded, then watch the development of these core-savvy languages. If the work you do is limited to a single thread, well, look elsewhere for performance.
The one Highlander
These principles don't lead to one clear answer for the path of dynamic languages and Web development. The real answer may be that anyone can choose any of the languages as long as they make sure they track and navigate these 10 themes.
For instance, simplicity is an important theme as developers move toward elegant solutions. Ruby on Rails is quite popular because of the straightforward syntax and the tight integration with the database. The best frameworks that speed the development of complex, database-driven applications will triumph. But then, we already knew that.
Many other dynamic languages are already borrowing some of the best concepts from Rails. The Java programmers, for instance, can turn to Grails, a simple framework built on top of Groovy and a JVM.
Slashdot co-founder Rob Malda, who chose to build the site on Perl because of all the good libraries in the CPAN repository, sees the features that attracted him to Perl in nearly every dynamic language today.
"Down the road it seems unlikely that we'd rewrite in Perl, but I have no real guess as to what we would rewrite in," he said. "I suspect Rails would be fast enough in five years to consider it, but who knows?"