Productivity research material

You have the answer to this question on your project already.

Take each of the languages you are interested in and ask each individual to rate themselves in that language from 1 to 5, with 1 being a novice and 5 being an expert in said language. Then tally up each language, whichever language has the highest level is the most productive language for your group.

If you are making a web app, strongly consider Ruby. If you are making a thick client, strongly consider C#. If you are just trying to make money consulting, use Java.


Here's a C++ vs Java study.

Here's a semi-scientific study of Python/Django vs. C#.

And here's one on Java vs. C# vs. Ada.

Whatever languages you're interested in comparing, do a Google search for

study of [LanguageX] vs [LanguageY]

and see what you can glean.

But I agree with most everyone else that as long as you're in the right ballpark with your language selection, the rest of your productivity rests with the quality of your tools and people, not with whether you choose Perl or Python.


Been there, done that. This is the stuff religious wars are made of (in some places) ;-)

I doubt very much you will be able to come to a conclusive decision no matter how well you research the subject. All of the "platforms" you mention above have a lot of qualities and in the end, whichever direction you go, you'll have to compromise.

Don't exclude the option of using several different platforms depending on the circumstances (e.g. in one particular context I've regularly used C++ together with Java). There are many ways to skin a cat and interoperability is not by definition unmanageable.


This isn't science, but it's based on 28 years in the business, observing and participating in teams which used a huge array of technologies, from assembly up through a long list of higher-level languages, plus of course a litany of methodological silver-bullet-du-jours:

What really affects productivity is your people - specifically, how good they are, and how well led they are.

So if you're trying to pick a language or other technology, go for the one with which more of your team is competent. If that's a tossup, or if it's truly green-field, hire the best people you can find, and then pick the tech best supported by the vendors whose tech you'll be dependent on... or toss a coin.

Tags:

C#

Java