
Empirical Analysis of Programming Language Adoption [pdf] (2013) - Multics
http://sns.cs.princeton.edu/docs/asr-oopsla13.pdf
======
Silhouette
The observations in this paper mostly seem to back up reasonable, yet rather
depressing, assumptions we might have made.

The choice of programming language for a project seems to be driven primarily
by the size of the surrounding ecosystem and developer familiarity, rather
than by any sort of technical merit in the language itself.

Also, at least among the studied population of developers interested in
creating SaaS, programmers appear to be far more interested in the ease of
bundling together other people's work to get something built quickly and
cheaply than they are in features that would promote attributes like
robustness, security, performance and scalability.

This may be due in part to a generally low standard of education and
understanding. Many developers indicated a desire for characteristics like
good performance and expressive power, yet then placed little emphasis on
language features that could actually achieve those things, and a lot of them
didn't even understand the most basic properties of and relationships between
some of the language features they were commenting on.

The most positive observation to me is that there remains a long and heavy
tail in most of the results, meaning objectively better languages can become
successful within a niche even if they aren't widely appreciated and may never
make it into the very small group of languages that dominate mainstream
software development.

~~~
tchauchkes
Who cares about the "technical merit" (which is a completely arbitrary
measure) of a language? There IS no "objectively better" language. Not
everything is on a scale ranging from 0 to LISP.There are different tools for
different jobs, each has performance characteristics along different
dimensions.

There is only one question that matters to developers: Is this productive?

By that measure, the language itself is a small part of the equation which
includes tooling, libraries, community, documentation, etc etc etc. This is
completely normal and not depressing. It's sane.

~~~
Silhouette
_Who cares about the "technical merit" (which is a completely arbitrary
measure) of a language?_

Anyone who wants to produce good software efficiently, one would hope.

 _There IS no "objectively better" language._

Of course there is.

Language A and language B let you write identical code to solve a problem
correctly, but language B does not admit a certain class of programmer error
where language A does.

Language A and language B let you implement identical designs, but in language
A you can do so concisely with direct semantic support, while language B
requires 5x as much code and a load of boilerplate idioms.

There _are_ different tools for different jobs, but sometimes there are also
better tools for doing the same job.

 _There is only one question that matters to developers: Is this productive?_

I'm not sure I agree with that, but in any case, it is purely the developer's
perspective. There are many other questions that might also matter to someone
who uses the software. Does it give the right answer? Does it run efficiently?
Is it safe? Will those things still be true next year? These things all affect
the value of the software, and if nothing else, that should make any
commercial developer consider whether a better product would be worth more in
the market.

~~~
cylvers
_There IS no "objectively better" language._

 _Of course there is._

I agree that that there are objectively better and worse languages. (brainfuck
is a kind of proof of conception for this, right?)

I think, however, that comparing languages is much more complicated and
difficult than most people allow for. Most comparisons are made on the basis
of a few issues that the comparator happens to care about, ignoring many other
possible methods of comparison.

We've all experienced this when advocate of language x completely misses the
point in his critique of our own favorite languages. These reductionist
comparisons naturally lead to distrust of all comparisons of languages.

Knowing that there are better and worse languages does not necessarily give us
the ability to determine which languages are better and which are worse.

------
davidw
I'm not sure their sources were that much better than what I had with
langpop.com although they certainly go more in depth.

------
tylermauthe
This is an analysis of adoption from 2000-2010.

------
michaelochurch
I don't buy the claim that older developers "forget" languages. Instead, our
standard for what it is to "know" a language goes up and the number of
languages we claim to know remains constant.

I've known some engineers to argue that the number of languages on a CV is
negatively correlated to the quality of the candidate.

~~~
Silhouette
I've been reviewing CVs recently, and there is a striking negative correlation
between a candidate's amount of experience and the number of specific
languages or tools they choose to highlight.

It's also quite striking how the younger and less experienced candidates often
have a first page that is pure keyword stuffing now, while older and more
experienced ones tend not to. My suspicion is that the younger candidates
expect to have to get past a computer and then HR before encountering anyone
who knows what they're talking about technically, while stronger candidates
tend to start from the technically competent end via a contact in their
network and only expect to deal with HR right at the end of the process to dot
i's and cross t's.

~~~
jared314
> My suspicion is that the younger candidates expect to have to get past a
> computer and then HR before encountering anyone who knows what they're
> talking about technically

As someone who is currently reworking their resume, I can say your suspicion
is correct. If I don't know someone in or around a company I am interested in,
or I don't have a target company, I expect to be treated like a random person
off the street. That means submitting my resume to some email / web form; then
having it parsed and stored in their applicant tracking system until HR does a
search using the job description keywords. Only after a sufficiently high
percentage keyword match would I expect someone from HR to begin their process
with some kind of form letter email.

It's like what happened with automated phone systems and ATMs. I no longer
expect a person to answer.

