Les environnements de codage basés sur le cloud comme les nouveaux espaces de codes de GitHub rendent la programmation plus accessible
Ou cours de la dernière décennie, les logiciels de bureau ont été progressivement consommés par le navigateur Web: la musique est passée d’iTunes à Spotify et Pandora, le traitement de texte est passé en ligne à Google Docs et Office 365, et le design est passé de Photoshop à Figma.
Le développement Web, cependant, est resté fidèle au bureau, nécessitant des ordinateurs de plus en plus puissants pour gérer la programmation moderne. Alors que les outils d’édition de code comme Glitch et CodePen ont permis aux développeurs de travailler sur le Web, des langages de développement plus complexes sont restés obstinément connectés aux logiciels de bureau.
La plate-forme d’hébergement de développement de logiciels populaire GitHub est peut-être sur le point de changer ce statu quo. La société détenue par Microsoft a dévoilé une nouvelle éditeur de code appelé Codespaces la semaine dernière qui fonctionne entièrement dans le navigateur Web, quel que soit l’appareil que vous utilisez. Basé sur la même base de code que l’éditeur de code Visual Studio de Microsoft – qui s’exécute sur Windows, Linux et macOS – Codespaces crée un bouton sur le site Web GitHub qui est un itinéraire en un clic vers l’ensemble de votre environnement de développement en ligne. Étant donné que GitHub est l’endroit où de nombreux développeurs accèdent et stockent déjà leur code, quel que soit l’environnement de codage qu’ils utilisent, c’est un endroit pratique pour lancer un éditeur de code. Et il n’est pas nécessaire d’installer quoi que ce soit sur votre appareil.
Pour être clair, les espaces de codes ne sont pas seulement un éditeur de code — c’est aussi une version entière “conteneurisée” de vos serveurs, ce qui signifie qu’il vous permet de préconfigurer toutes les ressources dont vous avez besoin, comme un serveur PHP et un cache Redis, pour travailler sur un projet.
Rendu populaire par une entreprise appelée Docker, les conteneurs permettent de regrouper les fonctionnalités du serveur en minuscules tranches légères, qui peuvent être mélangées pour créer un environnement de développement. Si vous travaillez sur un projet Laravel basé sur PHP, par exemple, vous aurez besoin d’un serveur PHP, de MySQL et d’un cache Redis. Avec la conteneurisation, vous spécifiez que vous avez besoin de chacune de ces technologies, et elles sont configurées à chaque fois que vous ouvrez votre base de code, ce qui facilite le déplacement entre les machines et la reproduction de votre environnement de développement sans le reconfigurer sur chaque appareil.
Chaque environnement Codespaces contient un Dockerfile, qui spécifie les conteneurs et la configuration de votre environnement, ainsi qu’un fichier qui indique à Codespaces comment vous souhaitez configurer votre environnement de développement.
Contrairement aux environnements de développement du passé, avec les espaces de codes, il n’est pas nécessaire de configurer les serveurs et applications locaux pour commencer le codage. Si un développeur a besoin de se mettre rapidement au courant d’un projet, c’est un simple clic pour que tous vos serveurs et votre configuration soient prêts pour le développement.
Le passage du codage au cloud ouvre également la porte à des expériences de développeur connecté. UNE Partage en direct La fonctionnalité qui fonctionne de manière similaire à un document Google partagé permet aux développeurs distants de travailler ensemble sur un problème de programmation, avec un chat audio et texte intégré.
Le coup de maître des espaces de codes, cependant, est une fonctionnalité «à distance» qui permet aux développeurs d’utiliser leurs installations de bureau existantes de Microsoft Visual Studio Code quand ils le souhaitent, même s’ils n’ont pas un ordinateur robuste capable d’exécuter leur véritable base de code avec eux. Lorsqu’ils sont en déplacement, ils peuvent se connecter à leur environnement Visual Studio Code à l’aide de la fonctionnalité et utiliser l’éditeur Web dans le cloud, avec la même configuration, les extensions et même les schémas de couleurs, comme s’ils travaillaient sur leur environnement local. machine.
Alors que les produits basés sur le cloud similaires aux espaces de codes, comme Codeur et Cloud9 d’Amazon existent depuis trois ans. L’avantage de Codespaces est qu’il est directement intégré à GitHub.
Cela vaut la peine de reconnaître que la configuration des espaces de codes juste nécessite un investissement la première fois: vous devez déterminer les technologies dont votre projet a besoin et vous assurer que tout se déroule correctement. Mais avec peu d’effort à l’avance, lorsque vous cliquerez sur « coder » sur GitHub à l’avenir, tout est configuré dans le cloud en quelques secondes, prêt à fonctionner.
Le début de Codespaces est le dernier d’une série d’efforts déployés par Microsoft pour créer la meilleure expérience de développeur de l’industrie. Cela a commencé avec la décision de 2016 d’ajouter Prise en charge Linux pour Windows, une décision qui a surpris toute l’industrie. Personne ne s’attendait à ce que Microsoft ajoute la prise en charge d’un système d’exploitation open source à son propre système propriétaire.
Puis, en 2018, Microsoft a acquis service d’hébergement de code GitHub, suivi d’un acquisition cette année du service de distribution de code npm. Entre-temps, la société a développé Visual Studio Code dans l’éditeur de code le plus populaire, utilisé par plus de 50% des développeurs, selon la dernière enquête Stack Overflow Developer.
Vraisemblablement, Microsoft espère monétiser tous ces produits en gagnant des développeurs, qui sont susceptibles d’héberger éventuellement leurs projets sur sa plateforme d’hébergement cloud, Azure.
Mais des produits comme Codespaces sont une aubaine pour les personnes utilisant des appareils légers comme les Chromebooks ou même l’iPad, ce qui limite le type de logiciel que leurs utilisateurs peuvent installer. Un logiciel basé sur le cloud contourne ces restrictions et signifie que la machine que vous utilisez pour écrire du code est fondamentalement hors de propos, tant que vous avez une connexion Internet.
Pour moi, c’est ce qui est passionnant dans le passage du développement logiciel dans le cloud: la liberté d’utiliser l’ordinateur que je veux utiliser, même si ce n’est pas techniquement un excellent appareil de développeur (comme le Surface Pro X, qui utilise un processeur ARM limité). Tout ce dont j’ai besoin, c’est d’un navigateur Web moderne, rien de plus.
À cette fin, les espaces de codes peuvent être le meilleur égaliseur pour les nouveaux développeurs – si votre environnement de développement est dans le cloud, peu importe que vous écriviez du code sur un MacBook Pro à 5000 $ ou un Chromebook à 300 $.