Top 10 Programming Languages: May 2017

May 2017 ยท 3 minute read

Languages Logo This month’s list contains HTML and CSS for the first time. JavaScript, Java, and Python remain the most popular languages. C and its derivatives score highly, and the Apple ecosystem languages, Swift and Objective-C continue to improve in the rankings.

Following are the top 10 languages in May 2017, using the RSIPL formula:

RankLanguageRSIPLUp/Down
1.JavaScript83.8+1.8
2.Java80.3+6.7
3.Python50.7-4.5
4.C#33.2-1.4
5.SQL32.3-2.1
6.HTML31.8N/A
7.PHP29.4-5.0
8.C++23.5-1.5
9.CSS19.4N/A
10.C18.6+1.7
11t.Swift13.8+0.9
11t.Objective-C13.8+1.2

This month, I decided to include HTML and CSS for the first time, since many people consider them languages (the ‘L’ in HTML even stands for the word ‘Language’). However, because many people do not consider them fully featured languages, in the same sense as the others on this list, I have expanded the list two extra spots. Although HTML and CSS are devoid of many basic programming language features, such as conditional logic, and despite the fact that they are not entirely useful on their own (i.e., they are typically used in support of each other, and in conjunction with JavaScript), their popularity is nonetheless interesting and useful to gauge, so I have decided to include them in the list.

RSIPL Criteria

The Relative Strength Index for Programming Languages (RSIPL) is a metric I devised and first published starting in March 2017. RSIPL was created after reading several similar articles and lists. The ranking methodology that most other lists use is based upon the popularity of the languages on Github (measuring “code”), and on StackOverflow (measuring “discussion”). As good as these lists are, I feel that they are perhaps less timely than they could be, and that they are missing a third critical piece of the puzzle: job postings.

I am sure there are many who look at these lists and wonder what the potential is for landing a job if they invest their time and effort into learning one or more of these languages. Because of this, I felt it important to reflect this in the score. By using job postings as a criteria, the list reflects what I feel is a pragmatic view into the popularity of languages.

Another important note regarding RSIPL: the rating attempts to reflect popularity based on current activities, rather than cumulative popularity over the years. To achieve this, I looked at recent Stack Overflow tags, recent GitHub activity, and recent job postings from both Indeed and Dice. The job postings were blended together to form one aspect of the score.

So, to summarize, this ranking is intended to reflect very recent activity from the perspective of Open Source code activity, tagged discussions, and job postings. Each criteria was normalized on a scale of 0-100. Results were then averaged for each language.

While I feel RSIPL does a better job at capturing current popularity of programming languages than other lists, it is far from perfect. Although job postings do add a meaningful aspect to the analysis, it is somewhat flawed, because job postings tend to lag behind the latest and greatest trends, as industry is typically slow to respond to change. In addition, there will always be jobs related to corporate legacy systems that will also skew such ratings. But to counter that argument, even though there are jobs available for legacy technology, they are still jobs nonetheless, and they still do reflect on the popularity of a given language (so COBOL programmers take heart!).

I intend on posting RISPL ratings over time, perhaps monthly. I also intend to revise the index as better data becomes available. Hopefully it is helpful to some in its current form.


Reader Comments

none yet.

by Gene Loparco