JetBrains logo

Résultats de l'Enquête 2023 sur les Développeurs Python

Voici les résultats de la septième enquête annuelle officielle sur les développeurs Python, menée en collaboration par la Python Software Foundation et JetBrains.

Les réponses ont été recueillies entre novembre 2023 et février 2024, et plus de 25 000 développeurs et passionnés de Python de près de 200 pays et régions ont participé à l'enquête afin de nous apporter un état des lieux actuel du langage et de son écosystème.

Consultez les résultats de l'enquête auprès des développeurs Python de 2022, 2021, 2020, 2019, 2018, et 2017.

Partager :

Utilisation générale de Python

Python en tant que langage principal ou secondaire

85%

Principal

15%

Secondaire

Utilisation de Python avec d'autres langages+ de 100

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 %Autre
13 %14 %17 %Aucun
040 %

Actuellement, Go et Rust suscitent un intérêt croissant dans le cadre de la création d'applications à faible latence et sûres sur le plan de la mémoire.

Utilisation de Python avec d'autres langages+ de 100

35%

38%

JavaScript

33%

31%

HTML/CSS

32%

26%

SQL

29%

25%

Bash/Shell

23%

35%

C/C++

Paul Everitt
Chef de l'équipe Web and Data Advocacy chez JetBrains

« La baisse du HTML/CSS/JS pourrait montrer que la science des données augmente sa part de Python. »

LinkedIn, Mastodon, X (ex-Twitter)

Langages pour le Web et la Science des données+ de 100

40%

44%

SQL

30%

36%

Bash/Shell

30%

62%

JavaScript

28%

53%

HTML/CSS

25%

14%

C/C++

19%

15%

Java

12%

27%

TypeScript

Ici la notion de Développement web correspond aux personnes qui ont sélectionné « Développement web » comme réponse à la question « À quelles fins utilisez-vous le plus Python ? ». Science des données fait référence aux personnes ayant répondu « Analyse de données » ou « Machine learning » à cette même question.

Depuis combien de temps programmez-vous en Python ?

25%

Moins d'1 an

16%

1 à 2 ans

26%

3 à 5 ans

19%

6 à 10 ans

13%

+ de 11 ans

Combien d'années d'expérience professionnelle en programmation avez-vous ?

33%

Moins d'1 an

16%

1 à 2 ans

18%

3 à 5 ans

15%

6 à 10 ans

18%

+ de 11 ans

Sarah Boyce
Django Fellow

« Python est régulièrement recommandé comme un bon langage de programmation pour les débutants en raison de sa syntaxe lisible, de son large éventail d'applications (de la science des données au développement web) et de sa formidable communauté. »

Mastodon, LinkedIn

37 %

des développeurs Python ont déclaré avoir contribué à des projets open source l'année dernière.

Marie Nordin
Responsable des communications communautaires chez Python Software Foundation

« Il s'agit d'un chiffre intéressant à examiner et d'un résultat encourageant pour sa première inclusion dans l'enquête. J'ai hâte de voir comment cette tendance va évoluer d'année en année. »

X (anciennement Twitter)

Au cours de l'année dernière, comment décririez-vous vos contributions à l'open source ?+ de 100

77%

Code

38%

Documentation, exemples ou contenu pédagogique

35%

Maintenance, gouvernance ou leadership

33%

Tests

19%

Tri des problèmes ou des demandes de fonctionnalités

13%

Développement communautaire ou sensibilisation

2%

Autre

34 %

des développeurs Python déclarent pratiquer le développement collaboratif.

Où découvrez-vous généralement les nouveaux outils et technologies pertinents pour votre développement Python ?+ de 100

55%

Documentation et API

45%

Youtube

44%

Python.org

42%

Stack Overflow

41%

Blogs

28%

Livres

19%

Outils d'IA

14%

Écoles de programmation en ligne et MOOC

14%

Conférences ou événements

13%

Podcasts

Objectifs de l’utilisation de Python

Dans cette section, nous avons posé des questions visant à découvrir à quelles fins et pour quels types de développement Python est utilisé, et comment les développeurs combinent les différents cas d'utilisation du langage.

À quelles fins utilisez-vous principalement Python ?

51%

Pour le travail et pour des projets personnels

28%

Pour des projets personnels, éducatifs ou secondaires

21%

Pour le travail

Utilisation de Python par année+ de 100

202120222023
51 %51 %44 %Analyse des données
45 %43 %42 %Développement web
36 %36 %34 %Machine Learning
27 %Ingénierie de données
36 %34 %26 %DevOps, administration systèmes ou écriture de scripts d'automatisation
31 %30 %25 %Programmation d'analyseurs / scrapers / crawlers web
25 %Recherche académique
26 %25 %23 %Tests logiciels / Écriture de tests automatisés
27 %27 %22 %À des fins éducatives
21 %Conception ou visualisation de données
22 %20 %19 %Prototypage de logiciels
19 %19 %15 %Développement d'applications de bureau
18 %17 %14 %Programmation réseau
12 %13 %10 %Graphisme informatique
10 %9 %10 %Développement de jeux
8 %MLOps
5 %6 %7 %Développement d'applications multimédia
7 %8 %7 %Développement embarqué
6 %6 %6 %Développement pour mobile
7 %6 %6 %Autre
051 %

Veuillez noter qu'en 2023, la liste a été élargie avec de nouvelles options.

Utilisation de Python comme langage principal et secondaire+ de 100

44%

40%

Analyse des données

44%

33%

Développement web

34%

29%

Machine Learning

28%

20%

Ingénierie de données

26%

21%

Recherche académique

26%

26%

DevOps, administration systèmes ou écriture de scripts d'automatisation

25%

23%

Programmation d'analyseurs / scrapers / crawlers web

À quelles fins utilisez-vous le plus Python ?

21%

Développement web

10%

Machine Learning

10%

Analyse des données

9%

Recherche académique

9%

À des fins éducatives

7%

DevOps, administration systèmes ou écriture de scripts d'automatisation

6%

Ingénierie de données

Dans quelle mesure êtes-vous impliqué·e dans les activités suivantes ?

Développement web

Analyse des données

Machine Learning

Ingénierie de données

Recherche académique

DevOps, administration systèmes ou écriture de scripts d'automatisation

À des fins éducatives

Tests logiciels / Écriture de tests automatisés

Prototypage de logiciels

Conception ou visualisation de données

Programmation d'analyseurs / scrapers / crawlers web

Développement d'applications de bureau

Programmation réseau

Versions de Python

Comparaison Python 3 / Python 2

2023

2022

2021

2020

2019

2018

2017

Près de la moitié des résistants de Python 2 ont moins de 21 ans et un tiers sont des étudiants. Peut-être que les cours utilisent encore Python 2 ?

Versions de Python 3+ de 100

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 ou inférieur
045 %

Remarque : en 2023, Python 3.7 et ses versions antérieures étaient à la fin de leur cycle de vie. Python 3.12 est sorti en octobre 2023 (1 mois avant le début de cette enquête) et est déjà largement adopté. Les développeurs utilisant Python 3.13 dans cette enquête utilisent une version alpha.

Près de 75 % des utilisateurs utilisent les 3 dernières versions de Python. C'est une excellente nouvelle ! La communauté a adopté assez rapidement les dernières versions de Python en raison des améliorations de performances et de la commodité qu'elles offrent.

Installation et mise à niveau de Python+ de 100

31%

Python.org

24%

Outil de gestion de paquets à l'échelle du système d'exploitation

17%

pyenv

16%

Conteneurs Docker

14%

Anaconda

5%

Build à partir de la source

4%

Mises à niveau automatiques via un fournisseur cloud

Remarque : Enthought a obtenu moins de 0,5 % et a été intégré dans la catégorie Autres.

Frameworks et Bibliothèques

Frameworks web+ de 100

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%

Autre

23%

Aucun

Veuillez noter qu'en 2023, la liste a été élargie avec de nouvelles options.

Frameworks web+ de 100

36%

42%

Flask

31%

46%

FastAPI

31%

40%

Requests

26%

63%

Django

18%

29%

Asyncio

16%

4%

Streamlit

12%

43%

Django REST Framework

Les frameworks web sont largement utilisés, notamment par 77 % des data scientists et 97 % des développeurs web.

Vladimir Sotnikov
Responsable du développement chez JetBrains Computational Arts Initiative

« Bien que les développeurs de ML soient moins susceptibles d'utiliser Django, un framework privilégié pour le développement d'applications web à grande échelle, leur engagement avec Flask et FastAPI, tous deux adaptés à la création d'API RESTful, est presque aussi élevé que celui des développeurs web. Cela suggère que les professionnels du ML sont activement impliqués dans le développement web, mais principalement en utilisant des services basés sur des API plutôt qu'en créant des sites web traditionnels. »

LinkedIn, Google Scholar

Vous pouvez en savoir plus sur le paysage Django dans l'enquête 2023 sur les développeurs Django, menée en partenariat avec la Django Software Foundation.

Autres frameworks et bibliothèques+ de 100

31%

BeautifulSoup

28%

Pillow

22%

OpenCV-Python

22%

Pydantic

17%

Tkinter

12%

PyQT

11%

Scrapy

Frameworks de tests unitaires+ de 100

52%

pytest

25%

unittest

11%

mock

9%

doctest

5%

tox

5%

Hypothesis

2%

nose

Plateformes cloud

Utilisation des plateformes cloud+ de 100

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 %Autre
39 %34 %33 %Aucun
<1 %39 %

Veuillez noter qu'en 2023, la liste a été élargie avec de nouvelles options.

Mukul Mantosh
Developer Advocate de l'équipe Web and Data Advocacy chez JetBrains

« Après qu'Azure a introduit son service OpenAI, AWS et Google ont tous deux agi rapidement pour lancer Bedrock et Gemini. »

LinkedIn, X (anciennement Twitter)

Sarah Boyce
Django Fellow

« Google Cloud Platform gagne en popularité, en particulier aux États-Unis, où il est utilisé par 38 % des personnes interrogées et bat AWS en tant que premier fournisseur cloud.

Lorsque Heroku a confirmé l'abandon de ses projets de produits gratuits, sa part d'utilisateurs est passée de 14 % en 2021 à seulement 7 % en 2023. »

Mastodon, LinkedIn

Jay Miller
Staff Developer Advocate chez Aiven

« Je pense que les décisions commerciales majeures concernant les prix et les acquisitions ont joué un rôle dans le déroulement des choses.

La décision de tarification d'Heroku semble avoir entraîné une grosse désaffection, mais il n'y a pas eu de gagnant clair (à l'exception peut-être de PythonAnywhere) de cette perte. »

LinkedIn, Kjaymiller

Comment exécutez-vous votre code dans le cloud ?+ de 100

47%

Dans des conteneurs

42%

Dans des machines virtuelles

25%

Serverless

26%

Sur une plateforme en tant que service

2%

Autre

8%

Aucun

Mukul Mantosh
Developer Advocate de l'équipe Web and Data Advocacy chez JetBrains

« D'après l'enquête CNCF de 2022, environ 44 % des utilisateurs ont transféré la plupart de leurs charges de travail de production vers des conteneurs, et 9 % supplémentaires sont encore en phase d'évaluation. »

LinkedIn, X (anciennement Twitter)

45 %

des Pythonistes déclarent utiliser Kubernetes pour exécuter du code dans des conteneurs.

Parmi les propositions suivantes, qu'utilisez-vous ?+ de 100

49%

Amazon Elastic Kubernetes Service

33%

Google Kubernetes Engine

21%

Azure Kubernetes Service

10%

RedHat OpenShift

16%

Autre

Mukul Mantosh
Developer Advocate de l'équipe Web and Data Advocacy chez JetBrains

« Je m'appuie principalement sur Amazon EKS pour gérer les charges de travail des conteneurs, car il propose une intégration transparente avec les services AWS. J'ai de plus exploré Google Kubernetes Engine (GKE), qui offre une expérience comparable. J'ai toutefois trouvé GKE Autopilot particulièrement intéressant, car il traite la configuration du cluster, la gestion des nœuds, la mise à l'échelle, la sécurité et d'autres paramètres prédéfinis, tous gérés par Google. »

LinkedIn, X (anciennement Twitter)

Comment développez-vous pour le cloud ?+ de 100

49%

Localement avec virtualenv

38%

Dans des conteneurs Docker

23%

Dans des machines virtuelles

20%

Avec un interpréteur système local

16%

Dans des environnements de développement à distance

14%

Utilisation de WSL

10%

Directement dans l'environnement de production

2%

Autre

Mukul Mantosh
Developer Advocate de l'équipe Web and Data Advocacy chez JetBrains

« J'apprécie la commodité qu'offrent AWS Toolkit et le plugin Cloud Code pour créer des applications serverless sans effort. De plus, des frameworks comme LocalStack vous permettent d'exécuter vos applications AWS ou des Lambdas entièrement sur votre machine locale, éliminant ainsi le besoin de vous connecter à un fournisseur de cloud distant. »

LinkedIn, X (anciennement Twitter)

Science des données

48 %

de tous les développeurs Python interrogés sont impliqués dans l'exploration et le traitement des données.

Outils d'exploration et de traitement des données

77%

pandas

72%

NumPy

16%

Spark

14%

Airflow

10%

Polars

9%

Une solution interne

7%

Dask

Jodie Burchell
Developer Advocate de l'équipe Data Science Advocacy chez JetBrains

« Bien que pandas reste le principal outil de travail pour les tâches d'exploration et de traitement des données, une minorité de personnes utilisent également des bibliothèques de traitement de données distribuées telles que Spark, Dask et Ray, ce qui suggère qu'elles travaillent avec des big data. Polars continue de gagner en popularité en tant que moyen de gérer des ensembles de données plus volumineux sans quitter la machine locale. »

LinkedIn, X (ex-Twitter), Mastodon, Blog

Bibliothèques pour créer des tableaux de bord+ de 100

31%

Plotly Dash

28%

Streamlit

12%

Panel

12%

Gradio

4%

Et voilà 

13%

Autre

26%

Aucun

25 % des personnes interrogées déclarent travailler sur la création de tableaux de bord. Plotly Dash et Streamlit sont les deux meilleurs choix pour de telles tâches.

32 %

de tous les développeurs Python déclarent former des modèles ML ou générer des prédictions à partir de ceux-ci. scikit-learn et PyTorch sont les deux principales solutions utilisées pour ces tâches.

Frameworks pour la formation et la prédiction de modèles ML
+ de 100

67%

scikit-learn

60%

PyTorch

48%

TensorFlow

44%

SciPy

30%

Keras

22%

Hugging Face Transformers

22%

XGBoost

Plateformes pour la formation+ de 100

52%

Jupyter Notebook

11%

Amazon Sagemaker

10%

Machines virtuelles cloud avec SSH

9%

AzureML

6%

Databricks

Jodie Burchell
Developer Advocate de l'équipe Data Science Advocacy chez JetBrains

« Le fait que la majorité des personnes travaillant avec le machine learning utilisent scikit-learn et SciPy montre que le machine learning classique et les statistiques jouent encore un rôle important en science des données. Les bibliothèques de deep learning sont toutefois également populaires, telles que PyTorch, Tensorflow, Keras et Hugging Face Transformers, ce qui reflète potentiellement l'intérêt récent pour l'IA générative et les grands modèles de langage. »

LinkedIn, X (ex-Twitter), Mastodon, Blog

Outils de suivi d'expériences+ de 100

26%

TensorBoard

19%

MLflow

12%

Weights & Biases

4%

CometML

4%

NeptuneML

2%

Autre

12%

Une solution interne

44%

Aucun

Google a abandonné TensorBoard.dev (un service permettant de publier des données de TensorBoard en un seul clic) le 1er janvier 2024. Nous pouvons nous attendre à ce que d'autres options deviennent plus populaires en 2024.

Outils pour le versionnement des données+ de 100

14%

Une solution interne

7%

Dalta Lake

7%

DVC

4%

Pachyderm

3%

Autre

69%

Aucun

18 %

de tous les développeurs interrogés travaillent sur le déploiement et l'inférence de ML.

Travaillez-vous avec les big data ?

Jodie Burchell
Developer Advocate de l'équipe Data Science Advocacy chez JetBrains

« La minorité de personnes qui ne sont pas sûres de travailler avec des big data reflète le flou de ce terme, d'autant plus que les ordinateurs personnels embarquent du matériel de plus en plus puissant. »

LinkedIn, X (ex-Twitter), Mastodon, Blog

Outils big data+ de 100

36%

PySpark

6%

PyFlink

8%

Great Expectations

3%

PyDeequ

5%

Autre

50%

Aucun

Solutions utilisées pour travailler avec les big data+ de 100

34%

Cloud

28%

Autohébergé

25%

Les deux

13%

Aucun

Outils de développement

Systèmes d'exploitation+ de 100

55%

Linux

55%

Windows

29%

macOS

2%

BSD

1%

Autre

La part des développeurs utilisant Linux comme environnement de développement a diminué au fil des années : par rapport à 2021, elle a perdu 8 points de pourcentage.

Plateformes et outils pour le déploiement et l'inférence+ de 100

18%

Hugging Face

17%

Amazon Sagemaker

15%

MLflow

13%

AzureML

9%

Databricks

8%

VertexAI

7%

Kubeflow

7%

Nvidia Triton

ORM+ de 100

202120222024
34 %35 %34 %SQLAlchemy
29 %28 %25 %Django ORM
16 %16 %13 %Raw SQL
7 %SQLModel
5 %8 %3 %SQLObject
3 %3 %2 %Peewee
2 %3 %2 %Tortoise ORM
1 %2 %1 %Dejavu
1 %3 %1 %PonyORM
4 %4 %3 %Autre
36 %34 %41 %Je ne fais pas de développement de bases de données
041 %

La part de ceux qui ne développent pas de bases de données a augmenté de 7 points de pourcentage par rapport à l'année dernière.

ORM+ de 100

43%

9%

Je ne fais pas de développement de bases de données

36%

54%

SQLAlchemy

15%

57%

Django ORM

13%

15%

Raw SQL

Vladimir Sotnikov
Responsable du développement chez JetBrains Computational Arts Initiative

« Les data scientists utilisent beaucoup moins souvent les bases de données que les développeurs web. Cela changera probablement en 2024, à mesure que les bases de données vectorielles gagneront en popularité pour les applications LLM. »

LinkedIn, Google Scholar

Bases de données+ de 100

202120222023
43 %42 %43 %PostgreSQL
38 %36 %34 %SQLite
37 %37 %30 %MySQL
20 %19 %17 %MongoDB
18 %16 %17 %Redis
10 %12 %10 %MS SQL Server
10 %MariaDB
6 %7 %6 %Oracle database
5 %DynamoDB
3 %4 %4 %Amazon Redshift
4 %BigQuery
2 %3 %2 %Cassandra
2 %3 %2 %Neo4j
2 %ClickHouse
2 %Firebase Realtime Database
1 %2 %1 %HBase
1 %2 %1 %DB2
1 %2 %1 %h2
1 %Apache Pinot
1 %Apache Druid
1 %2 %0 %Couchbase
6 %6 %4 %Autre
19 %18 %20 %Aucun
0 %43 %

Veuillez noter qu'en 2023, la liste a été élargie avec de nouvelles options.

PostgreSQL reste la base de données la plus populaire parmi les utilisateurs de Python pour la troisième année consécutive.

Systèmes d'intégration continue (CI)+ de 100

33%

GitHub Actions

21%

Gitlab CI

12%

Jenkins / Hudson

7%

Azure DevOps

6%

AWS CodePipeline / AWS CodeStar

6%

Google Cloud Build

4%

CircleCI

Mukul Mantosh
Developer Advocate de l'équipe Web and Data Advocacy chez JetBrains

« GitHub Actions est un outil sur lequel je compte énormément. Du point de vue d'un développeur, je n'ai pas besoin d'un expert DevOps ou CI. C'est simplement un fichier YAML qui simplifie le processus d'exécution des pipelines. »

LinkedIn, X (anciennement Twitter)

Outils de documentation+ de 100

43%

Markdown

25%

Swagger

16%

Sphinx

14%

Postman

13%

Wiki

7%

MKDocs

7%

rST

Outils de gestion des configurations+ de 100

16%

Ansible

5%

Puppet

3%

Chef

3%

Salt

8%

Une solution personnalisée

3%

Autre

67%

Aucun

IDE / Éditeur principal

41%

Code Visual Studio

31%

PyCharm

3%

Vim

3%

Jupyter Notebook

3%

Neovim

2%

Sublime Text

2%

Emacs

1%

IntelliJ IDEA

1%

IDLE

1%

NotePad++

1%

Spyder

1%

JupyterLab

1%

Python Tools for Visual Studio

2%

Autre

5%

Aucun

Pour identifier les éditeurs et les IDE les plus populaires, nous avons posé une question à réponse unique : « Quel est l’éditeur principal que vous utilisez actuellement pour développer en Python ? ».

Parmi les utilisateurs de PyCharm, 68 % choisissent PyCharm Professional Edition.

Comparaison Science des données / Développement web

44%

46%

Code Visual Studio

27%

37%

PyCharm

7%

0%

Jupyter Notebook

Seuls 6 % des utilisateurs de VS Code utilisent VS Code Data Wrangler. En parallèle, 51 % des utilisateurs de VS Code utilisent sa prise en charge de Jupyter.

La prise en charge de Jupyter dans IntelliJ IDEA et PyCharm est utilisée respectivement par 34 % et 47 % des utilisateurs.

IDE / éditeurs utilisés en plus de l'IDE / éditeur principal+ de 100

22%

Code Visual Studio

20%

Jupyter Notebook

17%

Vim

13%

PyCharm Community Edition

12%

JupyterLab

11%

NotePad++

9%

Sublime Text

7%

PyCharm Professional Edition

7%

Nano

Nombre d'IDE / éditeurs utilisés

23%

1

38%

2

21%

3

19%

4 +

Selon nos données, 40 % des personnes interrogées utilisent 3 IDE/éditeurs ou plus pour le développement Python, ce qui est très proche du nombre de ceux qui utilisent 2 IDE/éditeurs simultanément.

Paquets Python

Quel outil utilisez-vous pour isoler les environnements Python entre les projets ?+ de 100

202120222023
44 %43 %55 %venv
42 %37 %28 %virtualenv
21 %21 %20 %Conda
14 %16 %18 %Poetry
16 %14 %9 %Pipenv
7 %6 %4 %virtualenvwrapper
1 %3 %3 %Hatch
4 %3 %4 %Autre
15 %15 %11 %Je n'utilise aucun outil pour isoler les environnements Python
1 %55 %

Quels outils utilisez-vous pour gérer les dépendances ?+ de 100

77%

Pip

19%

Conda

19%

Poetry

9%

pip-tools

9%

Pipenv

3%

Hatch

3%

PDM

2%

Autre

6%

Aucun

Dans quel format les informations sur vos dépendances d'applications sont-elles stockées ?+ de 100

63%

requirements.txt

32%

pyproject.toml

17%

setup.py

8%

Pipfile

8%

environment.yml

8%

setup.cfg

D'où installez-vous les paquets ?100 

80%

PyPI

28%

GitHub

16%

Anaconda

14%

Une source locale

10%

Depuis la distribution Linux

10%

Un miroir interne de PyPI

10%

Un Python Package Index privé

Dmitry Ustalov
Chef de l'équipe d'évaluation des IA chez JetBrains

« Bien que PyPI et GitHub soient pratiques, assurez-vous que votre chaîne d'approvisionnement de logiciels est sous contrôle. »

En savoir plus sur les attaques contre la chaîne d'approvisionnement

LinkedIn, GitHub

D'où installez-vous les paquets ?100 

80%

90%

PyPI

30%

25%

GitHub

27%

6%

Anaconda

14%

10%

Une source locale

13%

2%

Autres canaux Conda

Vladimir Sotnikov
Responsable du développement chez JetBrains Computational Arts Initiative

« Les développeurs spécialisés en ML utilisent souvent Anaconda, ce qui paraît assez évident. Fait notable, ils utilisent souvent aussi GitHub pour l'installation de paquets. En effet, de nombreuses bibliothèques Python pour le machine learning incluent des binaires pour C/C++ qui doivent être compilés nativement pour des versions précises de Nvidia CUDA et des configurations matérielles spécifiques, ce qui rend PyPI peu pratique, voire inutilisable à ces fins. »

LinkedIn, Google Scholar

25 %

des personnes interrogées déclarent avoir empaqueté et publié les applications Python qu'elles ont développées dans un référentiel de paquets.

Quels outils utilisez-vous pour créer des paquets de vos bibliothèques Python ?100 

53%

Twine

33%

Poetry

9%

Flit

9%

Hatch

6%

PDM

9%

Autre

Jay Miller
Staff Developer Advocate chez Aiven
Vladimir Sotnikov
Responsable du développement chez JetBrains Computational Arts Initiative

« Comme l'a également souligné l'enquête de l'année dernière, Poetry gagne de plus en plus en popularité. La résolution des conflits de dépendances est une fonctionnalité qui permet de gagner beaucoup de temps par rapport à pip. »

LinkedIn, Google Scholar

Utilisez-vous un environnement virtuel dans les conteneurs ?

31%

Oui

47%

Non

1%

Autre

21%

Je n'utilise pas de conteneurs pour le développement Python

16 %

des personnes interrogées créent des modules binaires pour Python à l'aide d'un autre langage comme C, C++, Rust ou Go.

Langages pour créer des modules binaires pour Python+ de 100

55%

C++

44%

C

27%

Rust

9%

Go

7%

C# / .NET

5%

Fortran

3%

Assembly

5%

Autre

Données démographiques

Genre

Cette question était facultative.

Tranche d'âge

8%

18–20

32%

21–29

33%

30–39

16%

40–49

7%

50–59

3%

60 ou plus

Travail au sein d'une équipe ou de manière indépendante

Travail sur des projets

Situation professionnelle

62%

Employé·e à plein temps par une entreprise / organisation

12%

Étudiant·e

6%

Indépendant·e

6%

Freelancer

5%

Étudiant·e employé·e

4%

Employé·e à temps partiel par une entreprise / organisation

1%

Retraité·e

4%

Actuellement sans emploi

1%

Autre

Fonction professionnelle+ de 100

62%

Développeur / Programmeur

16%

Direction d'équipe

15%

Scientifique des données

15%

Ingénieur de données

14%

Architecte

12%

Analyste de données

10%

Ingénieur ML / MLOps

9%

Chercheur universitaire

8%

Assistance technique

6%

Analyste système

6%

DPI / PDG / CTO

5%

Management produit

4%

DBA

4%

Ingénierie assurance qualité

4%

Rédaction technique

Taille d'entreprise

7%

Ce n'est que moi

10%

2–10

16%

11–50

25%

51–500

9%

501–1 000

12%

1 001–5 000

18%

Plus de 5 000

3%

Je n'en suis pas sûr·e

Taille d'équipe

69%

2 à 7 personnes

19%

8 à 12 personnes

7%

13 à 20 personnes

2%

21 à 40 personnes

3%

Plus de 40 personnes

Jay Miller
Staff Developer Advocate chez Aiven

« Avec le nombre de licenciements et l'augmentation du nombre de personnes sur le marché du travail technologique, je me demandais comment les Pythonistes s'en sortaient. Il semble que la composition des équipes n'ait pas beaucoup changé ces dernières années, si ce n'est que les équipes de 21 à 40 personnes ont reculé. »

LinkedIn, Kjaymiller

Secteur d'activité de l'entreprise

38%

Technologies de l'information/Développement de logiciels

6%

Sciences

6%

Éducation/Formation

6%

Comptabilité/Finances/Assurance

4%

Fabrication

4%

Médical/Santé

4%

Banque/Immobilier/Prêts immobiliers

2%

Ventes/Distribution/Développement commercial

2%

Sécurité

2%

Logistique/Transports

2%

Marketing

2%

À but non lucratif

Dans quel pays / quelle région vivez-vous ?

20%

États-Unis

9%

Inde

6%

Allemagne

4%

Royaume-Uni

4%

France

4%

Chine continentale

3%

Russie

3%

Brésil

3%

Canada

2%

Italie

2%

Pologne

2%

Espagne

38%

Autre

Les pays / régions représentant moins d'1 % figurent dans la catégorie « Autre ».

Méthodologie et données brutes

Vous voulez explorer les données en détail ? Téléchargez les réponses anonymisées à l'enquête et voyez ce que vous pouvez apprendre ! Partagez vos conclusions et vos analyses en mentionnant @jetbrains et @ThePSF sur Twitter avec le hashtag #pythondevsurvey.

Avant d'examiner ces données plus en détail, veuillez prendre en compte ces informations :

Cet ensemble de données comprend uniquement les réponses collectées par les canaux officiels de la Python Software Foundation. Après filtrage des doublons et des réponses non fiables, l'ensemble de données comprend plus de 25 000 réponses collectées entre novembre 2023 et février 2024. L'enquête a été promue sur python.org et le blog de la PSF, les listes de diffusion officielles de Python et les subreddits concernant Python, ainsi que par les comptes Twitter et LinkedIn de la PSF. Afin d’éviter que l’enquête ne penche en faveur d’un outil ou d’une technologie spécifiques, aucun canal associé aux produits, aux services ou aux fournisseurs n’a été utilisé pour recueillir les réponses.

Les données ont été anonymisées. Elles ne contiennent ni informations personnelles ni détails de géolocalisation. Afin d’empêcher l’identification de tout participant individuel par ses commentaires, tous les champs ouverts ont été supprimés.

Nous partageons l’ensemble des données, des questions et la logique de l’enquête. Nous avons utilisé plusieurs méthodes de tri pour les propositions de réponse (alphabétique, aléatoire et directe). L’ordre des réponses est précisé pour chaque question.

Critères pour le filtrage et l'élimination de certaines réponses

Tout répondant ayant l'une des caractéristiques suivantes 
  • Être âgé de 17 ans ou moins.
  • Pas de réponse à la question « Combien d'années d'expérience professionnelle avez-vous dans le codage ? » à la troisième page de l'enquête.
  • Être âgé de moins de 21 ans et avoir plus de 11 ans d'expérience professionnelle en codage.
  • Trop de réponses uniques pour les questions à choix multiples (à l'exception des réponses « Aucun·e »).
  • Réponses multiples provenant de la même adresse e-mail (une seule réponse est utilisée).
  • N'utilise pas Python.

Tout répondant indiquant au moins deux des éléments suivants 
  • Plus de 16 langages de programmation utilisés.
  • Plus de 9 fonctions professionnelles.
  • Plus de 11 réponses sélectionnées en réponse à la question « À quelles fins utilisez-vous Python ? ».
  • Le pays ou la région en question figure en tête de liste par ordre alphabétique et non parmi les pays ou régions les plus populaires.
  • Les postes de PDG et d'assistance technique.
  • Le poste de PDG et un âge inférieur à 21 ans.
  • Trop de réponses sélectionnées de façon générale (utilisation de presque tous les frameworks pour la science des données, pour le développement web, l'empaquetage, etc.)
  • Des réponses données trop rapidement (moins de 5 secondes par question).

Une fois encore, au nom de la Python Software Foundation et de JetBrains, nous tenons à remercier toutes les personnes qui ont participé à cette enquête. Grâce à votre aide, nous sommes en mesure d'établir une cartographie plus précise de la communauté Python !

Contribuez à la campagne de dons de la PSF Recurring Giving Campaign. La PSF est une organisation à but non lucratif entièrement financée par ses sponsors, ses membres et les dons de contributeurs individuels.

Consultez les résultats de l'enquête auprès des développeurs Python de 2022, 2021, 2020, 2019, 2018, et 2017.

Découvrez les rapports d'autres enquêtes de JetBrains !

Merci du temps que vous nous avez accordé !

Nous espérons que vous avez trouvé notre rapport utile. Partagez ce rapport avec vos amis et collègues.

Répondre à d'autres questionnaires à l'avenir :

Si vous avez des questions concernant cette enquête ou des suggestions pour les prochaines enquête, écrivez à surveys@jetbrains.com ou à psf@python.org.