JetBrains logo

Посмотрите результаты опросов 2020, 2019, 2018 и 2017 годов.

Использование Python

Python в качестве основного и второстепенного языка

84%

Основной

16%

Второстепенный

Последние 4 года доля респондентов, называющих Python своим основным языком, почти не меняется — 84-85%.

Использование Python с другими языками100+

40%

41%

JavaScript

38%

38%

HTML/CSS

33%

35%

Bash/Shell

33%

33%

SQL

30%

29%

C/C++

20%

20%

Java

11%

11%

C#

10%

9%

TypeScript

9%

8%

Go

9%

10%

PHP

6%

5%

Rust

5%

6%

R

4%

4%

Visual Basic

3%

3%

Kotlin

Среди языков, используемых вместе с Python, самый популярный — JavaScript. Однако среди разработчиков, назвавших Python второстепенным, с JavaScript делит популярность C/C++. HTML/CSS, Bash/Shell и SQL тоже используются довольно широко: на каждом их них пишут больше трети Python-разработчиков.

Инструменты для веб-разработки и Data Science100+

42%

49%

SQL

37%

45%

Bash/Shell

36%

69%

JavaScript

34%

60%

HTML/CSS

33%

19%

C/C++

Статистика по веб-разработке основана на ответах респондентов, которые выбрали веб-разработку, отвечая на вопрос «С какой целью вы используете Python чаще всего?».Соответственно, Data Science относится к тем, кто в ответе на тот же вопрос, выбрал анализ данных или машинное обучение.

Как и ожидалось, среди веб-разработчиков популярными языками, используемыми совместно с Python, стали JavaScript (69%) и HTML/CSS (60%), в то время как те, кто занимается анализом данных, чаще выбирают SQL (42%).Кроме того, среди разработчиков, занятых анализом данных, доля тех, кто не использует никакие дополнительные языки, втрое выше, чем среди веб-разработчиков.

Для чего используют Python

Мы спрашивали, с какой целью люди используют Python, какими видами разработки они занимаются и как совмещают разные варианты применения языка.

Для чего вы используете Python?

52%

И для рабочих, и для личных проектов

29%

Для личных, образовательных и не связанных с основной работой проектов

19%

Для работы

Использование Python в 2020 и 2021 годах100+

51%

54%

Анализ данных

45%

48%

Веб-разработка

36%

38%

DevOps/системное администрирование/написание скриптов автоматизации

36%

38%

Машинное обучение

31%

35%

Программирование веб-парсеров/скраперов/сборщиков

За последние годы существенных изменений в сценариях использования Python не произошло. Самыми распространенными областями остаются анализ данных, машинное обучение, веб-разработка и DevOps.

Использование Python в качестве основного и второстепенного языка100+

52%

46%

Анализ данных

48%

32%

Веб-разработка

37%

30%

Машинное обучение

35%

37%

DevOps/системное администрирование/написание скриптов автоматизации

32%

28%

Программирование веб-парсеров/скраперов/сборщиков

Насколько активно вы занимаетесь следующими видами деятельности?

Веб-разработка

Анализ данных

Машинное обучение

Тестирование ПО / написание автоматических тестов

Прототипирование ПО

DevOps/системное администрирование/написание скриптов автоматизации

Образовательные цели

Разработка десктопных приложений

Разработка для встраиваемых систем

Сетевое программирование

Мобильная разработка

Разработка мультимедийных приложений

Компьютерная графика

Программирование веб-парсеров/скраперов/сборщиков

Разработка игр

Другое

С какой целью вы используете Python чаще всего?100+

23%

25%

Веб-разработка

17%

17%

Анализ данных

11%

13%

Машинное обучение

10%

10%

DevOps/системное администрирование/написание скриптов автоматизации

9%

7%

Образовательные цели

Четверть разработчиков, для которых Python — основной язык, используют его в первую очередь для веб-разработки. Среди тех, кто назвал Python второстепенным языком, веб-разработка является основной деятельностью лишь для 12%.

Что интересно, доля разработчиков, указавших анализ данных в качестве основной сферы использования Python, примерно одинакова и среди тех, для кого это основной язык программирования (17%), и среди тех, для кого он второстепенный (16%).

Вы считаете себя дата-сайентистом?

На вопрос отвечали только те, кто занимается анализом данных и машинным обучением.

Лишь 29% Python-разработчиков, занятых анализом данных и машинным обучением, считают себя специалистами по Data Science.

Версии Python

Python 3 и Python 2

2021

2020

2019

2018

2017

Доля пользователей Python 2 сокращается в среднем на 5 процентных пунктов в год, и сейчас его используют лишь 5 разработчиков из 100.

Интересно, что, по сравнению с Python 3, Python 2 чаще применяется для создания компьютерной графики, игр и мобильной разработки.

Области применения разных версий языка100+

54%

31%

Анализ данных

48%

24%

Веб-разработка

38%

27%

DevOps/системное администрирование/написание скриптов автоматизации

38%

16%

Машинное обучение

34%

14%

Программирование веб-парсеров/скраперов/сборщиков

Версии Python 3

2%

Python 3.5 или более ранняя

7%

Python 3.6

13%

Python 3.7

27%

Python 3.8

35%

Python 3.9

16%

Python 3.10

Установка и обновление Python100+

38%

Python.org

28%

Пакеты Python, предоставляемые ОС (через apt-get, yum, homebrew и т. п.)

16%

Контейнеры Docker

16%

Anaconda

15%

pyenv

6%

Сборка из исходного кода

5%

Обновлением Python занимается другой человек

3%

Автоматическое обновление через поставщика облачных сервисов

1%

ActivePython

1%

Intel Distribution for Python

1%

pythonz

3%

Другое

12%

Не обновляю

Enthought выбрали менее 0,5% респондентов, поэтому он был включен в «Другое».

Больше половины пользователей Windows скачивают Python с сайта Python.org, а среди пользователей Linux так делает лишь треть. Неудивительно, что пользователи Linux и macOS чаще всего устанавливают и обновляют Python, используя возможности операционной системы. В то же время у пользователей macOS довольно большой популярностью пользуются pyenv и контейнеры Docker.

Способы изоляции окружения100+

50%

Virtualenv

31%

Docker

20%

Conda

16%

Pipenv

11%

Poetry

5%

Vagrant / виртуальные машины

4%

Другое

25%

Нет

Специальные инструменты для изоляции окружения Python используют 75% Python-разработчиков.Интересно, что самым популярным инструментом у разработчиков, использующих Jupyter-ноутбуки (50%), является Conda, а остальные предпочитают Virtualenv и Docker.

Фреймворки и библиотеки

Веб-фреймворки100+

41%

Flask

40%

Django

21%

FastAPI

4%

Tornado

3%

web2py

3%

Bottle

3%

CherryPy

3%

Pyramid

2%

Falcon

1%

Hug

5%

Другое

29%

Нет

Flask, Django и FastAPI остаются самыми популярными веб-фреймворками для Python. FastAPI, выпущенный в конце 2018 года, демонстрирует самый быстрый рост: его доля по сравнению с прошлым годом увеличилась на 9 процентных пунктов. В то же время доля пользователей Flask по сравнению с 2020 годом уменьшилась на 5 процентных пунктов.

Подробнее об использовании фреймворка Django можно узнать из результатов опроса Django-разработчиков, который мы провели совместно с Django Software Foundation в 2021 году.

Фреймворки и библиотеки для анализа данных100+

60%

NumPy

55%

Pandas

43%

Matplotlib

30%

SciPy

29%

SciKit-Learn

23%

TensorFlow

18%

PyTorch

17%

Seaborn

16%

Keras

10%

NLTK

3%

Gensim

1%

MXNet

1%

Theano

4%

Другое

27%

Нет

10% Python-разработчиков используют одновременно 7 и более фреймворков и библиотек для Data Science, а половина — не больше двух.

Другие фреймворки и библиотеки100+

52%

Requests

31%

Pillow

24%

Asyncio

19%

Tkinter

15%

PyQT

14%

Scrapy

14%

aiohttp

13%

Pygame

9%

httpx

7%

Six

6%

Kivy

4%

wxPython

3%

PyGTK

3%

Twisted

7%

Другое

19%

Нет

Большинство остальных фреймворков более популярны среди веб-разработчиков, чем среди специалистов по Data Science, которые в основном используют Tkinker и PyQT.

Фреймворки для юнит-тестирования100+

50%

pytest

25%

unittest

11%

mock

6%

tox

5%

doctest

4%

Hypothesis

3%

nose

1%

Другое

38%

Нет

Популярность различных фреймворков для юнит-тестирования Python за год почти не изменилась.

Их используют лишь 56% соло-разработчиков, зато в компаниях численностью от 5000 сотрудников ими пользуются 75% респондентов.

ORM100+

34%

SQLAlchemy

29%

Django ORM

16%

Чистый SQL

5%

SQLObject

3%

Peewee

2%

Tortoise ORM

1%

PonyORM

1%

Dejavu

4%

Другое

36%

Не разрабатываю базы данных

SQLAlchemy — самая популярная ORM среди пользователей баз данных.

Интересно, что 52% пользователей Redis используют ORM Django, хотя в среднем ею пользуются менее трети Python-разработчиков. А еще стоит отметить, что 20% пользователей Amazon Redshift используют SQLObject, в то время как ее доля среди всех разработчиков меньше 5%.

Базы данных100+

43%

PostgreSQL

38%

SQLite

37%

MySQL

20%

MongoDB

18%

Redis

10%

MS SQL Server

6%

Oracle Database

3%

Amazon Redshift

2%

Neo4j

2%

Cassandra

1%

DB2

1%

HBase

1%

h2

1%

Couchbase

6%

Другое

19%

Нет

Среди специалистов по Data Science базами данных пользуются 80%, среди веб-разработчиков — 98%.

Доля пользователей PostgreSQL среди веб-разработчиков на 32 процентных пункта больше, чем среди тех, кто занят Data Science. Доля пользователей Redis больше на 25 процентных пунктов, а доля пользователей SQLite — на 12 процентных пунктов. В то же время специалисты по Data Science вдвое чаще, чем веб-разработчики, используют Oracle Database.

Инструменты для работы с большими данными100+

11%

Apache Spark

9%

Apache Kafka

5%

Dask

5%

Apache Hadoop/MapReduce

4%

Apache Hive

2%

ClickHouse

2%

Apache Flink

2%

Apache Beam

1%

Apache Tez

1%

Apache Samza

2%

Другое

75%

Нет

Распределение ответов по инструментам для работы с большими данными осталось примерно таким же, как в прошлом году. В целом специалисты по Data Science используют их на 13 процентных пунктов чаще, чем другие разработчики, а Apache Spark и Dask у них популярнее вдвое.

Облачные платформы

61%

Python-разработчиков используют облачные платформы.

Популярные облачные платформы100+

50%

AWS

32%

Google Cloud Platform

23%

Microsoft Azure

23%

Heroku

17%

DigitalOcean

12%

PythonAnywhere

5%

Linode

5%

OpenStack

4%

OpenShift

1%

Rackspace

9%

Другое

На вопрос отвечали только те, кто пользуется облачными платформами.

Интересно, что пользователи Visual Basic, C# и C/C++ используют AWS примерно вдвое реже, чем Python-разработчики в целом.

Как вы запускаете код в облаке?100+

48%

47%

В контейнерах

41%

43%

В виртуальных машинах

27%

27%

Используя платформу как услугу

24%

25%

Внесерверная обработка

2%

2%

Другое

На вопрос отвечали только те, кто пользуется облачными платформами.

Популярность виртуальных машин продолжает снижаться. В 2018 году их доля составляла 47%, это был самый распространенный вариант. Сегодня же их использует лишь 41% Python-разработчиков.

Как вы разрабатываете облачные приложения?100+

53%

56%

Локально с помощью virtualenv

41%

40%

В контейнерах Docker

20%

21%

В виртуальных машинах

19%

17%

В удаленных средах разработки

18%

18%

С помощью интерпретатора локальной системы

На вопрос отвечали только те, кто пользуется облачными платформами.

Среди тех, кто занят веб-разработкой, DevOps и прототипированием ПО, чрезвычайно популярна локальная разработка на Python с использованием virtualenv (61-65%). Docker-контейнерами пользуются в первую очередь веб-разработчики (54%).

Виртуальные машины часто выбирают те, кто занимается DevOps, машинным обучением и сетевым программированием (26-27%). Что интересно, те, кто работает в DevOps и машинном обучении, также чаще других используют среды удаленной разработки.

Инструменты

Операционная система100+

63%

Linux

58%

Windows

25%

macOS

2%

BSD

1%

Другое

По сравнению с 2020 годом популярность Linux и macOS снизилась на 5 процентных пунктов, а использование Windows соответственно выросло на 10 процентных пунктов.

Системы непрерывной интеграции (CI)100+

31%

GitHub Actions

22%

GitLab CI

17%

Jenkins/Hudson

5%

Travis CI

5%

CircleCI

4%

Bitbucket Pipelines

2%

TeamCity

2%

Bamboo

1%

AppVeyor

1%

CruiseControl

5%

Другое

39%

Нет

GitHub Actions появилась в 2018 году и быстро набрала популярность. Сегодня она лидирует в списке CI-систем: ею пользуется почти треть Python-разработчиков.

Еще одна CI-система, демонстрирующая рост, — Gitlab CI: ее доля выросла с 2018 года на 4 процентных пункта. А вот Travis CI быстро теряет популярность: снижение на 13% по сравнению с 2018 годом. Jenkins/Hudson также потеряла 8 процентных пунктов за три года.

36%

Python-разработчиков используют инструменты для создания документации. Самый популярный из них — Sphinx.

Инструменты для создания документации100+

61%

Sphinx

22%

MKDocs

17%

Doxygen

14%

Другое

Инструменты и функциональность для Python-разработки

используют автодополнение в редакторе

производят рефакторинг кода

используют системы контроля версий

используют виртуальные окружения Python для своих проектов

используют линтинг кода

пишут тесты для своего кода

используют базы данных SQL

используют опциональное указание типов

используют отладчик

запускают, отлаживают или редактируют код на удаленной машине

используют инструменты непрерывной интеграции

используют баг-трекеры

используют инструменты анализа покрытия кода

используют профилировщик Python

используют базы данных NoSQL

Среди тех, для кого Python основной язык, доля использующих профилировщики Python и инструменты анализа покрытия кода больше на 8 процентных пунктов, а доля использующих виртуальные окружения Python на 10 процентных пунктов больше, чем среди разработчиков, для которых Python второстепенный язык.

Редакторы

Общая доля редакций PyCharm Community и Professional составляет 31% — почти столько же, сколько в прошлом году. Доля VS Code выросла за год на 6 процентных пунктов.

Интересно, что PyCharm и VS Code одинаково популярны среди веб-разработчиков (39%), в то время как специалисты по Data Science чаще (на 9 процентных пунктов) используют VS Code в качестве основной IDE.

Основная IDE/редактор100+

35%

VS Code

31%

PyCharm

7%

Vim

3%

Ноутбуки Jupyter

3%

Sublime Text

2%

IDLE

2%

Emacs

2%

IntelliJ IDEA

2%

Atom

2%

NotePad++

2%

Spyder

2%

JupyterLab

3%

Другое

3%

Нет

Чтобы определить, какие IDE и редакторы наиболее популярны, мы задали вопрос, в котором можно было выбрать только один вариант ответа.

Data Science и веб-разработка100+

36%

39%

VS Code

27%

39%

PyCharm

5%

7%

Vim

2%

1%

Atom

2%

2%

Emacs

Статистика по веб-разработке основана на ответах респондентов, которые выбрали веб-разработку, отвечая на вопрос «С какой целью вы используете Python чаще всего?».Соответственно, Data Science относится к тем, кто в ответе на тот же вопрос, выбрал анализ данных или машинное обучение.

Как вы впервые узнали о своей основной IDE/редакторе?

23%

От друга или коллеги

16%

Не помню

14%

В школе или университете

13%

Через поисковик

11%

На образовательной онлайн-платформе или онлайн-курсах

8%

Из технического обзора, на форуме, в блоге

7%

В соцсетях

2%

На конференции или митапе

1%

Из рекламы

4%

Другое

Чаще всего Python-разработчики узнавали об IDE, которая стала для них основным инструментом, от друзей или коллег, во время обучения, а также через поиск в интернете.

Лишь 1% респондентов узнали о своих инструментах из рекламы.

57% пользователей Jupyter-ноутбуков впервые узнали о них в школе, в университете или на онлайн-курсах. Среди всех участников опроса такие варианты ответа выбрали 25%.

Количество используемых IDE/редакторов

16%

1

37%

2

25%

3

13%

4

8%

5 и более

VS Code, Jupyter-ноутбуки и PyCharm чаще всего используются в дополнение к основной IDE: каждый из этих вариантов выбрали более 20% Python-разработчиков.

Частота использования основной IDE/редактора

83%

Ежедневно

13%

Каждую неделю

2%

Каждый месяц

2%

Реже

IDE/редакторы, используемые в дополнение к основной IDE/редактору100+

26%

VS Code

25%

Ноутбуки Jupyter

23%

PyCharm

21%

Vim

13%

NotePad++

12%

Sublime Text

12%

JupyterLab

9%

IDLE

6%

Atom

5%

Spyder

3%

IntelliJ IDEA

3%

Python Tools for Visual Studio (PTVS)

2%

Emacs

1%

Eclipse + Pydev

5%

Другое

16%

Нет

VS Code, Jupyter-ноутбуки и PyCharm чаще всего используются в дополнение к основной IDE: каждый из этих вариантов выбрали более 20% Python-разработчиков.

Те, для кого основная IDE — Jupyter-ноутбук, в четыре раза чаще других Python-разработчиков также используют Spyder.

Улучшение Python

Знаете ли вы?

В июне 2021 года Python Software Foundation пригласили разработчика, который бы на постоянной основе занимался развитием языка и поддержкой сообщества.

Им стал Core-разработчик Лукаш Ланга. Он помогает разобраться с нерешенными задачами, определить приоритетные направления развития проекта, изучает другие важные вопросы.

Что вы думаете о новой
должности приглашенного разработчика?

14%

Идея хорошая, но я пока не вижу результатов

7%

Идея хорошая, и я уже вижу результаты

2%

Мне не нравится

77%

Никогда об этом не слышал

23% Python-разработчиков уже знают о приглашенном разработчике, и 91% из них считают, что это хорошая идея.

Более того, 30% тех, кто в курсе новшества, уже видят его эффект.

Как пользователи языка сообщают об ошибках

Только 19% пользователей Python когда-либо сообщали о найденных ошибках. Что интересно, сайт bugs.python.org — не самый распространенный способ сделать это. Почти вдвое больше программистов предпочитают задать вопрос в другом месте или создать пул-реквест на GitHub.

Из тех, кто когда-либо сообщал об ошибках, 73% отметили, что проблема была решена, и лишь 7% заявили, что им так никто и не ответил.

Вы пробовали сообщать об ошибках?

9%

Да, я спрашиваю в другом месте

8%

Да, я отправляю пул-реквесты на GitHub

4%

Да, я сообщаю об ошибках на bugs.python.org

2%

Да, я спрашиваю через рассылку

1%

Да, я спрашиваю в Discourse

81%

Нет

Была ли проблема решена?

47%

Да, через некоторое время

26%

Да, вскоре

18%

Нет, но проблема обсуждалась

7%

Нет, мне никто не ответил

3%

Другое

На вопрос отвечали только те, кто когда-либо сообщал об ошибках.

Пакеты Python

63%

Python-разработчиков используют контейнеры, а 59% из них используют в контейнере виртуальное окружение.

Вы используете в контейнерах виртуальное окружение?

Какие инструменты для работы с пакетами Python
вы используете напрямую?
100+

81%

pip

32%

venv (стандартная библиотека)

30%

Контейнеры (например, через Docker)

23%

virtualenv

22%

Conda

13%

Poetry

13%

pipenv

11%

Виртуальные машины

10%

twine

6%

tox

2%

Собственная разработка

1%

flit

0%

PDM

2%

Другое

7%

Никакие / не знаю

Вы используете модуль стандартной библиотеки venv?100+

42%

Использую venv напрямую

23%

Использую через virtualenv

11%

Использую через Poetry

11%

Использую через Pipenv

4%

Использую через tox

1%

Другое

23%

Нет, я не использую venv

11%

Не знаю

Зависимости приложения

45% Python-разработчиков используют те или иные инструменты для закрепления версии зависимостей приложения. Чаще всего они хранятся в файле requirements.txt — этот способ используют три четверти разработчиков.

Используете ли вы какие-либо инструменты для управления точными версиями зависимостей приложения?

В каком формате хранится информация о зависимостях приложения?100+

76%

requirements.txt

26%

pyproject.toml

22%

poetry.lock

16%

pipfile.lock

11%

Conda environment.yml

4%

pip constraints.txt

5%

Другое

3%

Нет

На вопрос отвечали только те, кто использует инструменты для управления точными версиями зависимостей приложения.

Используете ли вы какие-либо автоматические сервисы для обновления версий зависимостей приложения?100+

24%

Dependabot

10%

Собственное решение, например задание cron или выполняемое по графику задание CI

6%

PyUp

2%

Другое

65%

Нет, я обновляю зависимости приложения вручную

Какие инструменты вы используете для управления зависимостями приложения?100+

27%

poetry

26%

pipenv

26%

pip-tools

4%

Другое

33%

Нет

На вопрос отвечали только те, кто использует инструменты для управления точными версиями зависимостей приложения.

Установка пакетов

90% разработчиков заявили, что для установки пакетов Python они используют pip. Большинство получает пакеты через Python Package Index.

Откуда вы скачиваете пакеты?100+

81%

PyPI

33%

GitHub

17%

Локальный источник

16%

Anaconda

15%

Из дистрибутива Linux

11%

Частный Python Package Index

10%

Внутреннее зеркало PyPI

10%

Канал Conda conda-forge

9%

Канал Conda по умолчанию

8%

GitLab

4%

Другой канал Conda

3%

Artifactory

2%

Другое

9%

Не знаю

Какие инструменты вы используете для установки пакетов?100+

90%

pip

21%

Conda

13%

Poetry

5%

easy_install

5%

pipx

2%

pip-sync

3%

Другое

3%

Нет

55%

Python-разработчиков говорят, что разрабатывают приложения. Самый популярный инструмент для этой цели — Setuptools, его используют 46% опрошенных.

Какие инструменты вы используете для разработки
приложений на Python?
100+

46%

Setuptools

30%

Wheel

18%

build

17%

Poetry

5%

conda-build

2%

Flit

1%

pex

1%

PDM-PEP517

1%

maturin

1%

Enscons

4%

Другое

28%

Никакие / не знаю

На вопрос отвечали только те, кто разрабатывает приложения.

Хотя больше половины Python-разработчиков разрабатывают приложения, лишь 40% из них публиковали эти приложения в репозиториях пакетов.

Какие инструменты вы используете для создания пакетов
Python-библиотек?
100+

71%

Setuptools

42%

Wheel

26%

build

20%

Poetry

5%

conda-build

3%

Flit

1%

Enscons

1%

pex

1%

maturin

1%

PDM-PEP517

3%

Другое

На вопрос отвечали только те, кто разрабатывает Python-библиотеки.

34% респондентов разрабатывают Python-библиотеки. Для создания пакетов большинство из них (71%) использует Setuptools.

Что интересно, лишь 27% тех, кто разрабатывает библиотеки, уже публиковали их в репозиториях пакетов.

Где вы публиковали свои пакеты
Python-библиотек?
100+

72%

PyPI

37%

Частный Python Package Index

10%

Внутреннее зеркало PyPI

6%

conda-forge

4%

Другое

На вопрос отвечали только те, кто публиковал пакеты Python-библиотек.

Python Package Index — самое популярное место для публикации пакетов разработанных библиотек и приложений. Private PyPI используется примерно вдвое реже.

Демография

В команде vs самостоятельно

48%

Работаю в команде

48%

Работаю над своими проектами самостоятельно

4%

Я независимый консультант/инструктор

Работа над проектами

42%

Работаю над несколькими разными проектами

39%

Работаю над одним главным и несколькими связанными с ним проектами

19%

Работаю только над одним проектом

Статус занятости

62%

Работаю в штате компании или организации

14%

Студент

6%

Фрилансеры

6%

Самозанятые

6%

Работающий студент

4%

Работаю по совместительству в компании или организации

1%

На пенсии

2%

Другое

Размер компании

7%

Только я

12%

2–10

17%

11–50

24%

51–500

7%

501–1000

10%

1001–5000

19%

> 5000

3%

Не знаю

На вопрос отвечали только те, кто работает в штате.

Размер команды

72%

2–7

17%

8–12

6%

13–20

3%

21–40

2%

> 40

На вопрос отвечали только те, кто работает в штате.

Сфера деятельности компании

41%

Информационные технологии / разработка ПО

7%

Наука

7%

Образование / обучение

5%

Бухгалтерия / финансы / страхование

4%

Производство

4%

Медицина / здравоохранение

3%

Банковское дело / недвижимость / ипотечное финансирование

На вопрос отвечали только те, кто работает в штате.

Целевая отрасль

51%

Информационные технологии / разработка ПО

4%

Бухгалтерия, финансы, страхование

3%

Производство

3%

Медицина, здравоохранение

3%

Продажи / дистрибуция / развитие бизнеса

3%

Банковское дело / недвижимость / ипотечное финансирование

3%

Безопасность

На вопрос отвечали только те, кто работает в штате.

Рабочая роль100+

72%

Разработчик, программист

17%

Аналитик данных

17%

Архитектор

17%

Руководитель команды

9%

Техническая поддержка

7%

Системный аналитик

6%

Руководитель компании

5%

QA-инженер

5%

Менеджер продукта

5%

Администратор БД

4%

Бизнес-аналитик

4%

Технический писатель

13%

Другое

На этот вопрос отвечали только те, кто работает.

Возраст

10%

18–20

38%

21–29

29%

30–39

13%

40–49

6%

50–59

3%

60 и старше

Опыт программирования на Python

23%

Менее 1 года

23%

1–2 года

29%

3–5 лет

15%

6–10 лет

10%

11 лет и больше

Опыт профессионального программирования

36%

Менее 1 года

19%

1–2 года

19%

3–5 лет

11%

6–10 лет

15%

11 лет и больше

Укажите свою страну или регион

Страны/регионы, которые указали меньше 1% респондентов, объединены в группу «Другое».

17%

США

9%

Индия

7%

Германия

6%

Материковый Китай

5%

Великобритания

5%

Франция

4%

Россия

3%

Бразилия

3%

Польша

3%

Канада

2%

Италия

2%

Нидерланды

2%

Австралия

2%

Иран

Исходные данные и методология

Хотите проанализировать данные самостоятельно? Скачайте обезличенные результаты опроса и найдите нужные вам сведения. Делитесь своими открытиями и мыслями в Twitter с хештегом #pythondevsurvey. Не забудьте упомянуть @jetbrains и @ThePSF.

Прежде чем анализировать данные самостоятельно, обратите внимание:

Набор данных включает в себя только ответы, полученные через официальные каналы Python Software Foundation. После того как мы исключили дубликаты и ненадежные ответы, в наборе данных осталось более 23 000 ответов, собранных с 11 октября по 6 декабря 2021 года за счет продвижения опроса на сайте python.org, в блоге PSF, на страницах PSF в Twitter и LinkedIn, через официальные рассылки Python и связанные с Python сабреддиты. Чтобы избежать искажения результатов в пользу определенного инструмента или технологии, для сбора ответов не использовались каналы, связанные с какими-либо продуктами, сервисами и поставщиками.

Данные полностью анонимны и не содержат персональных данных респондентов и информации об их местонахождении. Чтобы исключить вероятность идентификации респондентов по их комментариям, мы удалили все ответы на открытые вопросы.

Чтобы вам было проще понять логику опроса, мы делимся набором данных, вопросами и всей логикой анкеты. Мы использовали разные способы упорядочивания вариантов ответов (алфавитный, случайный и прямой). Порядок ответов указан для каждого вопроса.

Критерии исключения ответов

  • Возраст меньше 18 лет.
  • Респондент не дошел до вопроса «Как долго вы профессионально занимаетесь программированием?» на третьей странице опроса.
  • Возраст менее 21 года, а опыт профессионального программирования более 11 лет.
  • Слишком много одиночных ответов на вопросы с возможностью выбора нескольких ответов (за исключением ответов «Никакие», «Нет»).
  • Несколько ответов с одного адреса электронной почты (для каждого адреса мы сохранили только один ответ).
  • Сходные ответы с одного IP-адреса.

Сочетание по крайней мере двух из следующих факторов:

    • Используется более 16 языков программирования.
    • Более 9 рабочих ролей.
    • Более 11 областей использования («Для чего вы используете Python?»).
    • Выбранная страна/регион находится в верхней части списка стран/регионов, а не среди самых распространенных стран/регионов, при этом отличается от страны/региона, определенного по IP-адресу.
    • Сочетание рабочих ролей CEO и «Техническая поддержка».
    • CEO и возраст менее 21 года.
    • В целом слишком много выбранных ответов (например, респондент использует практически все фреймворки для Data Science, веб-разработки, упаковки и т. п.).
    • Ответы даны слишком быстро (менее 6 секунд на вопрос).

JetBrains и Python Software Foundation благодарят всех, кто участвовал в опросе. Вы помогли нам составить актуальное представление об экосистеме Python.

Поддержите Python Software Foundation. PSF — некоммерческая организация, существующая исключительно на средства, внесенные ее членами, спонсорами и сообществом.

Посмотрите результаты опросов 2020, 2019, 2018 и 2017 годов.

Читайте отчеты о других исследованиях JetBrains.

Спасибо, что уделили время!

Надеемся, наш отчет был вам полезен. Поделитесь результатами исследования с друзьями и коллегами!

Присоединяйтесь к JetBrains Tech Insights Lab

Участвуйте в опросах и UX-исследованиях JetBrains, чтобы помочь нам сделать наши продукты еще лучше. Среди участников исследований разыгрываются призы.