Insights | My Programming Language Is Better Than Yours!

My Programming Language Is Better Than Yours!

By Andy Hilliard | December 18, 2012

Language matters. Which isn’t a surprise, really — even in that old Tower of Babel story, wasn’t it a surfeit of competing languages that somehow brought the tower build to a screeching halt?

What does surprise me though is how little time and consideration developers are willing to invest in choosing which programming language they should use to implement a software application. Too often, there seems to be some sort of default: “The CEO or CTO knows Java, so I guess that’s what we’ll use”; “PHP is good enough, so we’ll just use that”; “we’re a Microsoft shop, so we’re going to use dot net.”

Imagine my excitement then when I discovered that an objective study had been conducted by ISBSG to tell us which programming languages lead to programmers being more productive.

Unfortunately, the results don’t live up to the promise.

The study draws from a database comparing 6,000 different projects. It shows that Classic ASP, through the initial dot net implementation from Microsoft, is the most productive. After that comes Visual Basic, then Java, then a bunch of others.

But I couldn’t help thinking, “Wait, where’s PHP, where’s Ruby on Rails, where’s Python? What about niche-y languages like Scala or Erlang?” My initial feeling of excitement turned to disappointment when I realized the study didn’t really seem complete or part of the real world. For example, it lists PL/1 – and I don’t know anybody who still programs in PL/1.

I suspect what may have happened is that the study focused on key projects at large companies where those older languages have been used over a span of years.

But disappointments can be instructive too, can’t they?

In analyzing what’s lacking in the study, you realize maybe programming languages can’t be looked at in a vacuum. Maybe other elements of the software development process are more important than just what language you’re in: your ability to collaborate, say. Or your ability to quickly do iterations and focus on a few features at a time rather than having a really long development cycle.

I also think there are some languages that lend themselves more to a team approach than others – and this can affect productivity. Java, for example, and C++ – basically the compiled languages – enable you to have modules and libraries that can be shared more easily than, say, PHP. I actually know clients who have complained that it’s difficult for them to hire PHP programmers who can work in a team because so much of web development is done by just one or two programmers where there isn’t as much teamwork needed.

Who knows? If the study had taken into account the built-in code review and coding standards of languages like Java and C# — and process issues in general — maybe it might have felt more complete, maybe even useful.

Or maybe I’m just Babeling.

 

 

 


Interested in reading more?

More from Accelerance

September 13, 2022

Indispensable Insights: Your Go-to Guide for 2023 Software Outsourcing Management

A severe talent crunch and the pressures of the pandemic have resulted in software developer rates increase higher than ever in the last few years.

August 23, 2022

Holding Strong: Software Development Investment Dodges Cutbacks

In the havoc that is the tech sector, software development seems to be untouchable.

August 9, 2022

Don't Take Chances: How to Proactively Minimize Risk in Software Outsourcing

Outsourcing software development to nearshore or offshore teams is a strategy being adopted by companies in record numbers to build resiliency and create a competitive edge. 


How can we help you succeed?

We make outsourcing successful with innovative partner selection services and tailor-made consulting solutions to ensure your desired outcomes.

Let’s Get Started