2017 has been half, recently xiaobian TIOBE programming language ranking in the first half of the language ranking analysis, found that compared to last year’s TIOBE programming language ranking, the trend of the first half of this year is very interesting.

Based on the data, let’s take a look at the top 10 TIOBE programming languages from January to July:

Java, C, C++, C#, Python hold the top five spots. Java still dominates the list, several blocks ahead of C. But there was a bright spot going into July when Go made it into TIOBE’s top 10 programming languages list.

Discovery 1: Java is on the decline

Java continues to dominate the list as the most widely used language by programmers. However, we found that the trend of Java has been on a downward trend through the analysis of Java usage index from January to July.

Java, after all the most widely used language by programmers, dropped to 13.774% from 17.276% in January, a shocking decline. Although the overall trend has been on the decline, the status of the big brother of programming languages has not been shaken. As programming languages become more and more diverse, will Java be replaced by other languages?

Point two: C and C++ trend flattens out, Python overtakes C#

In the top five, C and C++ continue to hold the second and third positions respectively. Python and C# fluctuated relative to each other: Python lagged behind C# until April, when it replaced C# in the top four since may.

C, C++, Python, and C# as the most popular languages should not have much of a trend overall. Chinese computer majors generally use C as the entry-level programming language. C is process-oriented and simple to get started with simple codes. C++ is probably the most difficult of the four. C# and Java are very similar in both syntax and compilation. Python, on the other hand, is an object-oriented interpreted language with a clean syntax that can be easily used to link various modules such as C/C++ together.

Go makes the top 10

As we head into July, we’ve found a dark horse to break into the top 10 programming languages: Go. Go language has been one of the most popular languages in recent years. The usage index has been soaring at the beginning of the year, and it is expected that it will be in the top 10 in the middle of the year.

As can be seen from the chart above, the trend of Go language has always been with great volatility. It started to rise in April, and the usage rate reached the highest 2.363% in July. Will the Go language in August give us a bigger surprise?

Point four: R language indicates disobedience

Go won the 2016 Programming Language of the Year award, but are there any new languages that can compete with Go? Out of curiosity, we compiled the top three growth rates from January to July 2017:

By combining statistics with the top 20 languages on the list, we found that the language that comes closest to Go is R. Let’s take a look at the trend chart of R language usage index from January to July.

R language is on the rise from January to July, with the highest usage index reaching 2.150%. Compared with the highest usage index of Go language in July of 2.363%, R language is still very competitive.

For the first half of the year as a whole, trends in Java, Go and R are what we need to watch for in the second half of the year. Go and R languages are still not mature enough to shake their positions in the top five in recent years. But whether R will succeed in displacing Go as the programming language of the year remains to be seen.

【 description 】

The TIOBE Programming Language Community Ranking is a monthly indicator of programming language trends based on the number of experienced programmers, courses and third-party vendors on the Internet. Ranking using well-known search engines (such as Google, MSN, Yahoo! , Wikipedia, YouTube, Baidu, etc.). Please note that this list only reflects the popularity of a particular programming language, not how good a language is or how much code is written in that language.

This list can be used to measure how up-to-date your programming skills are and as a language to choose when developing a new system.