Programming languages: Python developers reveal what they use it for and their top tools

New global survey shows that Python developers love machine learning, but just don't call them data scientists.
Written by Liam Tung, Contributing Writer

Data science is often cited as one of the main reasons for Python's growing popularity. But while people are definitely using Python for data analysis and machine learning, not many of those using Python actually identify their role as data scientist in the Python Software Foundation's (PSF) new 2019 developer survey, which was carried out by IDE-maker JetBrains. 

Salary growth for data scientists has cooled over the past two years, which could be why only a third respondents to PSF's annual developer survey who are involved in data analysis and machine learning say they are a data scientist. 

The survey is based on responses from 24,000 Python developers from 150 countries.

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

In PSF's 2017 report, it reported that most people thought Python was primarily used for web development. But it contended that "while this was true a couple of years ago, today the number of Python data scientists is growing rapidly and is already on par with the number of web developers".

Back then, PSF argued that anyone whose primary job involved data analysis or machine learning was counted as a data scientist, without asking participants to state whether they consider themselves a data scientist – which Harvard Business Review in 2012 crowned the "sexiest job of the 21st century". 

PSF hasn't asked whether people consider themselves a data scientist in its past two annual developer surveys. In 2018, people who said they were a data scientist were among the 12% in the 'Other' category, while the vast majority of respondents simply identified themselves as developers.   

For the 2018 report, 59% of respondents stated they used Python for data analysis, followed by 52% who said they used it for web development.

The order hasn't changed this year, with data analysis remaining Python's top purpose at 59%, followed by web development at 51%, and machine learning at 40%.  

Other major applications of Python include DevOps and system administration (39%), programming web tools like crawlers (37%), software testing (31%), education (26%), software prototyping (25%), network programming (21%), desktop development (18%), computer graphics (14%), embedded system development (8%), game development (7%) and mobile development (6%).

However, at 28%, web development remains the top purpose when respondents were asked what they used Python for the most. It is followed by data analysis (18%), machine learning (13%), and DevOps, and system administration (9%). 

Good news given that the final version of Python 2 was just released, the survey found that 90% are using Python 3, up from 84% in 2018. Of those still on Python 2, 45% are using it for web development, and 41% are using it for DevOps and system administration. PSF speculates that web development's dominance in Python 2 is because of legacy code. 

Which cloud platform do Python developers prefer most? Not surprisingly, Amazon Web Services dominates with a share of 55%, followed by Google Cloud Platform with a 33% share. 

A further 22% of Python developers use DigitalOcean, and 20% use Heroku. Microsoft Azure comes in at fifth place with a 19% share while 12% use PythonAnywhere. 

Microsoft clearly has room to grow and, according to PSF, it did grow four percentage points over the past year. Microsoft has also been providing free tutorials for budding Python developers and encouraging them to use Azure. Meanwhile, Google Cloud Platform grew two percentage points. Digital Ocean and Heroku have lost share.     

SEE: Data science interest spikes with COVID-19: Here are the online courses to get you started

The top three sources for Python installation and upgrades are the operating system, followed by python.org, and Anaconda. Some 68% of Python developers are building on Linux, followed by Windows at 48%, while macOS has a 29% share.  

The top web frameworks for Python are Flask and Django, while the leading data-science frameworks and libraries are NumPy, Pandas, Matplotlib, SciPy, SciKit-learn, TensorFlow, Keras, Seaborn, and Facebook's PyTorch, and NLTK.  

The PyCharm integrated development environment (IDE) from JetBrains is once again the top IDE with a 33% share, followed by Microsoft's open-source cross-platform editor VS Code with a 24% share. 

Python adoption is often attributed to its moderate learning curve. The survey found that 44% of users have just two years' experience and 30% had three to five years' experience. 


Data analysis remains Python's top purpose, cited by 59% of respondents, followed by web development at 51%, and machine learning at 40%.

Image: Python Software Foundation/JetBrains

More on Python and programming languages

  • Microsoft: Our new free Python programming language courses are for novice AI developers  
  • Goodbye Python 2 programming language: This is the final Python 2.7 release  
  • PyCharm: Here's what Python programming language developers get in new IDE update  
  • New programming language rankings: Python now as popular as Java, as TypeScript climbs  
  • Programming languages: Java developers flock to Kotlin and ditch Oracle JDK for OpenJDK  
  • Programming language popularity: Apple's Objective-C tumbles down the rankings  
  • Programming languages: Go and Python are what developers most want to learn  
  • Know Python language and up for a 'hardcore' coding test? Get in touch, says Tesla  
  • Java or C++, Full stack or Front end: The programming languages and developer jobs that pay you the most  
  • Google reveals new Python programming language course: Scholarships for 2,500  
  • Microsoft boosts programming language Python's popular VS Code extension  
  • Programming language of 2019? Python beaten by trusty old C  
  • Programming language Python's popular extension for Visual Studio Code revamped  
  • Programming language Python 2.7 code is now frozen: Last release coming in April  
  • Netflix: Our Metaflow Python library for faster data science is now open source  
  • Tech jobs: Python programming language and AWS skills demand has exploded  
  • Python programming language creator retires, saying: 'It's been an amazing ride'
  • Programming languages: How Instagram's taming a multimillion-line Python monster
  • Salesforce: Why we ditched Python for Google's Go language in Einstein Analytics  
  • Microsoft: We want you to learn Python programming language for free
  • JPMorgan's Athena has 35 million lines of Python code, and won't be updated to Python 3 in time TechRepublic
  • Mozilla's radical open-source move helped rewrite rules of tech CNET
  • Editorial standards