Paul Jansen, PDG de TIOBE Software, a commenté les statistiques en ce sens : « Python n'a jamais été aussi proche de la position numéro 1 de l'index TIOBE. Il n'a besoin que de combler 0,16 % pour dépasser C. Cela peut arriver à tout moment maintenant. Si Python devient numéro 1, un nouveau palier aura été franchi dans l'index TIOBE. Jusqu'à présent, seuls 2 autres langages ont dominé le peloton, à savoir C et Java. Voyons ce qui se passe le mois prochain ».
Cette fois-ci, Python a réussi à se hisser à la première place dans le classement TIOBE, une première en plus de 20 ans. Paul Jansen en a profité pour féliciter le père de Python :
« Pour la première fois depuis plus de 20 ans, nous avons un nouveau chef de file : le langage de programmation Python. L'hégémonie de longue date de Java et C est terminée. Python, qui a commencé comme un simple langage de script, comme alternative à Perl, est devenu mature. Sa facilité d'apprentissage, son énorme quantité de bibliothèques et son utilisation répandue dans toutes sortes de domaines en ont fait le langage de programmation le plus populaire d'aujourd'hui. Félicitations Guido van Rossum ! Proficiat ! »
Python est un langage de programmation interprété, multi-paradigme et multi-plateformes. Il favorise la programmation impérative structurée, fonctionnelle et orientée objet. Il est doté d'un typage dynamique fort, d'une gestion automatique de la mémoire par récupérateur de mémoire et d'un système de gestion d'exceptions ; il ressemble ainsi à Perl, Ruby, Scheme, Smalltalk et Tcl.
Python gagne en popularité ces temps-ci, en partie à cause de l'essor de la science des données et de son écosystème de bibliothèques logicielles d'apprentissage automatique comme NumPy, Pandas, TensorFlow de Google et PyTorch de Facebook.
En effet, Python continuerait d'être la norme et la compétence la plus recherchée dans le domaine de la science des données, dépassant de loin les autres technologies et outils, comme R, SAS, Hadoop et Java. C'est ce que suggère une analyse réalisée par Terence Shin, un spécialiste des données, qui a indiqué que l'adoption de Python pour la science des données continue de croître alors même que le langage R, plus spécialisé, est en déclin. Bien entendu, cela ne veut pas dire que les spécialistes des données vont abandonner R de sitôt. L'on continuera probablement à voir Python et R utilisés pour leurs forces respectives.
Python est également un langage facile à apprendre qui a trouvé une niche dans le matériel haut de gamme, mais moins dans les appareils mobiles et le Web – un problème que le créateur de Python, Guido van Rossum, espère résoudre grâce à des améliorations de performances sur lesquelles il travaille chez Microsoft.
C, pour sa part, passe en deuxième position, suivi par Java.
Voici le top 10 des langages de programmation les plus populaires en octobre 2021 :
- Python, avec un pourcentage de 11,27 ;
- C, avec un pourcentage de 11,16 ;
- Java, avec un pourcentage de 10,46 ;
- C++, avec un pourcentage de 7,50 ;
- C#, avec un pourcentage de 5,26 ;
- Visual Basic, avec un pourcentage de 5,24 ;
- JavaScript, avec un pourcentage de 2,19 ;
- SQL, avec un pourcentage de 2,17 ;
- PHP, avec un pourcentage de 2,10 ;
- le langage Assembleur, avec un pourcentage de 2,06.
L'index de la communauté de programmation TIOBE est un indicateur de la popularité des langages de programmation. L'index est mis à jour une fois par mois. Les évaluations sont basées sur le nombre d'ingénieurs qualifiés dans le monde, de cours et de fournisseurs tiers. Les moteurs de recherche populaires tels que Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube et Baidu sont utilisés pour calculer les notes. Il est important de noter que l'index TIOBE ne concerne pas le meilleur langage de programmation ou le langage dans lequel la plupart des lignes de code ont été écrites.
L'index peut être utilisé pour vérifier si vos compétences en programmation sont toujours à jour ou pour prendre une décision stratégique sur le langage de programmation à adopter lors du démarrage de la création d'un nouveau système logiciel.
L'étude internationale TIOBE basée sur des données web n'est absolument pas représentative du marché Pro en France, pour vous faire une meilleure idée sur le paysage professionnel dans l'Hexagone :
La perspective du père de Python sur les langages concurrents
Environ un an après avoir pris sa retraite en 2019, Guido van Rossum est revenu aux affaires en novembre 2020 avec un nouveau poste chez Microsoft. En rejoignant la firme de Redmond, il a déclaré sur Twitter qu'il s'efforcera de rendre l'utilisation de Python encore meilleure. Cela ne sera pas uniquement sur Windows, mais sur toutes les plateformes, ce qui devrait permettre de le rendre plus attrayant et plus compétitif. En effet, depuis la dernière décennie, Python est en concurrence avec des langages plus jeunes et jugés plus modernes par leurs créateurs et leur communauté.
Ces langages sont, entre autres, Rust, Go, Julia et TypeScript. Plus tôt cette année, Guido a eu l'occasion de revenir sur cette concurrence lors d'une interview. Il semblait dire qu'il n'y avait pas un meilleur langage de programmation, mais que chaque nouveau langage essayait d'améliorer les tares qu'il a identifiées dans un ou plusieurs langages précédents, ajoutait de nouvelles méthodes et fonctionnalités, etc. L'interprétation de son allocution laisse penser que c'est ce qu'ont fait les créateurs de Rust en rendant plus sûre la gestion de la mémoire.
Rust
Rust est un langage de programmation open source qui permet de créer des logiciels fiables et efficaces. Développé par Mozilla Research, la première version du langage est parue en 2010 et il jouit aujourd'hui d'une grande popularité dans toute l'industrie. Pour beaucoup, Rust remplacera à la longue le langage C dans la programmation système. Selon ses partisans, il devrait permettre d'éliminer les bogues de mémoire présents dans le code écrit en C et C++. Poussé par une grande communauté, Rust est entré en 2020 dans le top 20 de l'indice de popularité Tiobe pour la première fois.
Pour Guido, Rust est un « excellent » langage de programmation qui mérite tout l'enthousiasme à son égard. « Cela semble être un langage génial – pour certaines choses. Rust améliore vraiment C++ dans un domaine particulier – il est beaucoup plus difficile de contourner les contrôles du compilateur. Et bien sûr, il corrige le problème de l'allocation de mémoire d'une manière presque parfaite. Si vous écriviez la même chose en C++, vous ne pourriez pas être aussi sûr, par rapport à Rust, que vous avez obtenu toute votre allocation de mémoire et votre gestion de la mémoire correctement. Rust est donc un langage intéressant », a-t-il déclaré.
Go et Julia
Go (Golang) est un langage de programmation open source permettant de construire des logiciels simples, rapides et fiables. Classé actuellement parmi les 20 langages les plus populaires de l’index TIOBE, ce langage connaît une forte adoption dans la communauté des développeurs. Et pour cause, ses auteurs lui concèdent une facilité d’apprentissage. En 2018, un sondage a révélé que le nombre de développeurs qui utilisent Go dans le cadre de leurs activités quotidiennes a atteint 50 % (contre 44 % en 2016).
Ces chiffres auraient bien évolué depuis lors. En parlant de Go, Guido a simplement déclaré qu'il s'agit également d'un « excellent » langage de programmation et qu'il est actuellement le langage qui se rapproche le plus de Python. « Je continue à penser que Go est un langage très intéressant aussi. De tous les nouveaux langages, Go est probablement le plus proche de Python – ou du moins des nouveaux langages à usage général », a-t-il déclaré.
Le langage de programmation Julia quant à lui a été conçu, au départ, pour des tâches de programmation scientifique et parallèle. Guido estime qu'il ressemble aussi à Python sous certains angles. « Il y a aussi Julia, qui est une sorte d'approche intéressante de quelque chose qui ressemble à Python. Il a suffisamment de détails qui ressemblent beaucoup à Python pour que vous réalisiez que l'indexation est basée sur un seul élément et que les plages sont inclusives au lieu d'être exclusives. Personne ne devrait jamais essayer de coder en Julia et en Python le même jour », a-t-il expliqué.
Il a ajouté que Julia est réservé à un marché bien défini sur lequel il est supérieur à Python. « Ma compréhension est que Julia est en quelque sorte un langage de niche, et si vous êtes dans cette niche, il est supérieur parce que le compilateur optimise votre code pour vous d'une manière que Python ne pourra probablement jamais faire. D'un autre côté, il est beaucoup plus limité dans d'autres domaines, et je ne m'attends pas à ce que quelqu'un puisse un jour écrire un serveur Web en Julia et en tirer un grand profit. Et je suis sûr que dans cinq minutes ce sera sur Hacker News avec un contre-exemple », estime Guido.
Julia est aujourd'hui beaucoup utilisé en science des données. Toutefois, il reste moins populaire que R et Python, mais prend néanmoins son envol. Ses objectifs sont proches de ceux de R (faciliter le calcul scientifique, notamment statistique), mais avec une excellente performance (là où Python et R pêchent).
TypeScript
TypeScript est un langage de programmation libre et open source et un surensemble de JavaScript développé par Microsoft. Il a pour but d'améliorer et de sécuriser la production de code JavaScript. TypeScript inclut un bon ensemble de fonctionnalités de programmation orientée objet (POO), qui sont bonnes pour maintenir un code robuste et propre ; cela améliore la qualité et la maintenabilité du code. Ces caractéristiques rendent le code TypeScript très propre et organisé. TypeScript prend en charge les interfaces, les génériques, l'héritage et les modificateurs d'accès aux méthodes.
Les interfaces sont un moyen de spécifier un contrat. Les génériques aident à fournir une vérification au moment de la compilation, l'héritage permet aux nouveaux objets de prendre les propriétés des objets existants, et les modificateurs d'accès contrôlent l'accessibilité des membres d'une classe. Le créateur de Python estime que tout cela fait de TypeScript un langage « formidable ». « TypeScript est un langage formidable. Vous avez peut-être remarqué qu'au cours des six ou sept dernières années, nous avons ajouté le typage statique optionnel à Python, également connu sous le nom de typage progressif », a-t-il déclaré.
« Je n'étais pas vraiment au courant de l'existence de TypeScript lorsque nous avons lancé ce projet, et je ne peux donc pas dire que nous avons été inspirés par le langage au départ. TypeScript, parce qu'il a en quelque sorte pris le train en marche de JavaScript – et parce qu'Anders est un gars très intelligent – TypeScript a fait certaines choses que Python attend toujours de comprendre. Donc, aujourd'hui, nous regardons définitivement TypeScript pour des exemples. Nous avons une SIG destinée au typage où nous discutons des extensions de la syntaxe et de la sémantique du typage et du système de type en général pour Python », a-t-il ajouté.
Guido a continué en disant que JavaScript est plus proche de Python qu'on le pense et que l'équipe de développement de Python s'inspire énormément des améliorations apportées par TypeScript. « Nous proposons parfois de nouvelles fonctionnalités parce que nous savons que certaines fonctionnalités manquaient aussi initialement dans TypeScript, puis ont été ajoutées à TypeScript sur la base de la demande des utilisateurs, et [sont devenues] très populaires dans TypeScript. Et donc maintenant, nous pouvons voir que nous sommes dans la même situation », a-t-il déclaré.
« Parce que JavaScript et Python sont relativement similaires. Beaucoup plus que Python et, disons C++ ou Rust ou Java. Nous apprenons donc de TypeScript, et de temps en temps, d'après mes conversations avec Anders, il semble que TypeScript apprenne également de Python, tout comme JavaScript a appris de Python dans quelques domaines », a conclu Guido. Anders Hejlsberg est un programmeur danois travaillant chez Microsoft et l'un des grands architectes de TypeScript.
Sources : Index TIOBE, Developpez.com rubrique emploi
Et vous ?
Qu'est-ce qui, selon vous, pourrait expliquer la montée en puissance de Python ?
Le(s)quel(s) des langages dans le top 10 utilisez-vous en entreprise ? Pour vos projets personnels ?
Quelle lecture faites-vous de ces statistiques ?
Voir aussi :
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
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
Python domine le classement IEEE Spectrum de juillet 2020 tandis que R se rapproche un peu plus du top 5 sur l'index TIOBE