Dans un discours-programme à la PyCon 2022 à Salt Lake City, Utah, Peter Wang, Président-directeur général d'Anaconda, Inc a présenté un autre entrant dans le domaine des interpréteurs Python dans les navigateurs. La communauté Python a longtemps cherché un moyen de pouvoir écrire Python, au lieu de JavaScript, pour l'exécuter dans les navigateurs web, et il y a eu divers efforts en ce sens au fil des ans. Wang a annoncé PyScript comme un nouveau framework, construit sur l'un de ces projets antérieurs, pour permettre l'écriture de scripts Python directement dans le navigateur.Ces programmes ont accès à une grande partie de l'écosystème Python existant et peuvent interagir directement avec le modèle d'objet de document (DOM) du navigateur. En outre, il a fait des démonstrations assez révélatrices dans le cadre de son exposé.
Wang a commencé par se présenter et présenter la société qu'il dirige, Anaconda, qu'il a cofondée avec Travis Oliphant il y a dix ans. Oliphant est le créateur de NumPy et l'un des fondateurs de SciPy, qui sont tous deux des pierres angulaires de l'écosystème de calcul scientifique Python. Anaconda est une distribution des langages de programmation Python et R pour le calcul scientifique (science des données, applications d'apprentissage automatique, traitement des données à grande échelle, analyse prédictive, etc.), qui vise à simplifier la gestion et le déploiement des paquets.
La distribution comprend des paquets de science des données adaptés à Windows, Linux et macOS. Elle est développée et maintenue par Anaconda, Inc. qui a été fondée par Peter Wang et Travis Oliphant en 2012. En tant que produit d'Anaconda Inc., elle est également connue sous le nom d'Anaconda Distribution ou d'Anaconda Individual Edition, tandis que les autres produits de la société sont Anaconda Team Edition et Anaconda Enterprise Edition, qui sont tous deux payants.
Plusieurs raisons ont poussé Anaconda et Oliphant à concentrer leurs efforts sur Python, notamment le fait que ce langage est accessible, même pour ceux qui n'ont pas de formation en informatique. Un autre point en sa faveur est que la communauté Python est généralement accueillante et agréable à travailler. Il s'agit là d'un « point très important si l'on veut continuer à élargir la base d'utilisateurs ».
Anaconda a créé un certain nombre d'outils différents qui sont largement utilisés dans la communauté, et a également fondé l'association à but non lucratif NumFOCUS et les conférences PyData.
Mais il y a un autre aspect du langage qui le rend si désirable de son point de vue : il peut être étendu avec des extensions binaires qui utilisent une API écrite en C, mais accessible depuis d'autres langages. Wang compare Python à « une Honda Civic avec des boulons de montage pour un moteur de distorsion ». Ainsi, le langage peut être appris par des enfants qui peuvent ensuite ouvrir le coffre « et boulonner des nacelles de distorsion » qui permettent au code de fonctionner plus rapidement que le C ou le C++ dans certains cas, a déclaré Wang.
Cet aspect est parfois négligé, mais il signifie que Python peut être utilisé d'une manière que d'autres langages similaires ne peuvent pas. « Ce n'est pas seulement comme Node, ce n'est pas seulement une alternative à Ruby ». La raison pour laquelle Python a été récupéré par les entreprises de Wall Street il y a 10 ou 15 ans était cette capacité de distorsion, a-t-il dit.
Ce qui fait défaut
S’il est vrai qu’Anaconda a pour vocation de fournir une distribution Python, il n’en ait pas moins vrai que l'installation de tout ce qui est nécessaire à Python est trop difficile. Il existe un nombre considérable de paquets sur le Python Package Index (PyPI), mais il est difficile de les faire fonctionner ensemble. 20 % des programmeurs Python auraient une mauvaise expérience du langage. Il existe un grand nombre d'outils différents pour aider à résoudre ce problème, mais ils sont tous à environ 80 %, a-t-il dit, ce qui signifie que les gens ont une mauvaise expérience dans 20 % des cas, ce qui n'est "pas génial".
Il est étrange que, pour le langage le plus populaire au monde, comme le serait Python, il soit difficile d'écrire et de distribuer des applications avec une interface utilisateur. Par exemple, vous ne pouvez pas écrire d'applications iOS avec Python. « Vous ne pouvez pas créer une application pour Windows, le bureau d'entreprise le plus populaire, avec une interface utilisateur ; même si vous utilisez un frontal Web, vous devez écrire JavaScript, CSS et HTML », a déclaré Wang.
Cependant, les conséquences de ces deux points, à savoir les difficultés liées à la compilation et à la création d'interfaces utilisateur, rendent difficile le partage de son travail avec d'autres. À ceux qui considèrent Docker comme une solution à ce problème, Wang répond que lorsque vous faites une application avec Docker, vous « emballez un disque dur et l'envoyez à quelqu'un ». Cela « ne peut pas être notre façon d'amener des millions de personnes à utiliser ce matériel ».
Dans une large mesure,...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.