We had a polyglot moment in tech, when role-specific databases or languages seemed to be gaining favor. That moment, however, is over. Not convinced? Just look at the relative stasis of programming languages. Despite an increasingly software-driven world, the languages we use to write that software has remained essentially the same for the tech equivalent of eons.
More of the same
Wondering what the top-10 most popular programming languages are, as measured by their incidence on GitHub and Stack Overflow? Redmonk just released the latest data, and uncovered the following list:
Cool. Now rewind five years to 2013:
SEE: Job description: Java developer (Tech Pro Research)
Not the exact same, of course, but remarkably consistent. Sure, languages have swapped places but despite tectonic shifts in cloud, AI/ML, mobile, etc. over the last five to 10 years, we still largely use the same languages. Redmonk analyst Fintan Ryan has visualized this consistency thus:
There are a few good reasons for the persistence of the leaders, one of which just comes down to how Redmonk counts, as Redmonk analyst Stephen O’Grady pointed out:
As always, the consistent performance of our Tier 1 languages – the top ten, more or less – is at once surprising and unsurprising. The relatively static nature of the top ten languages is interesting, certainly, in a technology landscape that is best characterized not by the high level of change but the increasing pace of same. Conversely, however, it’s important to note that the numbers measured are accretive, and as with financial metrics rates of growth are fastest when projects are new and harder and harder to come by over time. New language entrants are behind from the day they are released, in other words, which makes displacing the most popular languages a significant and uphill battle.
More succinctly, as Ryan posited: “This reflects the investment people make in learning a language and the reality that shifts in the languages that businesses use to develop software happens slowly.”
I wanna be average
It also reflects the reality that general purpose languages, and general purpose tech infrastructure in general, tends to win. Outside of programming languages, we see things like MongoDB and Microsoft’s CosmosDB beating out more niche-y alternatives by addressing a wide array of use cases. Enterprises and their developers prefer to learn a few, general purpose tools and apply them broadly, rather than follow the polyglot approach of learning a gazillion niche technologies to address a gazillion niche use cases.
SEE: DevOps: The smart person’s guide (Tech Pro Research)
There simply isn’t time or adequate pay-off for that investment.