This is the sixth annual official Python Developers Survey, conducted as a collaborative effort between the Python Software Foundation and JetBrains. Responses were collected in October–December 2022, with more than 23,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.
Main
Secondary
37%
40%
JavaScript
36%
38%
HTML/CSS
34%
33%
SQL
31%
33%
Bash / Shell
29%
30%
C/C++
19%
20%
Java
11%
10%
TypeScript
11%
11%
C#
9%
9%
PHP
8%
9%
Go
7%
6%
Rust
6%
5%
R
4%
4%
Visual Basic
3%
3%
Kotlin
86% of Python developers use other languages in addition to Python, with JavaScript, HTML/CSS, and SQL being the most popular.
37%
38%
JavaScript
37%
32%
HTML/CSS
35%
28%
SQL
32%
22%
Bash / Shell
27%
37%
C/C++
18%
28%
Java
10%
17%
TypeScript
10%
18%
C#
9%
14%
PHP
8%
11%
Go
6%
5%
R
6%
9%
Rust
4%
5%
Visual Basic
3%
6%
Kotlin
45%
50%
SQL
34%
66%
JavaScript
34%
41%
Bash / Shell
33%
60%
HTML/CSS
32%
19%
C/C++
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.
Unsurprisingly, JavaScript and HTML/CSS are the most popular languages among web developers, while SQL is the number one choice for data scientists.
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.
Both for work and personal
For personal, educational or side projects
For work
1 in 5 respondents uses Python only for work-related projects, while just over half combine it with personal projects.
51%
51%
Data analysis
43%
45%
Web development
36%
36%
Machine learning
34%
36%
DevOps / System administration / Writing automation scripts
30%
31%
Programming of web parsers / scrapers / crawlers
53%
44%
Data analysis
45%
31%
Web development
37%
29%
Machine learning
35%
34%
DevOps / System administration / Writing automation scripts
30%
28%
Programming of web parsers / scrapers / crawlers
Data analysis
Web development
Machine learning
DevOps / System administration / Writing automation scripts
Programming of web parsers / scrapers / crawlers
Educational purposes
Software testing / Writing automated tests
Software prototyping
Desktop development
Network programming
Computer graphics
Game development
Embedded development
Mobile development
Multimedia applications development
Other
22%
23%
Web development
18%
17%
Data analysis
12%
11%
Machine learning
10%
10%
DevOps / System administration / Writing automation scripts
9%
9%
Educational purposes
Those who use Python as their main language mostly use it for web development (23%).
As a secondary language, Python is most often used for data analysis (16%) and DevOps (14%), while web development comes in third place (13%).
This question was only answered by respondents who are involved in Data analysis and Machine learning.
About a third of pythonistas involved in data analysis and machine learning consider themselves data scientists.
2022
2021
2020
2019
2018
2017
More than 90% of respondents have already implemented Python 3, so can be said to have
already achieved mainstream acceptance.
The number of Python 2 users has remained nearly the same for the last 3 years, below 7%. Nevertheless, some people still use version 2 for data analysis (29%), computer graphics (24%), and DevOps (23%).
54%
29%
Data analysis
46%
19%
Web development
38%
13%
Machine learning
36%
23%
DevOps / System administration / Writing automation scripts
32%
13%
Programming of web parsers / scrapers / crawlers
45%
16%
Python 3.10
23%
35%
Python 3.9
17%
27%
Python 3.8
9%
13%
Python 3.7
4%
7%
Python 3.6
Please note that the survey took place October 14 – November 14, 2022, and Python 3.11 was only released on October 24, 2022.
of pythonistas say they don’t update their Python versions, and 6% report that somebody else manages their updates.
of respondents who use Windows install Python via python.org, while the most popular options for macOS and Linux users are the OS-provided Python, Python.org, Docker containers, and pyenv.
Note: Enthought got less than 0.5% and has been merged to Others.
Poetry is slowly becoming a more popular tool for Python environment isolation. Since 2020, it has added 6 percentage points. The tool looks promising given that some of its features are already implemented in core Python.
Python web framework usage is still a 3 horse race between Flask, Django, and FastAPI.
All the other frameworks combined would barely reach third place. FastAPI has added 4 percentage points since last year and now is used by 1 in 4 Python developers.
You can find more about the Django landscape in the Django Developers Survey 2022, conducted in partnership with the Django Software Foundation.
Though the top-3 frameworks have not changed compared to 2021, Requests has ceded 4 percentage points to httpx.
In general, bigger companies are more likely to use unit testing in their Python projects, and also adopt pytest and mock more widely, than smaller ones.
SQLAlchemy
Django ORM
Raw SQL
SQLObject
Peewee
Tortoise ORM
PonyORM
Dejavu
Other
No database development
MS SQL Server and Oracle Database are twice as popular among data scientists than among web developers, while the adoption of most of the other databases is much higher among web developers.
31% of Python developers use big data tools, marking a 6 percentage point increase since 2021. Among data scientists this number reaches 42%, who’d have thought?
of Python developers use cloud platforms – 5 percentage points more than last year.
This question was only answered by respondents who use cloud platforms.
Among pythonistas in Africa, Heroku is the most popular cloud platform, as it is used by 39% of developers there. The other languages developers use also affects their choice of platform.
Unsurprisingly, C# users use Microsoft Azure nearly as often as AWS. Go and TypeScript developers are the most active cloud platform users, with more than 80% of them using clouds.
47%
48%
Within containers
41%
41%
In virtual machines
27%
27%
On a Platform-as-a-Service
27%
24%
Serverless
2%
2%
Other
This question was only answered by respondents who use cloud platforms.
53%
56%
Locally with virtualenv
41%
40%
In Docker containers
20%
21%
In virtual machines
19%
17%
In remote development environments
18%
18%
With local system interpreter
This question was only answered by respondents who use cloud platforms.
Local development with virtualenv continues to fall in popularity, losing 7 percentage points since 2020. It is most commonly used by respondents who do web development with Python.
The usage of remote development environments is rising slowly but surely, adding 3 percentage points since 2020. It is most commonly used for machine learning, network programming, and DevOps.
Linux
Windows
macOS
BSD
Other
Compared to last year, the popularity of macOS and Windows has remained nearly the same, while Linux usage has decreased by 4 percentage points.
The popularity of GitHub Actions continues to grow, with more than a third of Python developers now using it.
The overall adoption of CI tools also rose by 4 percentage points compared to 2021.
of respondents use continuous management tools, with Ansible being the most popular, while 11% prefer to use some custom solutions.
Sphinx
MKDocs
Doxygen
Other
I don’t use any documentation tools
39% of pythonistas use a documentation tool, with the top choice, Sphinx, remaining unchanged from last year.
use autocompletion in your editor
use Python virtual environments for your projects
refactor your code
use Version Control Systems
use code linting
write tests for your code
use SQL databases
use a debugger
use optional type hinting
run / debug or edit code on remote machines
use Continuous Integration tools
use Issue Trackers
use code coverage
use a Python profiler
use NoSQL databases
Chosen by a combined two-thirds of the respondents, PyCharm and VS Code are the 2 top IDEs for Python development.
Only 14% of respondents use only one single IDE or editor, and the vast majority (61%) simultaneously use 2–3 IDEs or editors. 26% of Python developers prefer PyCharm as their additional IDE, and a quarter select VS Code.
To identify the most popular editors and IDEs, we asked a single-answer question “What is the main editor you use for your current Python development?”.
40%
44%
VS Code
25%
37%
PyCharm
3%
4%
Vim
2%
2%
Emacs
2%
3%
Sublime Text
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.
1
2
3
4
5+
of Python developers use tools to isolate environments between projects, with the 3 top solutions being venv, virtualenv, and Conda.
There’s been a 5 percentage point increase in the number of developers using virtual environments in containers since last year.
76%
81%
pip
29%
32%
venv (standard library)
26%
30%
Containers (eg: via Docker)
23%
22%
Conda
18%
23%
virtualenv
While the top 3 tools are still the same as a year ago, they are all slowly falling in popularity. Meanwhile, Poetry usage has increased by 2 percentage points.
The number of those using the standard library module venv has risen by 5 percentage points compared to 2021.
69%
76%
requirements.txt
33%
26%
pyproject.toml
25%
22%
poetry.lock
15%
16%
pipfile.lock
11%
11%
Conda environment.yml
Application dependency information storage in requirements.txt is becoming less popular, falling 7 percentage points compared to last year.
In the same time, pyproject.toml has risen by the same amount and is now used by a third of Python developers.
A lot of steady work went into pyproject.toml reaching feature parity, and it is now supported directly in pip.
of Python developers use tools for managing the versions of application dependencies. Poetry, pipenv, and pip-tools are the main tools used for this purpose, with nearly equal usage among developers.
of Python developers still manually update the versions of application dependencies, marking a 5 percentage point drop from a year ago.
poetry
pipenv
pip-tools
Other
None
This question was only answered by respondents who use some tools for managing precise/exact versions of application dependencies.
PyPI usage has declined by 7 percentage points, while the usage of all other methods of package installation is nearly the same as in 2021.
of pythonistas develop applications using Python, with Setuptools, Wheel, build, and Poetry being the most popular tools for this purpose.
This question was only answered by respondents who develop applications.
While more than half of Python users develop applications, only 41% of them have already published these apps to a package repository.
PyPI
Private Python Package Index
Internal mirror of PyPI
conda-forge
Other
This question was only answered by respondents who published their Python application packages.
of respondents have already developed and packaged Python libraries. The most popular solutions for this purpose are generally the same as for Python application development.
of the respondents who have developed their own Python libraries have already published them, primarily using PyPI or a private Python Package Index to do so.
This question was only answered by respondents who develop Python libraries.
59%
71%
Setuptools
39%
42%
Wheel
30%
26%
build
24%
20%
Poetry
8%
5%
conda-build
PyPI
Private Python Package Index
Internal mirror of PyPI
conda-forge
Other
This question was only answered by respondents who published their packaged Python libraries.
Interestingly, PyPI usage declined by 9 percentage points compared to last year, while the popularity of internal mirrors of PyPI has risen by 5 percentage points.
Work on own project(s) independently
Work in a team
Work as an external consultant or trainer
Work on one main and several side projects
Work on many different projects
Only work on one project
This question was only answered by respondents who are employed in companies.
2-7
8-12
13-20
21-40
40+
This question was only answered by respondents who are employed in companies.
This question was only answered by respondents who are employed in companies.
This question was only answered by respondents who are employed in companies.
This question was only answered by respondents who are employed.
18–20
21–29
30–39
40–49
50–59
60+
Less than 1 year
1–2 years
3–5 years
6–10 years
11+ years
Less than 1 year
1–2 years
3–5 years
6–10 years
11+ years
All countries/regions smaller than 1% have been merged into “Other”.
Want to dig further into the data? Download the anonymized survey responses and see what you can learn! Share your findings and insights by mentioning @jetbrains and @ThePSF on Twitter with the hashtag #pythondevsurvey.
Any of the following:
At least two of the following:
Once again, on behalf of both the Python Software Foundation and JetBrains, we’d like to thank everyone who took part in this survey. With your help, we’re able to map the landscape of the Python community more accurately!
Contribute to the PSF’s Recurring Giving Campaign. The PSF is a non-profit organization entirely supported by its sponsors, members & the public.
We hope you found our report useful. Share this report with your friends and colleagues!