This year’s Stack Overflow Developer Survey results provided a useful insight into how the programming language ecosystem is evolving. Perhaps the most remarkable – if unsurprising – insight was the continued and irresistible rise of Python. This year, for the first time, it finished higher in the rankings than Java.
We probably don’t need another sign that Python is taking over the world, but this is certainly another one to add to the collection.
What we already know about Python’s popularity as a programming language
Okay, so the Stack overflow survey results weren’t that surprising because Python’s growth is well-documented. The language has been shooting up the TIOBE rankings, coming third for the first time back in September 2018.
The most recent ranking has seen it slip to fourth (C++ is making a resurgence – but that’s a story for another time…), but it isn’t in decline – it’s still growing. In fact, despite moving back into fourth, it’s still growing at the fastest rate of any programming language, with 2.36% growth in its rating. For comparison, C++’s rate of growth in the rankings is 1.62%.
But it’s not just about TIOBE rankings. Even back in September 2017 the Stack Overflow team were well aware of Python’s particularly astonishing growth in high-income countries.
Read next: 8 programming languages to learn in 2019
Python’s growth in the Stack Overflow survey since 2013
It has been pretty easy to trace the growth in the use of Python through the results of every recent Stack Overflow survey. From 2016, it has consistently been on the up:
- 2013: 21.9% (6th position in the rankings)
- 2014: 23.4% (again, 6th position in the rankings)
- 2015: 23.8% (6th)
- 2016: 24.9% (6th)
- 2017: 32% (moving up to 5th…)
- 2018: 38.8% (down to 7th but with a big percentage increase)
- 2019: 41.7% (4th position)
But more interestingly, it would seem that this growth in usage has been driving demand for it. Let’s take a look at how things have changed in the ‘most wanted’ programming language since 2015 – this is the “percentage of developers who are not developing with the language or technology but have expressed interest in developing with it:”
- 2015: 14.8% (3rd)
- 2016: 13.3% (4th)
- 2017: 20.6% (1st)
- 2018: 25.1% (1st)
- 2019: 25.7% (1st)
Alongside that, it’s also worth considering just how well-loved Python is. A big part of this is probably the fact that Python is so effective for the people using it, and helps them solve the problems they want to solve.
Those percentages are growing, even though it didn’t take top position this year (this is described by Stack Overflow as the “percentage of developers who are developing with the language or technology and have expressed interest in continuing to develop with it”):
- 2015: 66.6% (10th position)
- 2016: 62.5% (9th)
- 2017: 62.7% (6th)
- 2018: 68% (3rd)
- 2019: 73.1% (2nd, this time pipped by Rust to the top spot)
What’s clear here is that Python has a really strong foothold both in the developer mind share (ie. developers believe it’s something worth learning) and in terms of literal language use. Obviously, it’s highly likely that both things are related – but whatever the reality, it’s good to see that process happening in data from the last half a decade.
What’s driving the popularity of Python?
The obvious question, then, is why Python is growing so quickly. There are plenty of theories out there, and there are certainly plenty of blog posts on the topic. But ultimately, Python’s popularity boils down to a few key things.
Python is a flexible language
One of the key reasons for Python’s growth is its flexibility. It isn’t confined to a specific domain. This would go some way of explaining its growth – because it’s not limited to a specific job role or task, a huge range of developers are finding uses for it.
The growth of data science and machine learning
While Python isn’t limited to a specific domain, the immense rise in interest in machine learning and data analytics has been integral to Python’s popularity. With so much data available to organizations and their employees, Python is a language that allows them to actually leverage it.
Python’s easy to learn
The final key driver of Python’s growth is the fact that it is relatively easy to learn. It’s actually a pretty good place to begin if you’re new to programming.
Going back to the first point, it’s precisely because it’s flexible that people that might not typically write code or see themselves as developers could see Python as a neat solution to a problem they’re trying to solve. Because it’s not a particularly steep learning curve, it introduces these people to the foundational elements of programming. Something which can only be a good thing, right?
The future of Python
It’s easy to get excited about Python’s growth, but what’s particularly intriguing about it is what it can indicate about the wider software landscape. That’s perhaps a whole new question, but from a burgeoning army of non-developer professionals powered by Python to every engineer wanting to unlock automation, it would appear that the growth of Python both a response and a symptom of significant changes.