Il s'agit de la cinquième Enquête annuelle officielle sur les Développeurs Python, menée en collaboration par la Python Software Foundation et JetBrains. À l'automne 2021, plus de 23 000 développeurs et passionnés de Python, issus de près de 200 pays et régions, ont répondu au questionnaire de l'enquête pour nous aider à déterminer l'état actuel du langage et de son écosystème.
Au cours des quatre dernières années, la proportion de développeurs utilisant Python comme langage principal est restée quasiment la même, oscillant entre 84 et 85 %.
JavaScript est le langage le plus souvent utilisé avec Python. Toutefois, parmi les développeurs qui utilisent Python comme langage secondaire, l'utilisation de C/C++ est quasiment aussi répandue que celle de JavaScript. Le recours à HTML/CSS, Bash/Shell et SQL est également très répandu, chacun d'eux étant utilisé par plus d'un tiers des développeurs Python.
Développement web fait référence aux personnes ayant sélectionné « Développement web » en 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.
Sans surprise, les langages les plus utilisés par les développeurs web en parallèle de Python sont JavaScript (69 %) et HTML/CSS (60 %), tandis que les développeurs impliqués dans des tâches liées aux données utilisent plus souvent SQL (42 %). Par ailleurs, l'absence d'utilisation d'un langage supplémentaire est trois fois plus élevée chez les développeurs qui travaillent sur des tâches liées aux données, par rapport aux développeurs web.
Dans cette section, nous avons posé des questions visant à découvrir à quelles fins les gens utilisent Python, dans quels types de développement ils sont impliqués et comment ils combinent leurs différentes utilisations du langage.
La répartition des cas d'utilisation de Python n'a pas connu de grands changements au fil des ans. L'analyse de données, le machine learning, le développement web et le DevOps restent les domaines dans lesquels Python est le plus utilisé.
Un quart des développeurs qui utilisent Python comme langage principal l'utilisent principalement pour le développement web. Parmi ceux qui utilisent Python comme langage secondaire, seuls 12 % l'utilisent à cette fin.
Il est intéressant de noter que l'analyse de données comme domaine principal d'utilisation de Python est mentionnée par quasiment la même proportion de développeurs pour lesquels Python est le langage de programmation principal (17 %) et secondaire (16 %).
Seules les personnes travaillant dans l’analyse des données et le machine learning ont été invités à répondre à cette question.
Seuls 29 % des développeurs Python impliqués dans l'analyse des données et le machine learning se considèrent comme des data scientists.
En moyenne, la proportion des utilisateurs de Python 2 diminue de 5 points de pourcentage chaque année, et aujourd'hui, seuls 5 développeurs sur 100 l'utilisent.
Il est intéressant de noter que, par rapport à Python 3, Python 2 est plus souvent utilisé pour le graphisme informatique, les jeux et le développement mobile.
Remarque : Enthought a obtenu moins de 0,5 % et a été intégré dans la catégorie Autres.
Plus de la moitié des utilisateurs de Windows téléchargent Python via Python.org, alors que seulement un tiers des utilisateurs de Linux le font. Sans surprise, les utilisateurs de Linux et de macOS installent et mettent à jour Python le plus souvent en utilisant les options fournies par le système d'exploitation. Parallèlement, pyenv et les conteneurs Docker sont assez populaires auprès des utilisateurs de macOS.
Parmi les développeurs Python, 75 % utilisent des outils pour isoler les environnements Python. Il est intéressant de noter que Conda est l'outil le plus populaire parmi les développeurs qui utilisent Jupyter Notebook (50 %), tandis que les autres développeurs préfèrent Virtualenv et Docker.
Flask, Django et FastAPI sont toujours les trois principaux frameworks web Python. FastAPI, initialement lancé fin 2018, affiche la croissance la plus rapide, avec une progression de 9 points de pourcentage par rapport à l'année précédente. La proportion des utilisateurs de Flask a quant à elle diminué de 5 points de pourcentage par rapport à 2020.
Vous pouvez en savoir plus sur les frameworks Django en consultant les résultats de l'Enquête 2021 sur les Développeurs Django, menée en partenariat avec la Django Software Foundation.
10 % des développeurs Python utilisent simultanément 7 frameworks et bibliothèques de science des données ou plus, tandis qu'environ la moitié d'entre eux utilisent 2 frameworks ou moins.
La majorité des autres frameworks sont plus populaires chez les développeurs web que chez les data scientists, qui utilisent beaucoup plus souvent Tkinker et PyQT.
Le niveau de popularité des frameworks de tests unitaires Python reste pratiquement identique à celui de l'année dernière.
Alors que seulement 56 % des développeurs indépendants les utilisent, 75 % des développeurs travaillant dans des entreprises de 5 000 employés ou plus déclarent utiliser des frameworks de tests unitaires.
SQLAlchemy est l'ORM le plus populaire parmi les utilisateurs de bases de données.
Il est intéressant de noter que 52 % des utilisateurs de Redis utilisent Django ORM, alors qu'il est utilisé par moins d'un tiers des développeurs Python dans leur ensemble. Par ailleurs, 20 % des utilisateurs d'Amazon Redshift déclarent utiliser SQLObject, alors que son utilisation parmi la population des développeurs Python dans son ensemble n'est que de 5 % environ.
80 % des data scientists utilisent des bases de données, contre 98 % des développeurs web.
PostgreSQL est utilisé 32 points de pourcentage plus souvent, Redis 25 points plus souvent, et SQLite 12 points plus souvent, dans le développement web que dans la science des données. Parallèlement, les data scientists déclarent utiliser Oracle Database deux fois plus souvent que les développeurs web.
La répartition des outils Big Data reste quasiment identique par rapport à l'année dernière. En général, les data scientists les utilisent 13 points de pourcentage plus souvent que les autres développeurs, et Apache Spark et Dask sont environ deux fois plus populaires parmi eux.
des développeurs Python utilisent des plateformes cloud.
Seules les personnes qui utilisent des plateformes cloud ont répondu à cette question.
Il est intéressant de noter que les utilisateurs de Visual Basic, C# et C/C++, utilisent AWS presque deux fois moins souvent que les développeurs Python en général.
Seules les personnes qui utilisent des plateformes cloud ont répondu à cette question.
Les machines virtuelles continuent de perdre en popularité. Alors qu'en 2018 elles étaient le choix le plus populaire, avec un niveau d'utilisation de 47 %, aujourd'hui, seuls 41 % des développeurs Python en utilisent.
Seules les personnes qui utilisent des plateformes cloud ont répondu à cette question.
Le développement Python local avec virtualenv est extrêmement populaire parmi les personnes impliquées dans le développement web, DevOps, et le prototypage de logiciels (entre 61 et 65 %). L'utilisation des conteneurs Docker est plus particulièrement populaire chez les développeurs web (54 %).
Les machines virtuelles sont largement utilisées par les développeurs impliqués dans le DevOps, le machine learning et la programmation réseau (entre 26 et 27 %). Il est intéressant de noter que les personnes impliquées dans le DevOps et le machine learning utilisent également des environnements de développement à distance plus souvent que tous les autres répondants.
Par rapport à 2020, la popularité de Linux et de macOS a diminué de 5 points de pourcentage pour chacun, tandis que l'utilisation de Windows a augmenté de 10 points de pourcentage.
Introduit en 2018, GitHub Actions a rapidement gagné en popularité et occupe désormais la première place dans la liste des systèmes d'intégration continue (CI), en étant utilisé par un peu moins d'un tiers des développeurs Python.
Un autre système de CI en pleine croissance est Gitlab CI : son utilisation a augmenté de 4 points de pourcentage depuis 2018. Parallèlement, Travis CI perd rapidement de sa popularité, avec une baisse d'utilisation de 13 % par rapport à 2018. Jenkins/Hudson ont également perdu 8 points de pourcentage en trois ans.
des programmeurs Python utilisent des outils de documentation. Le plus populaire est Sphinx.
Les développeurs qui utilisent Python comme langage principal utilisent un profileur Python et une couverture de code 8 points de pourcentage plus fréquemment et des environnements virtuels Python 10 points de pourcentage plus fréquemment que les développeurs qui utilisent Python comme langage secondaire.
La proportion d'utilisation combinée des éditions Community et Professional de PyCharm est de 31 %, ce qui est proche du résultat de l'année dernière. VS Code a connu une augmentation de 6 points de pourcentage par rapport à l'année dernière.
Il est intéressant de voir que PyCharm et VS Code sont aussi populaires parmi les développeurs web (39 %), tandis que les data scientists préfèrent VS Code comme IDE principal (9 points de pourcentage de plus).
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 ? ».
Développement web fait référence aux personnes ayant sélectionné « Développement web » en 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.
Le plus souvent, les développeurs Python découvrent leur IDE principal par le biais de formations, de recommandations d'amis/collègues, ou de moteurs de recherche.
Il est intéressant de noter que seulement 1 % des répondants ont déclaré avoir découvert l'outil grâce à de la publicité.
57 % des utilisateurs de Jupyter Notebook en ont entendu parler pour la première fois à l'école/université ou dans le cadre de cours en ligne, contre 25 % pour l'ensemble des répondants.
VS Code, Jupyter Notebook et PyCharm sont les plus populaires, chacun étant utilisé par plus de 20 % des développeurs Python en plus de leur IDE principal.
VS Code, Jupyter Notebook et PyCharm sont les plus populaires, chacun étant utilisé par plus de 20 % des développeurs Python en plus de leur IDE principal.
Ceux qui utilisent Jupyter Notebook comme IDE principal utilisent également Spyder environ quatre fois plus souvent que les autres développeurs Python.
En 2021, la Python Software Foundation a nommé un nouveau développeur résident pour travailler à plein temps sur le langage Python et aider sa communauté de développeurs.
En juillet, le développeur Łukasz Langa a été engagé en tant que développeur résident pour CPython. Langa travaille au nettoyage du backlog, à l'étude des priorités des projets et à l'examen d'autres domaines d'intérêt.
23 % des développeurs Python connaissent déjà le rôle de développeur résident, et 91 % d'entre eux pensent qu'il s'agit d'une bonne initiative.
De plus, 30 % des développeurs qui connaissent le rôle de développeur résident disent déjà constater l'impact de cette initiative.
Seuls 19 % des utilisateurs de Python ont déjà signalé les bugs qu'ils trouvent. Il est intéressant de noter que l'utilisation de bugs.python.org n'est pas le moyen le plus populaire pour signaler les bugs. En effet, près de deux fois plus de programmeurs préfèrent poser une question ailleurs ou créer une requête pull sur GitHub.
Parmi ceux qui ont signalé des bugs, 73 % ont vu leur problème résolu, et seuls 7 % des répondants disent n'avoir jamais eu de réponse.
Seuls les répondants ayant déjà signalé des problèmes ont répondu à cette question.
des développeurs Python utilisent des conteneurs, et 59 % d'entre eux utilisent un environnement virtuel dans ces conteneurs.
45 % des développeurs Python utilisent des outils pour fixer les versions des dépendances des applications. La méthode la plus courante pour les stocker est le fichier requirements.txt, utilisé par les trois quarts des développeurs.
Seuls les répondants qui utilisent des outils pour gérer les versions précises/exactes des dépendances d'applications ont répondu à cette question.
Seuls les répondants qui utilisent des outils pour gérer les versions précises/exactes des dépendances d'applications ont répondu à cette question.
90 % des développeurs déclarent utiliser pip pour installer les paquets Python. La plupart obtiennent des paquets via le Python Package Index.
des développeurs Python déclarent développer des applications et 46 % d'entre eux utilisent Setuptools à cette fin.
Seuls les répondants qui développent des applications ont répondu à cette question.
Alors que plus de la moitié des utilisateurs de Python développent des applications, seuls 40 % d'entre eux ont déjà publié ces applications dans un référentiel de paquets.
Seuls les répondants qui développent des bibliothèques Python ont répondu à cette question.
34 % des répondants développent des bibliothèques Python, et 71 % d'entre eux utilisent Setuptools, qui est donc la méthode la plus courante pour créer des paquets.
Il est intéressant de noter que seuls 27 % des développeurs de bibliothèques Python les ont déjà publiées dans un référentiel de paquets.
Seuls les répondants qui ont publié leurs bibliothèques Python empaquetées ont répondu à cette question.
Le Python Package Index est l'emplacement le plus populaire pour publier les bibliothèques et les paquets d'applications développés, tandis que Private PyPI est utilisé environ deux fois moins souvent.
Seuls les répondants employés dans des entreprises ont répondu à cette question.
Seuls les répondants employés dans des entreprises ont répondu à cette question.
Seuls les répondants employés dans des entreprises ont répondu à cette question.
Seuls les répondants employés dans des entreprises ont répondu à cette question.
Seuls les répondants qui ont un emploi ont répondu à cette question.
Les pays/régions sélectionnés par moins de 1 % des participant·es figurent dans la catégorie « Autre ».
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 en apprendre ! Partagez vos conclusions et vos analyses en mentionnant @jetbrains et @ThePSF sur Twitter avec le hashtag #pythondevsurvey.
L'ensemble de données comprend uniquement les réponses collectées par les canaux officiels de la Python Software Foundation. Après avoir éliminé les réponses en doublon, non fiables et incohérentes, l'ensemble de données comprend plus de 23 000 réponses, recueillies entre le 11 octobre et le 6 décembre 2021 grâce à la promotion de l'enquête sur python.org, le blog de la PSF, les comptes Twitter et LinkedIn de la PSF, les listes de diffusion officielles de Python et les subreddits liés à Python. 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.
Par ailleurs, ces données sont anonymes et ne comportent pas d'informations personnelles ou de géolocalisation. Afin d’empêcher l’identification de tout participant individuel par ses textes de 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.
Au moins deux des éléments suivants :
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 du paysage de la communauté Python !
Contribuez à la campagne de collecte de dons en faveur de la PSF. La PSF est une organisation à but non lucratif entièrement financée par ses sponsors, ses membres et le grand public.
Consultez les résultats de l'Enquête sur les Développeurs Python de 2020, 2019, 2018 et 2017.
Découvrez les autres rapports d'enquêtes de JetBrains !
Nous espérons que vous avez trouvé notre rapport utile. Partagez ce rapport avec vos amis et collègues.
Si vous avez des questions concernant cette enquête ou des suggestions pour les prochaines, veuillez nous contacter à l’adresse surveys@jetbrains.com ou psf@python.org.