The era of scripting languages is opening up programming to the masses and extending the Web as an application platform.
Even the traditional Java and Microsoft languages have had to make room for scripting languages, which offer developers a quick way to build Web applications and have gained multitudes of adherents. Indeed, programming technology powerhouses Microsoft and Sun both cite their own accommodations for these languages: Sun has opened up the Java Virtual Machine to support scripting languages, and Microsoft offers .Net-based versions of the Ruby and Python languages.
Developers overseeing these languages continue to map out improvements, and each cites benefits of their particular platform. Although all the scripting languages are similar, they do have differences in aesthetics and feel, says David Heinemeier Hansson, creator of the Ruby-based Ruby on Rails Web framework. "For certain people, Ruby is just what fits their brain and for other people, Python is just what fits their brain." But the underlying concepts and capabilities are essentially the same. "I think we're all generally in the same boat," he says.
Ease of use, flexibility are key drivers
The ease of use of scripting languages is a main attraction, says Michael Cote, an analyst at RedMonk. These languages also offer flexibility, he says. "Usually, with the dynamic language, you can change things a lot easier when it's running," Cote says.
Additionally, variables do not have to be defined ahead of time, says Andi Gutmans, co-CTO of Zend Technologies and a core developer of PHP. "You can easily concatenate strings with one another," and run an application without having to compile it, he says.
"The main difference compared to statically typed languages like C, C++, and Java is their dynamic nature, which is also one of the reasons why many people consider them to be more productive," Gutmans says.
Although scripting languages are hardly new, today's powerful computers make them viable platforms, says Joshua McAdams, a representative for the Perl Foundation. "The computers have grown to where they can handle the dynamic languages better," he says.
The flexibility of these languages also could be viewed as a strike against them, according to Cote. Scripting languages could be compared to a lawless society while Java would be authoritarian, he says. He also mentioned issues with maturity. "There's not necessarily the tools and practices," associated with the new languages, Cote says.