JetBrains logo

Python Developers Survey 2023 Results

This is the seventh annual official Python Developers Survey, conducted as a collaborative effort between the Python Software Foundation and JetBrains.

Responses were collected in November 2023 – February 2024, with more than 25,000 Python developers and enthusiasts from almost 200 countries and regions taking part to illuminate the current state of the language and the ecosystem around it.

Check out the Python Developer Survey results from 2022, 2021, 2020, 2019, 2018, and 2017.

Share:

General Python Usage

Python as main vs secondary language

85%

Main

15%

Secondary

Python usage with other languages100+

202120222023
40%37%35%JavaScript
38%36%32%HTML/CSS
33%31%29%Bash/Shell
33%34%31%SQL
30%29%25%C/C++
20%19%19%Java
11%11%12%C#
10%11%13%TypeScript
9%8%8%Go
9%9%7%PHP
6%7%7%Rust
5%6%5%R
4%4%4%Visual Basic
3%3%3%Kotlin
2%2%2%Ruby
2%2%1%Perl
2%2%2%Swift
2%2%2%Scala
1%1%1%Objective-C
1%1%1%Clojure
1%2%1%Groovy
1%1%1%CoffeeScript
1%Julia
1%Mojo
8%7%7%Other
13%14%17%None
040%

Currently, there's a rising interest in Go and Rust for crafting low-latency and memory-safe applications.

Python usage with other languages100+

35%

38%

JavaScript

33%

31%

HTML/CSS

32%

26%

SQL

29%

25%

Bash/Shell

23%

35%

C/C++

Paul Everitt
Web and Data Advocacy Team Lead at JetBrains

“The drop in HTML/CSS/JS might show that data science is increasing its share of Python.”

LinkedIn, Mastodon, X (formerly Twitter)

Languages for Web and Data Science100+

40%

44%

SQL

30%

36%

Bash/Shell

30%

62%

JavaScript

28%

53%

HTML/CSS

25%

14%

C/C++

19%

15%

Java

12%

27%

TypeScript

Web development refers to people who selected “Web development” in response to the question “What do you use Python for the most?”. Data science refers to people who selected “Data analysis” or “Machine Learning” in the same question.

How long have you been programming in Python?

25%

Less than 1 year

16%

1–2 years

26%

3–5 years

19%

6–10 years

13%

11+ years

How many years of professional coding experience do you have?

33%

Less than 1 year

16%

1–2 years

18%

3–5 years

15%

6–10 years

18%

11+ years

Sarah Boyce
Django Fellow

“Python is regularly recommended as a good programming language for beginners due to its readable syntax, wide applicability (from data science to web development), and great community.”

Mastodon, LinkedIn

37%

of Python developers reported contributing to open-source projects last year.

Marie Nordin
Community Communications Manager at Python Software Foundation

“This is a great number to look at and an encouraging result for the first inclusion in the survey. I’m looking forward to seeing how this trend develops year over year.”

X (formerly Twitter)

In the past year, how would you describe your contributions to open source?100+

77%

Code

38%

Documentation / Examples / Educational

35%

Maintainer / Governance / Leadership

33%

Tests

19%

Triaging issues or feature requests

13%

Community building / Outreach

2%

Other

34%

of Python developers report practicing collaborative development.

Where do you typically learn about new tools and technologies that are relevant to your Python development?100+

55%

Documentation and APIs

45%

YouTube

44%

Python.org

42%

Stack Overflow

41%

Blogs

28%

Books

19%

AI Tools

14%

Online coding schools and MOOCs

14%

Conferences / events

13%

Podcasts

Purposes for Using Python

In this section, we asked questions to find out what people use Python for, what types of development they are involved in, and how they combine their various uses.

For what purposes do you mainly use Python?

51%

Both for work and personal

28%

For personal, educational or side projects

21%

For work

Python usage by year100+

202120222023
51%51%44%Data analysis
45%43%42%Web development
36%36%34%Machine learning
27%Data engineering
36%34%26%DevOps / Systems administration / Writing automation scripts
31%30%25%Programming of web parsers / scrapers / crawlers
25%Academic research
26%25%23%Software testing / Writing automated tests
27%27%22%Educational purposes
21%Design / Data visualization
22%20%19%Software prototyping
19%19%15%Desktop development
18%17%14%Network programming
12%13%10%Computer graphics
10%9%10%Game development
8%MLOps
5%6%7%Multimedia applications development
7%8%7%Embedded development
6%6%6%Mobile development
7%6%6%Other
051%

Please note that in 2023 the list was expanded with new options.

Python usage as main and secondary language100+

44%

40%

Data analysis

44%

33%

Web development

34%

29%

Machine learning

28%

20%

Data engineering

26%

21%

Academic research

26%

26%

DevOps / Systems administration / Writing automation scripts

25%

23%

Programming of web parsers / scrapers / crawlers

What do you use Python for the most?

21%

Web development

10%

Machine learning

10%

Data analysis

9%

Academic research

9%

Educational purposes

7%

DevOps / Systems administration / Writing automation scripts

6%

Data engineering

To what extent are you involved in the following activities?

Web development

Data analysis

Machine learning

Data engineering

Academic research

DevOps / Systems administration / Writing automation scripts

Educational purposes

Software testing / Writing automated tests

Software prototyping

Design / Data visualization

Programming of web parsers / scrapers / crawlers

Desktop development

Network programming

Python Versions

Python 3 vs. Python 2

2023

2022

2021

2020

2019

2018

2017

Almost half of Python 2 holdouts are under 21 years old and a third are students. Perhaps courses are still using Python 2?

Python 3 versions100+

202120222023
2%Python 3.13
19%Python 3.12
31%Python 3.11
16%45%23%Python 3.10
35%23%11%Python 3.9
27%17%8%Python 3.8
13%9%3%Python 3.7
7%4%2%Python 3.6
2%2%1%Python 3.5 or lower
045%

Note: In 2023, Python 3.7 and below were at the end of their lifecycle. Python 3.12 was released in October 2023 (1 month before this survey began) and is already highly adopted. Developers using Python 3.13 from this survey are using an alpha release.

Almost 75% of users use the last 3 versions of Python. That's great news! The community has been adopting the latest versions of Python quite quickly on account of the performance and convenience improvements they offer.

Python installation and upgrade100+

31%

Python.org

24%

OS-wide package-management tool

17%

pyenv

16%

Docker containers

14%

Anaconda

5%

Build from source

4%

Automatic upgrade via cloud provider

Note: Enthought got less than 0.5% and has been merged to Others.

Frameworks and Libraries

Web frameworks100+

33%

Flask

33%

Django

30%

Requests

29%

FastAPI

20%

Asyncio

18%

Django REST Framework

12%

httpx

12%

aiohttp

8%

Streamlit

6%

Starlette

3%

Tornado

3%

web2py

3%

Bottle

3%

Pyramid

3%

CherryPy

2%

Falcon

2%

Twisted

2%

Quart

1%

Hug

5%

Other

23%

None

Please note that in 2023 the list was expanded with new options.

Web frameworks100+

36%

42%

Flask

31%

46%

FastAPI

31%

40%

Requests

26%

63%

Django

18%

29%

Asyncio

16%

4%

Streamlit

12%

43%

Django REST Framework

Web frameworks are used widely, including by 77% of data scientists and 97% of web developers.

Vladimir Sotnikov
Development Lead at the JetBrains Computational Arts Initiative

“While ML developers are less likely to use Django, a framework favored for full-scale web app development, their engagement with Flask and FastAPI, both suited for building RESTful APIs, is nearly as high as that of web developers. This suggests that ML professionals are actively involved in web development – but primarily through API-driven services rather than traditional website creation.”

LinkedIn, Google Scholar

You can find more about the Django landscape in the Django Developers Survey 2023, conducted in partnership with the Django Software Foundation.

Other frameworks and libraries100+

31%

BeautifulSoup

28%

Pillow

22%

OpenCV-Python

22%

Pydantic

17%

Tkinter

12%

PyQT

11%

Scrapy

Unit-testing frameworks100+

52%

pytest

25%

unittest

11%

mock

9%

doctest

5%

tox

5%

Hypothesis

2%

nose

Cloud platforms

Cloud platforms usage100+

202120222023
31%32%33%AWS
19%22%25%Google Cloud Platform
14%16%20%Microsoft Azure
7%9%11%PythonAnywhere
10%11%10%DigitalOcean
14%13%7%Heroku
4%Alibaba
3%4%3%Linode
3%Oracle Cloud
3%Hetzner
3%4%2%OpenStack
2%3%2%OpenShift
2%Tencent
1%2%<1%Rackspace
6%6%5%Other
39%34%33%None
<1%39%

Please note that in 2023 the list was expanded with new options.

Mukul Mantosh
Developer Advocate in Web and Data Advocacy at JetBrains

“After Azure introduced its OpenAI service, AWS and Google both moved quickly to release Bedrock and Gemini.”

LinkedIn, X (formerly Twitter)

Sarah Boyce
Django Fellow

“Google Cloud Platform is growing in popularity, particularly in the US where this is used by 38% of respondents and beats AWS as the number one cloud provider.

After Heroku eliminated its free product plans, its share of users dropped from 14% in 2021 to only 7% in 2023.”

Mastodon, LinkedIn

Jay Miller
Staff Developer Advocate at Aiven

“I feel major business decisions around pricing and acquisitions have played some role in where things are deployed.

Heroku's pricing decision seems to have taken a large hit but there wasn't a clear winner (maybe except PythonAnywhere) from that loss.”

LinkedIn, Kjaymiller

How do you run code in the cloud?100+

47%

Within containers

42%

In virtual machines

25%

Serverless

26%

On a platform-as-a-service

2%

Other

8%

None

Mukul Mantosh
Developer Advocate in Web and Data Advocacy at JetBrains

“Based on the CNCF survey of 2022, approximately 44% of users have transitioned most of their production workloads into containers, with an additional 9% still in the evaluation phase.”

LinkedIn, X (formerly Twitter)

45%

of Pythonistas say they use Kubernetes for running code in containers.

Which of the following do you use?100+

49%

Amazon Elastic Kubernetes Service

33%

Google Kubernetes Engine

21%

Azure Kubernetes Service

10%

RedHat OpenShift

16%

Other

Mukul Mantosh
Developer Advocate in Web and Data Advocacy at JetBrains

“I predominantly rely on Amazon EKS for managing container workloads, as it offers seamless integration with AWS Services. Additionally, I've explored Google Kubernetes Engine (GKE), which provides a comparable experience. However, I found GKE Autopilot particularly appealing, as it handles cluster configuration, node management, scaling, security, and other predefined settings – all managed by Google.”

LinkedIn, X (formerly Twitter)

How do you develop for the cloud?100+

49%

Locally with virtualenv

38%

In Docker containers

23%

In virtual machines

20%

With local system interpreter

16%

In remote development environments

14%

Using WSL

10%

Directly in the production environment

2%

Other

Mukul Mantosh
Developer Advocate in Web and Data Advocacy at JetBrains

“I appreciate the convenience provided by the AWS Toolkit and Cloud Code Plugin for effortlessly building serverless applications. Moreover, frameworks like LocalStack enable you to execute your AWS applications or Lambdas entirely on your local machine, eliminating the need to connect to a remote cloud provider.”

LinkedIn, X (formerly Twitter)

Data Science

48%

of all surveyed Python developers are involved in data exploration and processing.

Tools for data exploration and processing

77%

pandas

72%

NumPy

16%

Spark

14%

Airflow

10%

Polars

9%

An in-house solution

7%

Dask

Jodie Burchell
Developer Advocate in Data Science Advocacy at JetBrains

“While pandas remains the core workhorse for data exploration and processing tasks, a minority of people are also using distributed data processing libraries such as Spark, Dask, and Ray, suggesting they are working with big data. Polars continues to grow in popularity as a way to handle larger datasets without leaving the local machine.”

LinkedIn, X (formerly Twitter), Mastodon, Blog

Libraries for creating dashboards100+

31%

Plotly Dash

28%

Streamlit

12%

Panel

12%

Gradio

4%

Voilà

13%

Other

26%

None

25% of respondents say they work on creating dashboards. Plotly Dash and Streamlit are the top two choices for such tasks.

32%

of all Python developers report they train ML models or generate predictions from them. scikit-learn and PyTorch are the top two solutions used for these tasks.

Frameworks for ML model training and prediction
100+

67%

scikit-learn

60%

PyTorch

48%

TensorFlow

44%

SciPy

30%

Keras

22%

Hugging Face Transformers

22%

XGBoost

Platforms for training100+

52%

Jupyter Notebook

11%

Amazon Sagemaker

10%

Cloud VMs with SSH

9%

AzureML

6%

Databricks

Jodie Burchell
Developer Advocate in Data Science Advocacy at JetBrains

“The fact that the majority of people working with machine learning are using scikit-learn and SciPy shows the strong role that classical machine learning and statistics still play in data science. However, deep learning libraries are also popular, such as PyTorch, Tensorflow, Keras, and Hugging Face Transformers, potentially reflecting the recent interest in generative AI and large language models.”

LinkedIn, X (formerly Twitter), Mastodon, Blog

Experiment tracking tools100+

26%

TensorBoard

19%

MLflow

12%

Weights & Biases

4%

CometML

4%

NeptuneML

2%

Other

12%

An in-house solution

44%

None

Google deprecated TensorBoard.dev (a service to publish tensorboard data in a single click) on January 1, 2024. We can expect other options to become more popular in 2024.

Tools for data versioning100+

14%

An in-house solution

7%

Dalta Lake

7%

DVC

4%

Pachyderm

3%

Other

69%

None

18%

of all surveyed developers work on ML deployment and inference.

Do you work with big data?

Jodie Burchell
Developer Advocate in Data Science Advocacy at JetBrains

“The minority of people who are not sure whether they work with big data reflects the fuzziness of this term, especially as personal computers get more and more powerful hardware.”

LinkedIn, X (formerly Twitter), Mastodon, Blog

Big data tools100+

36%

PySpark

6%

PyFlink

8%

Great Expectations

3%

PyDeequ

5%

Other

50%

None

Solutions used for work with big data100+

34%

Cloud

28%

Self-hosted

25%

Both

13%

None

Development Tools

Operating system100+

55%

Linux

55%

Windows

29%

macOS

2%

BSD

1%

Other

The share of developers using Linux as their development environment has decreased through the years: compared with 2021, it’s dropped by 8 percentage points.

Platforms and tools for deployment and inference100+

18%

Hugging Face