État des communautés des langages de programmation
L'enquête de SlashData a touché plus de 19 000 personnes de 155 pays et offre une vision légèrement différente des autres classements de popularité des langages de GitHub, RedMonk, Stack Overflow et Tiobe. Dans la 20e édition de son rapport State of the Developer Nation, l'entreprise estime qu'au premier trimestre de cette année, la communauté JavaScript représentait une grande partie des quelque 24,3 millions de développeurs actifs dans le monde. SlashData réalise cette enquête deux fois par an et évalue cette fois que la taille de la communauté JavaScript à 13,8 millions de personnes.
Cette proportion inclut les communautés de TypeScript et CoffeeScript, qui sont également des langages de programmation basés sur la même norme ECMAScript. Le langage continue d'attirer de nouveaux développeurs, avec environ 1,4 million de plus qu'il y a six mois. « Entre le quatrième trimestre 2017 et le premier trimestre 2021, plus de 4,5M de développeurs ont rejoint la communauté, la plus forte croissance en termes absolus parmi tous les langages », a écrit SlashData dans son rapport. Selon l'entreprise, JavaScript s'observe même dans les secteurs logiciels où il ne fait pas partie des premiers choix des développeurs.
Elle donne comme exemple la science des données et le développement embarqué, environ un quart des développeurs l'utilisant dans leurs projets. Elle estime que la deuxième population la plus importante, soit 10,1 millions de développeurs, est constituée d'utilisateurs de Python, tandis que l'on compte désormais 9,4 millions de développeurs Java. Les trois premiers langages de programmation les plus populaires selon les données de SlashData correspondent au classement de RedMonk, qui se fonde sur les données de GitHub et de Stack Overflow pour constituer son index.
SlashData estime que les trois autres plus grandes communautés de développeurs sont celles qui utilisent C/C++ (7,3 millions), C# de Microsoft (6,5 millions) et PHP (6,3 millions). D'autres groupes importants de développeurs sont des fans de Kotlin, Swift, Go, Ruby, Objective-C, Rust et Lua. JavaScript a gagné 4,5 millions de développeurs au sein de la communauté depuis 2017, tandis que Python a gagné 1,6 million de développeurs au cours de l'année écoulée. Python serait ainsi le langage qui connaît la croissance la plus rapide avec plus de six millions de développeurs.
Selon SlashData, environ 70 % des développeurs axés sur l'apprentissage automatique (ML) déclarent l'utiliser, probablement en raison de bibliothèques ML comme TensorFlow, développé par Google, PyTorch de Facebook et NumPy. Mais Python est aussi largement utilisé pour l'automatisation des systèmes dorsaux. « À titre de comparaison, seuls 17 % des répondants utilisent R, l'autre langage souvent associé à la science des données », note SlashData. Cependant, Rust et Lua seraient les deux communautés qui ont connu la croissance la plus rapide au cours des 12 derniers mois, bien que partant d'une base plus faible que Python.
Rust n'est pas très utilisé, mais cette année, sa communauté est sortie de l'ombre de Mozilla et a créé la fondation Rust, soutenue par Amazon Web Services, Microsoft Azure, Google et Mozilla. Facebook a également rejoint la communauté il y a quelques jours. Google souhaite que Rust devienne un deuxième langage pour le noyau Linux et l'utilise pour écrire du nouveau code pour le système d'exploitation Android en raison de ses garanties de sécurité de la mémoire qui permettent d'éviter les bogues de mémoire. Rust a également fait ses débuts dans le noyau Linux il y a quelques semaines.
Les données en rapport avec les spécialistes en ML
SlashData a déclaré que le domaine de la science des données (DS), de l'apprentissage automatique et de l'intelligence artificielle (IA) s'adapte et se développe. De l'omniprésence de la science des données dans le pilotage des perspectives commerciales, à la reconnaissance faciale de l'IA et aux véhicules véhicules autonomes, SlashData estime que les données sont en passe de devenir la monnaie de ce siècle. Cette partie du rapport State of the Developer Nation a révélé que 68 % des développeurs en ML/IA/DS travaillent avec des données textuelles non structurées.
Il s'agirait du type de données le plus courant avec lequel ces développeurs travaillent. Cependant, les développeurs travaillent fréquemment avec plusieurs types de données. L'audio est le type de données le plus fréquemment combiné : 75 à 76 % de ceux qui utilisent des données audio utilisent également des images, des vidéos ou du texte. Étant donné que les applications les plus populaires des données audio sont la génération de synthèse vocale (47 %) et la reconnaissance vocale (46 %), les chevauchements avec les données vidéo et textuelles sont évidents.
Les données d'image, comme les données audio, se chevauchent fortement avec les données vidéo : 78 % de ceux qui utilisent des données vidéo utilisent également des données d'image. Avec 59 % d'utilisation, les données tabulaires constituent le deuxième type de données le plus populaire. Environ 92 % des données tabulaires utilisées par les développeurs en ML/DS/IA sont observées, tandis que les 8 % restants sont des données simulées. Les deux cas d'utilisation les plus courants de ces données sont la planification des effectifs, 39 % des développeurs qui utilisent la simulation le font, et l'allocation des ressources, également à 39%.
En outre, le rapport a révélé que les développeurs en ML/IA/DS s'engagent dans leur domaine à différents niveaux. Certains sont des professionnels, d'autres des étudiants ou des amateurs, et d'autres encore une combinaison des deux. La majorité (53 %) des développeurs en ML/DS/IA seraient des professionnels, bien qu'ils ne le soient pas exclusivement. De tous les types de données, les données audio ont la plus forte proportion de développeurs en ML/DS/IA professionnels.
Environ 64 % des développeurs en ML/AI/DS qui utilisent ce type de données se sont classés comme professionnels ; et la majorité (50 %) de ces professionnels appliquent les données audio à la génération de la synthèse vocale. La forte proportion de professionnels dans ce domaine pourrait être un effet secondaire des variables de co-influence : les données audio sont le type de données le plus fréquemment combiné avec d'autres types, et les professionnels sont plus susceptibles d'utiliser de nombreux types de données différents.
Les types de données les plus populaires auprès des étudiants sont les données sous forme d'images, de tableaux et de textes. Entre 18 et 19 % des développeurs qui travaillent avec ces types de données sont des étudiants.
Quelques chiffres sur les technologies émergentes
Dans son rapport, SlashData a déclaré que l'influence d'une technologie varie en fonction de l'intérêt qu'elle suscite. Ainsi, il estime que peu de technologies récentes ont autant influencé les pratiques de développement logiciel que DevOps. DevOps serait devenue un véritable courant dominant, avec une adoption généralisée dans tous les secteurs, industries et rôles du logiciel. « Nous sommes ravis de dire que, pour ces raisons, DevOps est sorti de notre tracker des technologies émergentes et a été remplacé par plusieurs technologies nouvelles et passionnantes qui ont le potentiel de remodeler le monde », a déclaré SlashData.
« Nous utiliserons ici l'engagement des développeurs envers ces technologies et leur adoption pour nous aider à comprendre comment cela pourrait se produire », a ajouté l'entreprise. Après DevOps, la robotique, les miniapplications (applications intégrées dans une autre application) et la vision par ordinateur arrivent en tête des technologies émergentes qui intéressent le plus les développeurs. Environ la moitié des développeurs ont déclaré travailler sur chacune de ces technologies, s'y former ou s'y intéresser. SlashData a rapporté que les miniapplications sont plus largement adoptées par les développeurs professionnels.
En outre, les amateurs et les étudiants s'intéresseraient davantage à la robotique. Toutefois, parmi les développeurs qui s'intéressent aux miniapplications, près d'un quart travailleraient actuellement sur cette technologie. Pour la vision par ordinateur, ce chiffre tombe à 15 %, et pour la robotique, à seulement 10 %. Près de trois développeurs engagés sur dix s'informent sur les cryptomonnaies, ce qui représente le taux le plus élevé de toutes les technologies, bien que les autres applications de la blockchain les suivent de près avec 26 %. Selon SlashData, l'intérêt académique pour ces technologies ne s'est pas encore traduit directement par leur adoption.
Selon le rapport, seuls 14 % et 12 % des développeurs engagés travaillent activement sur des projets utilisant ces technologies. Plus de 40 % d'entre eux sont impliqués professionnellement dans des applications Web/Software as a Service (SaaS), et un tiers est impliqué dans le développement mobile en tant que professionnel. L'adoption des cryptomonnaies (+5 points de pourcentage) et des autres applications de la blockchain (+4 points de pourcentage) a augmenté au cours des douze derniers mois. Les développeurs continuent de trouver des applications pratiques pour ces technologies.
L'informatique quantique et les voitures à conduite autonome continuent de languir dans les derniers rangs en matière d'adoption, mais continuent toutefois de stimuler l'imagination de certains développeurs, plus de deux développeurs sur cinq s'intéressent à ces technologies.
Source : State of the Developer Nation Avril 2021
Et vous ?
Quel est votre avis sur le sujet ?
Voir aussi
Index TIOBE : Objective-C perd de sa popularité et quitte le top 20 des langages de programmation, alors que l'on assiste à un regain de croissance pour le langage Fortran
JavaScript reste le langage le plus populaire et Python relègue Java à la 3e place, son classement le plus bas jamais enregistré, selon le classement de RedMonk
JetBrains lance l'édition 2021 de son enquête sur l'écosystème des développeurs et vous invite à contribuer afin de recueillir des informations représentatives de la communauté
Python et C++ sont les langages qui ont connu la plus forte croissance de popularité sur l'année 2020, selon les statistiques de l'index TIOBE