Welcome | Sign In
TechNewsWorld.com
News

The Tower of Techno-Babel: What Languages Do Devs Love Now?

Print Version
E-Mail Article
Reprints
The Tower of Techno-Babel: What Languages Do Devs Love Now?

What languages are enterprise IT developers falling in and out of love with? Your answer depends on whom you ask and whose figures they're looking at. Business needs, the rise of Web 2.0 and even economic factors can all impact the popularity of one language over another.


IT developers are moving toward higher-level languages that make their work simpler in order to keep up with business needs.

That simplicity is found in lingos such as Java, C Sharp (C#), Visual Basic and .Net.

However, even those languages are sometimes not simple enough for the Web 2.0 world, spurring developers to also turn to dynamic languages such as PHP and Ruby, which can provide a faster return on development efforts.

Keep It Simple

Simplicity equals speed in application development, and that speed is being driven by the move to Web 2.0.

"There's a desire to build applications fast because of the speed of Internet time," IDC analyst Al Hilwa told TechNewsWorld. "People have moved to rapid development because no one knows how long new applications will survive."

The recession is also forcing the move toward simplicity, according to Shaun Connolly, vice president of product development at enterprise Java application framework vendor SpringSource.

"When times are high, languages get more complex, and when there's a recession ... jobs are cut and everybody goes for simpler languages," he told TechNewsWorld.

Who's on First?

Depending on the source, Java is either the No. 1 or No. 2 programming language in terms of popularity among IT developers.

IDC surveys show Java is the most widely used language, according to Hilwa. "Java is a nose ahead of .Net from a lot of the surveys we see," he said.

However, Dutch firm Tiobe, which puts out a monthly index ranking programming languages by their popularity, ranked Java and C Nos. 1 and 2, respectively, in March. Tiobe searches the Web for its data. It calculates the popularity of a language by the number of lines of code developers write.

Another site that rates programming languages, LangPop, ranks C as the clear leader over Java for the top slot. This ranking comes from its normalized search results, obtained by using various search engines and examining various Web sites.

On Tiobe and LangPop

Tiobe bases its ratings on three factors: the number of skilled engineers worldwide; the number of courses run in the various programming languages; and the number of third-party vendors working in those languages.

Both Tiobe and Lang Pop search the Web to get their results.

LangPop counts the number of people developing code in a particular language rather than lines of code, because languages like C have more lines of code than shell scripts.

One should take these figures with a grain of salt, however. Tiobe's methodology is faulty, if you ask Tim Bunce, who wrote and maintains the PERL DBI module, the standard database interface for PERL. Meanwhile, LangPop says its own methodology is not scientific.

The Power of Microsoft

Microsoft's (Nasdaq: MSFT) programming languages are deeply entrenched in the enterprise.

"Yes, Java is the developers' tool of choice, and the majority of new programs are now written in Java, but there's a massive set of Microsoft Windows developers," Wayne Kernochan, president of analyst firm Infostructure Associates, told TechNewsWorld.

The power of the installed base of Microsoft developers can be seen in the March index of programming language popularity from Tiobe. C++ comes in third, PHP fourth, Visual Basic fifth, Python sixth and C# seventh.

Meanwhile, .Net is gaining ground on Java as Microsoft continues its drive to penetrate the higher levels of the enterprise. "In very large firms, it's not unusual to find both .Net and Java development shops side by side," IDC's Hilwa said.

Java and .Net are both frameworks with a set of libraries, routines, and runtime code that gets compiled, Hilwa said.

Java's Slow Slide Downward

Microsoft's strength in the enterprise may keep .Net around for a while, but Java's position may be challenged by its own complexity.

"Java and its variants like Perl, Ajax, Python and Ruby, which effectively generate Java code, are unnecessarily low-level languages," Infostructure Associates' Kernochan said. "Adopting Java was, until recently, a step back in programmer productivity." [*Editor's note]

That has led to programmers adopting drag-and-drop tools that hide Java's complexity and let developers do rapid prototyping, Kernochan added.

"Programmers want to write browser applications and Internet architecture applications, and for that, the .Net framework per se has not so much to offer," noted IDC's Hilwa. "Java is also being ... displaced slowly, because the browser side of things is becoming more popular and the browser is now becoming the application."

IBM (NYSE: IBM), for example, has a project codenamed "Opus Una," which is built around the browser as an application platform.

Dynamic Languages

The increasing need for simplicity and even faster application development to keep up with the move to Web 2.0 has led to the rise of dynamic languages such as Ruby, Groovy, Python and PHP.

These dynamic languages make programming more flexible and let developers abstract and write even higher-level code so that they do not have to worry about memory management and other low-level issues, Hilwa said.

However, dynamic languages are not a panacea. "They could create code that's difficult to read, that's not so structured and that's difficult to maintain," Hilwa said. "But they tend to be more productive, so you end up with a lot less code and write code more quickly."

PHP is the most widely used dynamic language because it is simple and can keep up with the demands of Web application development, Hilwa added.

Ruby is also widely used, especially on the Rails framework.

"My indications are that there is a significant trend towards Ruby on Rails from vanilla Java, Perl and SmallTalk, and, possibly from Python," Infostructure Associates' Kernochan said.


*ECT News Network editor's note: In email correspondence elaborating on his comments for this article, Wayne Kernochan told TechNewsWorld, "Ajax (although strictly speaking this isn't a programming language), Perl, Python and Ruby (the main names mentioned by Java developers) should be viewed as part of the overall Java movement -- that is, the code written is different but the code generated is effectively Java. They are in reaction to many of the obvious shortcomings of Java as a programming language, and so developers will move back and forth between these and 'vanilla' Java development tools as appropriate."


Print Version E-Mail Article Reprints More by Richard Adhikari


Talkback: Join the Discussion.
absolutely no idea...
nonecms
Posted 2009-05-04
What about other platforms that are trendy at the moment. In these times of crisis I have ...
Clarification
Wayne_Kernochan
Posted 2009-04-29
The commenters are quite correct that Ajax is not a "programming language" and that ...
A new low
DRDJ
Posted 2009-04-29
Everyone involved in this article should be banned from future articles. Where did these people ...
Article Validity
mybura
Posted 2009-04-29
I concur with rfreedman. ...
Re: Author clearly isn't familiar with the subject
tiger12506
Posted 2009-04-28
Also, with all due respect, I must agree. ...
Author clearly isn't familiar with the subject
rfreedman
Posted 2009-04-28
With all due respect, Mr. Adhikari clearly has no idea what he is writing about, and in this ...

More by Richard Adhikari

Can Spam-Swamped Ping Survive Without Facebook?
September 03, 2010
Apple and Facebook are reportedly grappling over the ability of Ping, Apple's new iTunes-related social network, to integrate certain features with the social networking giant's platform. Facebook's reservations about letting Ping use its APIs to hook into various facets of its meganetwork may be rooted in worries about spam and other social irritants with which Facebook is all too familiar.
Samsung's Galaxy Whirls Into the Tablet Universe
September 02, 2010
After many weeks of rumors and speculation, Samsung has officially unveiled its Galaxy Tab, a tablet device running the Android mobile OS. While smaller than an Apple iPad, the Galaxy Tab features front and rear cameras, a 1 GHz processor and the ability to be used as a phone via either speakerphone or a Bluetooth headset.
Apple Reprograms TV
September 01, 2010
After announcing new versions of iPods, iTunes and iOS, Apple CEO Steve Jobs turned to his company's so-called hobby Wednesday and shared a major update to Apple TV. The new unit will feature revamped hardware that streams rentals over the Web or content over a home network, rather than storing it locally. He also announced new rental options for iTunes.
Don't miss a story -- sign up for our FREE e-mail newsletters and view the latest headlines at a glance.
Tech News Flash [ View Sample ]
E-Commerce Minute [ View Sample ]
ECT News Network Weekly Newsletter [ View Sample ]
Shortcuts
ECT News Network Information
Reader Services
Corporate
ECT News Network