R vs Python: R's out of top 20 programming languages despite boom in statistical jobs

Is R usage among developers declining because of Python?

Python's rise asks questions of JavaScript's dominance Rise in queries driven by interest in Python and community of new programmers.

Statistical programming language R has fallen off Tiobe index's list of the 20 most popular languages, having spent three years in the top tier. 

Tiobe now places R in 21st position and suggests the language isn't benefiting as much as Python from the boom in data science and machine learning. 

Both languages have become popular among data analysts and data scientists after emerging in the 1990s and filling demand for machine learning and handling large datasets. 

Anyone who can benefit from using programming languages will need to weigh up which is the best route to take, given the considerable investment in time and energy it takes to learn a new language. Tiobe is one of the indexes that some developers believe should be used to make this important decision for employability. 

SEE: How to build a successful developer career (free PDF)

Python is considered a more general language than R, which is purpose-built for large datasets and statistical analysis, yet multiple language indexes have detected a decline in R's popularity, despite the growth of machine learning. 

"The main reason why Python is preferred to R is because Python is a real generic programming language with a very large user community," Tiobe's CEO Paul Jensen told ZDNet. 

"Almost every professional software engineer has some knowledge in Python but not in R. So if you want to do some serious stuff in the statistical domain professional software engineers will use Python. R is limited to field experts in the domain of statistical engineering and that is a more restricted set of people."

IEEE Spectrum's index last year noted that R peaked at fifth position in 2016, fell to sixth spot in 2017, and then fell again to seventh in 2018. 

The engineering magazine speculated that Python's ascent and R's decline could be down to the growth in high-quality Python libraries for statistics and machine learning, in turn making it a more attractive starting point than specialized R. 

As Netflix engineers pointed out last week, Python adoption among developers has been spurred by a growing ecosystem of handy software libraries like NumPy and SciPy, which it uses to perform numerical analysis for its failover services. 

The video-streaming giant uses Python for everything that delivers content to users, from managing devices in its content distribution network to recommendations and building security tools. 

Developer analyst Redmonk also noted a two-spot fall in R's ranking last August but the company cautioned not to place too much importance on this move since R had dropped two spots previously and bounced back after that. 

R's specificity would keep it outside the top 10 languages, but also keep it relevant in the field it was built for, Redmonk analyst Stephen O'Grady argued

Tiobe analysts contend that R's decline in its index signals a consolidation of the market for statistical programming languages, and the winner of this shift is Python. 

"After having been in the top 20 for about three years, statistical language R dropped out this month. This is quite surprising because the field of statistical programming is still booming, especially thanks to the popularity of data mining and artificial intelligence," Tiobe notes

"It seems that there is a consolidation going on in the statistical programming market. Python has become the big winner. A possible reason for this is that statistical programming is finding its way from university to industry nowadays and Python is more accepted by the industry." 

The company's rankings are based on search-engine results related to programming language queries. While it is considered by some developers as a useful gauge to what languages to learn, some users of Y-Combinator's Hacker News site are suspicious of the results produced by its search-engine based methodology.  

Nonetheless, as a general rule, Tiobe's top 10 isn't wide of the mark compared with other indexes, like IEEE Spectrum or PYPL. The current top 10 in Tiobe's index in descending order are Java, C, C++, Python, VB .NET, C#, JavaScript, SQL, PHP, and Assembly Language. 

tiobemay19.jpg

Tiobe reckons R's disappearance from its top 20 signals a consolidation in statistical programming languages, and the winner of that shift is Python.

Image: Tiobe

More on programming languages