WebAssembly (Wasm en abrégé) est une norme ouverte qui permet aux applications basées sur un navigateur de s’exécuter avec des performances quasi natives. Il s’est également étendu pour prendre en charge les environnements autres que les navigateurs, ce qui est à l’origine d’une grande partie du battage médiatique récent autour de lui. Mais comme toute technologie émergente, elle a besoin d’un écosystème d’outillage plus fort pour réaliser son plein potentiel.
L’une des entreprises qui poussent dans cette direction est Dylibso, une startup qui s’est donné pour mission d’aider les équipes de développement à mettre Wasm en production. La société, qui annonce aujourd’hui un financement de démarrage de 6,6 millions de dollars lors de la conférence Wasm I/O à Barcelone, s’est fait un nom avec Extism, son système de plug-in universel open source qui permet aux développeurs d’intégrer WebAssembly dans leur non- Base de code WebAssembly. Il lance également Modsurfer, un système d’enregistrement et un outil de diagnostic pour WebAssembly, en disponibilité générale aujourd’hui.
Le cycle de financement de la société a été dirigé par Felicis, avec la participation de Boldstart Ventures, Pebblebed et Crew Capital.
Le co-fondateur et PDG de Dylibso, Steve Manuel, a précédemment travaillé chez Cloudflare, où il a apporté le support Wasm au produit Workers de cette société, ainsi qu’à la startup d’informatique quantique Rigetti Computing.
« En tant que personne qui aime les autres langages plus que JavaScript – pour le dire gentiment – j’ai pensé : vous savez, je dois utiliser ce runtime WebAssembly pour apporter un autre langage aux travailleurs de Cloudflare », a déclaré Manuel. En tant que projet parallèle, il a construit un framework compilé sur WebAssembly à partir de Rust et intégré aux API de Cloudflare. Mais au cours du processus, il s’est également rendu compte qu’une fois que ce code était exécuté en production, il n’avait aucune possibilité réelle d’observer son fonctionnement, ce qui rendait le débogage difficile.
« Il existe de nombreux endroits – et de nombreux codes et runtimes existants – dans lesquels les développeurs aimeraient modifier un peu le langage de leur choix », a-t-il expliqué. « WebAssembly vous offre une excellente solution du point de vue de la sécurité et des performances pour pouvoir exécuter ce code de manière fiable dans un autre environnement, mais compilé à partir d’un langage différent. »
Et c’est le cœur de l’idée derrière Extism, que Dylibso a lancé en décembre 2022. C’est un système de plug-in open source qui permet aux développeurs d’exécuter n’importe quel code pouvant être compilé sur WebAssembly à l’intérieur de n’importe quel programme qui a déjà été écrit dans un autre langage. . « Le but est vraiment de faciliter au maximum l’intégration de WebAssembly dans votre programme, que votre programme utilise déjà Wasm ou non. Peu importe. C’est facile à faire », a déclaré Manuel. Il a souligné qu’il ne s’agissait pas d’un produit commercial mais principalement destiné à accélérer l’adoption de WebAssembly, en particulier pour le code qui s’exécute en dehors du navigateur.
Modsurfer vise à résoudre l’autre problème de Manuel : comprendre comment le code WebAssembly s’exécute en production – et pourquoi il peut échouer. Il est disponible gratuitement pour les développeurs, mais c’est aussi le premier produit commercial de Dylibso, car il proposera également une version entreprise de Modsurfer.
« Modsurfer vous offre cette fenêtre unique pour tout le code WebAssembly qui vous intéresse et dont vous gardez une trace », a expliqué Manuel. Il est censé faire partie du système d’enregistrement, permettant aux développeurs de garder une trace de tout le code WebAssembly qu’ils exécutent, et d’un outil d’analyse partiel pour ce code. Étant donné que WebAssembly est un format binaire, le code se trouve un peu dans une boîte noire que Modsurfer vise à ouvrir ces modules pour les développeurs. Il analyse le code (et peut souvent détecter dans quelle langue il a été écrit à l’origine) et renvoie des données sur sa complexité, ses importations et exportations, ses espaces de noms, etc. « Nous analysons et menons ce qu’on appelle une analyse de complexité cyclomatique, où nous déterminons en fait le profil de risque de l’exécution de ce code dans votre environnement », a déclaré Manuel.
Modsurfer est maintenant généralement disponible.
« Les développeurs ont souvent du mal à utiliser WebAssembly en raison du manque d’outils de la technologie », a déclaré Paul Nashawaty, analyste principal, Enterprise Strategy Group. « Nous voyons dans nos recherches et nous nous attendons à ce que le marché de WebAssembly et sa valeur pour les développeurs rivalisent – sinon soient plus grands – que l’adoption de conteneurs, mais les bons outils doivent être disponibles pour aider les développeurs tout au long du cycle de développement et amener WebAssembly dans production. Dylibso permet aux développeurs d’utiliser facilement WebAssembly avec une suite de produits qui les aident à intégrer WebAssembly et à obtenir des informations et une visibilité essentielles sur leur code binaire.