Firefox OS avait besoin d'applications, et toute nouvelle plateforme affronte le même problème d'entrée : pas de développeurs sans un moyen simple d'y accéder. Les développeurs ont dit à Mozilla qu'ils n'étaient pas sûrs de savoir comment commencer le développement d'applications sur le Web, car cela impliquait de télécharger de nombreux outils et modèles différents depuis diverses sources. La solution conventionnelle aurait été un énième IDE à télécharger, accompagné de davantage de guides d'installation.
Mozilla a plutôt utilisé le seul outil que son public avait déjà ouvert — le navigateur. WebIDE était livré dans Firefox Nightly : un clic lançait un projet à partir d'un modèle fonctionnel, le choix d'un environnement d'exécution installait un simulateur Firefox OS ou connectait un appareil, et Ctrl/Cmd+R rechargeait l'application à cet endroit avec les DevTools familiers attachés. L'éditeur CodeMirror intégré était délibérément facultatif : une API permettait à tout éditeur externe de piloter la gestion des environnements d'exécution de WebIDE, et toute la boucle reposait sur le protocole ouvert Firefox Remote Debugging Protocol, avec des adaptateurs prévus pour Chrome pour Android et Safari sur iOS.
La conception supprimait les deux véritables coûts d'entrée. Un débutant obtenait une application modèle fonctionnelle en un clic au lieu d'un après-midi d'installation, avec un validateur de manifeste d'application qui détectait les problèmes avant la soumission au marketplace. Un développeur déjà à l'aise ne changeait rien : l'éditeur intégré pouvait être désactivé, et les raccourcis vim, emacs ou Sublime étaient activés dans about:config. Mozilla ne conservait que ce que seul le navigateur peut faire — environnements d'exécution, appareils, débogage à distance — et rendait le reste remplaçable.
Le fil de lancement sur Hacker News — 489 points, 151 commentaires — a montré que le mécanisme a trouvé son public. Les commentateurs ont qualifié WebIDE d'excellent ajout pour les débutants qui aiderait les écoles ; des auteurs de thèmes ont publié un support en quelques jours ; un développeur d'un éditeur d'aperçu en direct a déclaré qu'il n'aurait peut-être pas créé son outil si WebIDE avait existé. Les objections les plus vives portaient sur l'intégration au navigateur, et l'équipe a répondu que les outils n'affectaient guère les performances sauf s'ils étaient ouverts. Un commentateur a résumé la situation : WebIDE a abaissé le niveau d'entrée pour le développement — pas de téléchargement de SDK, pas de configuration ni de signature fastidieuses, pas de nouveau langage à apprendre.
Faire du navigateur lui-même le SDK : des applications de démarrage sans installation, et un protocole ouvert pour qu'aucun développeur n'ait à changer d'éditeur
Un navigateur que les développeurs possèdent déjà constitue un outillage sans installation : la première application est à un clic d'un modèle au lieu d'un après-midi de téléchargements et de configuration.
Rendre l'éditeur facultatif a supprimé le coût de changement pour les développeurs expérimentés, qui autrement ignorent les outils de plateforme qui imposent un nouveau flux de travail.
Un protocole ouvert Remote Debugging Protocol avec des adaptateurs pour les navigateurs concurrents signifiait que le travail n'était pas bloqué dans Firefox OS — n'importe quel outil pouvait atteindre n'importe quel environnement d'exécution.
L'intégration dans Firefox rendait l'outil découvrable là où se trouvait déjà le public cible, transformant le navigateur lui-même en argument de vente pour la plateforme.
Pour faire croître un écosystème, ramener à zéro le coût de la première étape à l'intérieur du produit que vous contrôlez, puis rendre tout le reste connectable afin que les utilisateurs établis conservent leur flux de travail.
WebIDE est arrivé dans Firefox Nightly le 23 juin 2014, sous Outils > Développeur Web > Gestionnaire d'applications, renommé WebIDE dans la compilation suivante derrière une préférence à activer. Il a recueilli 489 points et 151 commentaires sur Hacker News : des auteurs de thèmes ont mis à jour leurs thèmes, des utilisateurs ont activé les raccourcis vim ou Sublime, et un commentateur a déclaré que cela aurait peut-être rendu son éditeur d'aperçu en direct inutile. Les critiques l'ont qualifié de surcharge du navigateur ; l'équipe a déclaré que les outils n'affectaient guère les performances sauf s'ils étaient ouverts. Mozilla prévoyait un adaptateur de protocole pour Chrome pour Android et Safari sur iOS et invitait à davantage de modèles de démarrage communautaires.
VÉRIFIEZ LES SOURCES
Les sources
- WebIDE lands in Firefox Nightly Mozilla Hacks · hacks.mozilla.org ·
- Hacker News discussion: WebIDE lands in Firefox Nightly Hacker News · news.ycombinator.com ·