C'est en mars 2023 que Go a réintégré le top 10 de l'indice Tiobe. Paul Jansen, PDG de Tiobe, a alors faut ce commentaire :
Go est entré dans le top 10 de l'indice TIOBE ce mois-ci. Les ingénieurs semblent aimer le langage de programmation Go. Qu'est-ce qui le distingue ? Go n'est pas révolutionnaire, mais sa force réside dans la combinaison des bonnes fonctionnalités. Il a une simultanéité et une récupération de place intégrées, est typé statiquement et a de bonnes performances. Le fait que Go soit soutenu par la société Google aide également. Cela améliore la confiance à long terme dans le langage. Des applications populaires telles que Docker et Kubernetes ont été développées à l'aide de Go. Go restera-t-il dans le top 10 ? C'est une question intéressante, car la position numéro 10 de l'indice TIOBE semble changer presque tous les mois.
Ce mois-ci, Go est entré dans le top 10 de l'indice TIOBE à la position 8. Il s'agit de la position la plus élevée jamais atteinte par Go. Lorsqu'il a été lancé par Google en novembre 2009, Go a connu un succès immédiat. C'était l'époque où tout ce que faisait Google était magique. Quelques années avant l'apparition de Go, Google avait lancé GMail, Google Maps et Google Docs. Aussi, lorsque Google a annoncé son premier langage, Go, la communauté des développeurs a été ravie. C'était le sujet de conversation de la ville. Après seulement deux mois d'existence, Go a remporté le prix TIOBE du langage de l'année. De manière inattendue, le battage médiatique s'est vite estompé. En 2015, Go a atteint la position 122 dans l'index TIOBE et tout semblait perdu. Un an plus tard, Go a adopté un cycle de publication très strict de "six mois" (soutenu par Google). À chaque nouvelle version, Go s'est amélioré. En parallèle, Docker et Kubernetes (tous deux écrits en Go) ont commencé à devenir très populaires à partir de 2016. Cela a permis de regagner la confiance dans Go. Aujourd'hui, Go est utilisé dans de nombreux domaines logiciels tels que la programmation back-end, les services web et les API. Grâce à son adoption croissante dans l'industrie, Go semble être un langage qui a les capacités de rester dans le top 10 de l'indice TIOBE pendant longtemps. Remarque secondaire intéressante : le tout dernier nouveau langage de Google, Carbon, est entré dans le top 100 pour la première fois ce mois-ci.
Jansen a déclaré qu'il s'attendait à ce que Go reste dans le top 10 de l'index pendant encore longtemps. La version 1.22 de Go, qui apporte des modifications aux boucles for, a été publiée le 7 février. Par ailleurs, dans la version de février de l'index Tiobe, le langage Carbon de Google, présenté comme le successeur de C++, a atteint le top 100 pour la première fois.
Ce que préfèrent les développeurs Go
L’équipe de Go a publié les résultats de son enquête semestrielle auprès des développeurs, fournissant des informations précieuses sur l’utilisation du langage de programmation Go et les défis auxquels sont confrontés les développeurs.
Environnements de développement
Comme les années précédentes, la majorité des personnes interrogées ont déclaré travailler avec Go sur les systèmes Linux (63 %) et macOS (58 %). De petites variations de ces chiffres d'une année à l'autre dépendent très probablement de qui trouve et répond à cette enquête (en particulier sur le blog Go), car l'équipe n'a pas observé de tendances cohérentes d'une année sur l'autre dans l'échantillon aléatoire provenant de VS Code.
Pile technologique
Les chiffres indiquent que Go est un langage destiné au développement moderne basé sur le cloud. En effet, 75 % des personnes interrogées travaillent sur un logiciel Go qui s'intègre aux services cloud. Pour près de la moitié des personnes interrogées, cela impliquait AWS (48 %) et près d'un tiers utilisaient GCP (29 %) pour leur développement et leurs déploiements Go. Pour AWS et GCP, l'utilisation est également équilibrée entre les grandes entreprises et les petites organisations. Microsoft Azure est le seul fournisseur de cloud qui est nettement plus susceptible d'être utilisé dans les grandes organisations (entreprises de plus de 1 000 employés) que dans les petites entreprises ; les autres fournisseurs ne présentent aucune différence significative d'utilisation en fonction de la taille de l'organisation.
Les cas d'utilisation du ML/AI
L'équipe a vu quelques cas d'utilisation de l'IA qui, selon environ la moitié des personnes interrogées, pourraient être utiles : générer des tests (49 %), suggérer les meilleures pratiques in situ (47 %) et détecter les erreurs probables au début du processus de développement (46 %). Un thème fédérateur de ces principaux cas d’utilisation est que chacun pourrait contribuer à améliorer la qualité et la fiabilité du code qu’un ingénieur écrit. Un quatrième cas d'utilisation (aide à la rédaction de documentation) a suscité l'intérêt d'environ 36% des personnes interrogées. Les cas restants constituent une longue liste d’idées potentiellement fructueuses, mais celles-ci présentent nettement moins d’intérêt général que les quatre premières.
Quelques polémiques
Go a eu son lot de polémiques. Parmi les sujets à controverse, Russ Cox, l'ingénieur de Google à la tête du développement de Go, a présenté une proposition qui a divisé les développeurs : activer la télémétrie dans Go par défaut. Cox a révélé la proposition sur GitHub. La télémétrie, comme le décrit Cox, implique qu'un logiciel envoie des données du logiciel Go à un serveur pour fournir des informations sur les fonctions utilisées et sur les performances du logiciel. Il soutient qu'il est avantageux pour les projets open source de disposer de ces informations pour guider le développement.
Envoyé par Russ Cox
Russ vise à introduire un concept de « télémétrie transparente » pour aider les projets open source à mieux comprendre le logiciel, en gardant à l'esprit la confidentialité. Dans ses billets de blog (une série de 3 articles), il mentionne que les sondages et les rapports de bogues sont insuffisants. Il est donc nécessaire d'introduire le moyen le plus simple de collecter des données sur l'utilisation d'une application (c'est-à-dire la télémétrie) tout en gardant les choses ouvertes à tous.
Cela signifie que l'ensemble du processus de collecte des données, de la manière dont elles sont traitées et de ce qui en résulte, est ouvert à tous.
La proposition actuelle prévoit d'ajouter la télémétrie avec une option de désactivation. En d'autres termes, la télémétrie est activée par défaut à moins que quelqu'un ne la désactive explicitement.
D'où certaines réactions.
« Cela devrait être désactivé par défaut », a écrit l'utilisateur Stolas. « Il n'y a aucune raison pour qu'une chaîne de développement ait un type de télémétrie activé par défaut. Ou, comme je comprends la nécessité qu'il soit activé par défaut, il devrait vérifier ce que l'utilisateur veut au premier démarrage ».
« Je pense que proposer un opt-in est une meilleure solution que d'aller sur un opt-out », a ajouté l'utilisateur w3bb. « Les personnes qui refuseraient la télémétrie à une invite sont des personnes qui ne veulent pas de la télémétrie, rendre la vie de ces personnes plus difficile est vraiment mauvais, que ce soit intentionnel ou non ».
Si de nombreux développeurs s'y sont opposés, quelques-uns l'ont soutenu.
Pas représentatif du paysage TIC français
L'indice TIOBE Programming Community est un indicateur de la popularité des langages de programmation. L'index est mis à jour une fois par mois. Les notes sont basées sur le nombre d'ingénieurs qualifiés dans le monde, les cours et les fournisseurs tiers. Les moteurs de recherche populaires tels que Google, Bing, Yahoo!, Wikipédia, 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 construction d'un nouveau système logiciel.
Il n'est donc pas indicateur de la réalité dans le monde de l'IT Pro francophone. Parmi les langages les plus demandés dans les offres d'emploi postées sur Developpez.com, Go occupait la onzième place.
Emploi informatique 2022 : les langages les plus demandés et les mieux payés
Portail Emploi de Developpez.com
Portail Go de Developpez.com
Source : Tiobe
Et vous ?
Quel(s) est/sont votre/vos langage(s) de programmation préférez ? Pour quels types de projets l'utilisez/les utilisez-vous ?
Que pensez-vous de Go ?
Comment pouvez-vous expliquer son évolution dans le top 10 de l'index TIOBE ?
D'ailleurs, que pensez-vous des méthodes d'évaluation de popularité de TIOBE ou des index concurrents ? Lesquelles trouvez-vous pertinentes et lesquelles le sont moins selon vous ? Pourquoi ?