Web 2.0 is still quite the wild frontier, and it's not always clear which horse you should back in any race. Take programming languages; Ruby has been dominating Python for some time now. Things, however, may be changing. Google recently chose to support Python first for the Google App Engine, and our trends seem to show this fight isn't over yet.
Ruby is a dynamic, reflective general purpose object-oriented language designed in Japan. It supports multiple programming paradigms, and combines syntax inspired by Perl with Small-talk like features. Founder Yukihiro Matsumoto “wanted a language that was more powerful than Perl, and more object-oriented than Python,” so he developed Ruby.
Python is another multi-paradigm language conceived in the Netherlands. Simplicity and flexibility are central to the design of Python. Python was designed to encourage the creation of extensions, rather than having everything built into the language core, allowing programmers to customize it.
Until recently, Ruby has been greatly outpacing Python. Our oDesk job data shows that a year ago, Ruby jobs outnumbered Python jobs four-to-one. Today, that lead has dropped to approximately two-to-one.
One possible reason for Python’s recent surge is Google’s choice of Python for implementing its Google App Engine applications. Google’s App Engine allows you to run web applications on Google’s infrastructure, giving you stability and reliability, and also allowing you to utilize things like Google accounts.
The momentum appears to be with Python for now, and is likely to stay that way so long as Google favors the language. And since Python’s author, Guido van Rossum, works at Google, that’s not likely to change soon. This fight’s not over, as Python clearly has a lot of ground to make up on Ruby. But things seem to be going Python’s way today.