Le plus souvent, dans le cadre d’un projet logiciel, le codage collaboratif s’appuie sur des outils comme Git, chacun apportant des modifications à tour de rôle, jusqu’au produit final et à l’unification de la base de code. Mais ces dernières années, la collaboration en temps réel sur le code - qui permet à deux personnes ou plus de travailler sur le même fichier au même moment - est devenue beaucoup plus viable. Il est toujours préférable qu'une seule personne approuve le code final, mais la possibilité de voir les modifications apportées par d'autres personnes au fur et à mesure du développement est une véritable aubaine pour l'apprentissage à distance, les travaux urgents et la révision par des pairs.

Voici une sélection de services web et modules complémentaires pour l’éditeur de code qui permettent à des équipes de codeurs de collaborer en temps réel.

AWS Cloud9

Ce produit tiers, acquis par Amazon, offre un environnement de développement dans le navigateur qui prend en charge quelque 40 langages de programmation selon différents niveaux d’intervention. Plusieurs développeurs peuvent collaborer sur un même projet hébergé dans le cloud en temps réel, en utilisant des environnements partagés. Ils peuvent observer la frappe de chacun (avec des repères visuels indiquant qui a écrit quelles lignes de code) et discuter dans un volet chat de l'IDE. Les administrateurs du projet peuvent accorder des privilèges de lecture/écriture ou de lecture seule aux collaborateurs. AWS Cloud9 ne dispose cependant pas de mode « suivez mes indications » (« follow my lead ») explicite comme dans Visual Studio Live Share.

Tarif : AWS Cloud9 est inclus avec toute instance EC2. Les utilisateurs ne paient que les frais d'instance.

Codeanywhere

Présenté comme un environnement de code nomade - navigateur, tablette ou mobile – Codeanywhere prend en charge 75 langages et, pour la plupart d'entre eux, les environnements d'exécution dans le cloud. Mais Codeanywhere dispose également de plusieurs fonctions de partage de code et de collaboration en temps réel. Il permet de partager simplement un projet avec d'autres personnes via un lien, ou de mettre en place une collaboration en temps réel afin que d'autres personnes puissent modifier les fichiers du codeur dans son propre éditeur. Chaque codeur peut également fournir à d'autres utilisateurs un accès SSH à son projet.

Tarif : L’outil est disponible en version d’essai gratuit de sept jours. Le tarif des abonnements démarre à 3 dollars HT par utilisateur et par mois.

CodeSandbox Live

Cet IDE en ligne est destiné au développement rapide d'applications web - JavaScript, TypeScript - et de frameworks comme React, Angular et Vue. Le mode « Live » de CodeSandbox permet d'inviter d'autres personnes à travailler simultanément sur le même projet. Les participants peuvent modifier des fichiers ensemble en temps réel et discuter en chat tout en travaillant. Le mode « Classroom » permet de désigner certaines personnes comme éditeurs et de maintenir toutes les autres en lecture seule.

Tarif : Une version gratuite limitée est disponible. Sinon, pour 9 dollars HT par mois, il donne droit à un nombre illimité de sandboxes privés et à un nombre illimité de référentiels GitHub pour vos projets.

Codeshare

Cet environnement de codage collaboratif est sans doute le plus minimaliste de cette sélection. C’est pourquoi, il pourrait bien être aussi l’un des plus utiles. Si vous pouvez vous contenter d’un genre de Pastebin comme éditeur de code, alors Codeshare est la solution. Lancez une instance Codeshare, partagez l'URL avec d'autres personnes et celles-ci pourront immédiatement commencer à taper et à chatter en vidéo avec vous. Le code écrit dans l'éditeur peut être téléchargé en un clic, et chaque instance expire automatiquement après 24 heures.

Tarif : Gratuit.

Floobits

Floobits fournit un service d'édition et de chat collaboratif en temps réel, soit via son propre éditeur dans un navigateur, soit via des modules complémentaires pour plusieurs éditeurs, notamment Sublime Text, Atom, Neovim, Emacs et IntelliJ IDEA, mais pas pour l’éditeur Visual Studio Code. Le service permet à plusieurs utilisateurs de collaborer en temps réel - plus de deux à la fois – avec des possibilités d’autorisations granulaires (pas d'accès, lecture, écriture, administration) pour les utilisateurs. Avec Floobits, il est possible de mettre en place des espaces de travail publics et privés, de partager des terminaux, de synchroniser des répertoires de travail sans passer par un éditeur et d’utiliser WebRTC et IRC pour le chat vidéo et le chat texte avec les développeurs de son équipe.

Tarif : Utilisation gratuite pour cinq espaces de travail publics au maximum, et un espace de travail privé en essai gratuit pendant une semaine. Les abonnements démarrent à 15 dollars HT  par mois pour cinq espaces de travail privés. Une version entreprise pouvant s’installer derrière un pare-feu est également disponible.

Teletype for Atom

Créé par GitHub, l'éditeur de code Atom dispose d'une vaste bibliothèque de modules complémentaires pour améliorer ses fonctionnalités. Teletype transforme Atom en système de collaboration de code. Vous pouvez inviter d'autres développeurs à vous rejoindre dans les onglets actifs de votre instance Atom, à effectuer des modifications en temps réel et à vous suivre entre les onglets quand vous changez de fichier. Toute la collaboration se fait en pair-à-pair via le protocole WebRTC. Teletype n'offre cependant pas de fonctionnalités plus avancées, par exemple le partage d'un serveur en cours d'exécution ou des contrôles d'accès granulaires.

Tarif : Gratuit.

Visual Studio Live Share

Si vous et vos coéquipiers utilisez déjà Visual Studio ou Visual Studio Code, Visual Studio Live Share de Microsoft intègre la programmation collaborative en temps réel dans ces environnements de développement. Les projets de code peuvent être partagés avec les collaborateurs en lecture seule ou en mode d'édition en temps réel, et vous pouvez partager des terminaux ou des sessions de débogage ainsi que des volets d'édition. Visual Studio Live Share permet également de suivre automatiquement ce que fait un autre utilisateur (changement de fichiers, déplacement du curseur, etc.) ou de demander à d'autres personnes de faire la même chose. Il est même possible de partager un serveur d'application web en cours d'exécution avec d'autres utilisateurs. Et ceux qui n'ont pas installé Visual Studio ou Visual Studio Code peuvent se joindre au groupe depuis le web.

Tarif : Intégré dans Visual Studio, il est disponible aussi comme une extension