Cloudflare s’efforce de rendre les environnements JavaScript interopérables

Cloudflare a annoncé aujourd’hui sa collaboration avec Deno, la société de développement à l’origine du runtime éponyme Deno, et des contributeurs individuels du projet open source Node.js pour créer des normes permettant aux développeurs d’écrire du code entre Deno, Node.js et la plate-forme d’applications sans serveur de Cloudflare, Travailleurs de Cloudflare. Le co-fondateur et PDG de Cloudflare, Matthew Prince, a déclaré que cet effort permettra le transfert d’applications entre Workers, Deno et Node.js sans avoir besoin d’une réécriture, un exploit qui est actuellement hors de portée.

« JavaScript est utilisé par des millions de développeurs, et c’est généralement le premier langage qu’ils apprennent. Jusqu’à présent, les normes JavaScript étaient entièrement axées sur l’interface, comme le navigateur », a déclaré Prince à TechCrunch dans une interview par e-mail. « En normalisant les API JavaScript de base en gardant à l’esprit à la fois le frontend et le backend, nous pouvons permettre aux développeurs frontend d’avoir plus d’accès que jamais au backend d’une manière qui leur semble familière. »

Construit sur le moteur JavaScript V8 open source de Google, Node.js est reconnu pour avoir unifié le développement d’applications Web autour d’un langage de programmation unique, JavaScript, permettant aux développeurs d’exécuter des scripts côté serveur pour produire un contenu de page Web dynamique avant que la page ne soit envoyée à un navigateur Web de l’utilisateur. Mais malgré plus d’une décennie de développement, Node.js manque d’interopérabilité. Les développeurs ont dû s’appuyer sur des connaissances tacites et créer des outils pour partager du code dans les différents environnements JavaScript.

« L’avenir de JavaScript est universel, la possibilité de déplacer JavaScript entre de nombreux environnements. Cet avenir doit être intentionnellement conçu », a déclaré Myles Borins, membre du comité directeur technique de Node.js, l’organe directeur technique de Node.js, dans un communiqué. « La promesse de « écrire une fois, exécuter n’importe où » ne sera possible qu’avec des initiatives collaboratives telles que le groupe communautaire Runtimes interopérable sur le Web. »

Cloudflare, Deno et certains contributeurs de Node.js du comité de pilotage technique de Node.js développeront des normes d’interopérabilité basées sur les API dans le cadre du Web-interoperable Runtimes Community Group, un groupe du World Wide Web Consortium. Ensemble, ils viseront à faciliter l’utilisation des outils et des intégrations de la communauté JavaScript dans les environnements d’exécution, à supprimer les nuances spécifiques à la plate-forme et à permettre aux applications d’évoluer et de changer au fil du temps sans réécriture.

« Le succès de l’écosystème étendu de Deno peut être attribué en grande partie à notre strict respect des normes de la plate-forme Web », a déclaré Luca Casonato, ingénieur logiciel chez Deno, dans un communiqué. «Nous savions dès le départ que Deno ne pouvait réussir que s’il mettait tout en œuvre sur l’interopérabilité des navigateurs – les développeurs et les tendances générales de l’écosystème nous ont montré que ce pari était juste. En plus de notre travail sur les normes existantes avec… le W3C, nous sommes ravis de travailler avec les collaborateurs de Cloudflare et Node.js sur une interopérabilité d’exécution encore meilleure.

Prince a ajouté: «[W]orsque les API JavaScript se ressemblent, se sentent et se comportent de la même manière dans les environnements JavaScript les plus populaires (Node, Deno et Workers), les développeurs gagnent. Notre objectif est de libérer les développeurs de l’enfermement dans un environnement. Passer à un nouvel environnement ne signifie pas réécrire l’intégralité de votre application. »

Cela, bien sûr, serait bénéfique pour Cloudflare, qui a lancé la plate-forme Workers en version bêta en 2018. Un générateur de revenus pour Cloudflare – Workers facture des frais pour des lots de tâches côté serveur – plus de 450 000 développeurs ont construit sur la plate-forme et plus de trois millions d’applications ont été lancées, selon Prince. Cloudflare espère sans aucun doute augmenter ces chiffres en convainquant les équipes de développement de migrer à partir d’autres environnements JavaScript, en particulier à la lumière des sombres prévisions de bénéfices de l’entreprise.

Ce n’est pas une coïncidence si Cloudflare a également annoncé aujourd’hui l’open source du runtime Workers sous la licence Apache V2. L’entreprise présente cette décision comme sa réponse au blocage des fournisseurs, mais elle rehausse également le profil des travailleurs – servant plus ou moins de publicité gratuite.

« Il ne suffit pas d’écrire des normes. [By] en open source le runtime Cloudflare Workers, nous rendons ces API largement disponibles et donnons aux développeurs un moyen facile d’adopter les nouvelles normes », a déclaré Prince. « Il y a deux choses sur lesquelles les développeurs hésitent lorsqu’ils adoptent une nouvelle plate-forme de développement. Le premier : ils craignent d’être enfermés. Peu importe à quel point vous êtes optimiste sur la technologie, si vous pariez l’avenir d’une entreprise sur une plate-forme de développement, vous ne voulez pas risquer d’être rançonné. Et deuxièmement : en tant que développeur, vous souhaitez un environnement de développement local pour itérer et tester rapidement vos modifications. L’open source du runtime Workers résout ces deux problèmes en offrant aux développeurs une norme qui peut s’exécuter n’importe où, ce qui signifie à la fois dans n’importe quel environnement d’hébergement et sur leur machine locale pour des tests et des itérations rapides.

Source-146