Avec Teletype, Atom permet de coder à plusieurs

Nicolas Furno |

Atom est l’éditeur de code créé par GitHub, un service web chargé à la fois de stocker des projets de développement, mais aussi de suivre leurs évolutions dans le temps, mais encore de favoriser les collaborations. C’est justement ce dernier point qui est désormais plus simple, avec un nouveau module pour Atom qui permet à plusieurs personnes de travailler sur le même projet, en temps réel et à distance.

Le module Teletype en action, ici avec deux utilisateurs. Le panneau en bas à droite permet de contrôler le partage. On distingue aussi dans l’éditeur les curseurs de deux couleurs, pour distinguer les Cliquer pour agrandir
Le module Teletype en action, ici avec deux utilisateurs. Le panneau en bas à droite permet de contrôler le partage. On distingue aussi dans l’éditeur les curseurs de deux couleurs, pour différencier les deux utilisateurs. Cliquer pour agrandir

Ce nouveau service se nomme Teletype et il nécessite d’ajouter un module (« package ») à Atom. Il nécessite aussi un compte GitHub, ce dernier faisant par défaut le lien entre les utilisateurs. Une fois le module installé, vous devrez vous connecter une fois à GitHub et un bouton permet ensuite d’initier un partage.

Avec Teletype, vous ne partagerez pas seulement un fichier, mais une fenêtre entière. En général, cela revient à partager un espace de travail, un projet complet avec tous les sous-dossiers et fichiers nécessaires. Il faut garder cela en tête au moment d’initier un partage, il n’existe pas, pour le moment, de moyens pour restreindre l’accès à une partie seulement du contenu. L’avantage étant qu’une équipe pourra travailler sur tous les fichiers correspondants à un projet avec une seule invitation.

Ce partage se concrétise sous la forme d’un code unique que n’importe quel utilisateur d’Atom pourra saisir pour accéder au partage… il faudra faire attention à ne pas le diffuser trop largement. Au pire, vous pourrez toujours générer un nouveau code en coupant et en relançant le partage, Teletype générant à chaque fois un nouveau code.

Une fois que tout est configuré, Teletype fonctionne effectivement en temps réel et vous pouvez voir les modifications de chaque participant sur chaque ordinateur. C’est le même principe qu’un outil collaboratif comme Google Docs, mais dans une app plutôt que le navigateur. Nous avons testé la fonction entre la France et le Canada, sans aucun accroc, les modifications sont visibles immédiatement des deux côtés de l’océan.

Sur le plan technique, le fichier principal reste uniquement sur l’ordinateur de l’utilisateur qui initie le partage. Ce qui veut dire que les modifications ne sont stockées que sur cet ordinateur, ce qui est important pour les outils de versionnement. Ajoutons que les serveurs de GitHub ne servent qu’au départ, à connecter les différents clients. Par la suite, la connexion se fait en direct, les données sont transférées en peer-to-peer (P2P).

Enfin, Teletype a été conçu autour de GitHub, mais ce module open-source peut être installé sur une infrastructure propre. Vous devrez installer cette app sur un serveur et vous pourrez même construire votre propre client si vous le souhaitez avec ce module et une brique supplémentaire pour le P2P. Dans tous les cas, ce nouveau service est totalement gratuit.

Hasard du calendrier, Microsoft a annoncé au même moment que GitHub une fonction identique pour Visual Studio et Visual Studio Code, ses deux outils de développement. Cette fonction sera nommée Visual Studio Live Share et elle n’est pas encore disponible, mais une première version devrait être lancée rapidement sous la forme d’un aperçu.

avatar LeGrosJeanLou | 

Plopiplop camarades développeurs.

J'utilise actuellement Brackets pour un projet de développement web et il me donne entière satisfaction, mais j'aime assez bien Atom aussi. Sauf que je ne parviens pas à trouver d'extension similaire à Beautify pour cet éditeur.

Est-ce que quelqu'un saurait me conseiller s'il vous plait ?

Merci !

[edit] : Ok DuckDuckGo m'a gentiment renvoyé sur SitePoint qui m'a donné quelques excellentes extensions Atom parfaitement fabuleuses. Mais merci quand même.

avatar pat3 | 

Jusqu’à présent j’utilisais Brackets avec mes étudiants, mais Télétype serai à lui tout seul un argument pour que je passe à Atom (bon emmet intégré par contre, c’est un peu velu pour des débutants tout plein).
C’est encore mieux si on n’a pas à inscrire tout le monde sur Github pour le faire tourner. En tout cas si j’arrive à installer ça pour l’an prochain, ce serait génial en cours !!

Reste plus qu’à se mettre à Atom (après Texmate, TextWrangler, SublimeText et Brackets…).

avatar PiRMeZuR | 

Je ne comprends pas dans quel contexte ça peut être une bonne idée. Pour écrire un texte à plusieurs, pourquoi pas ? Pour écrire une app, les systèmes de versionnement actuels sont un bon compromis pour éviter le bordel et faciliter le partage.

À tester quand même pour un hackathon.

avatar Nicolas Furno | 

@PiRMeZuR

Pour nous, je crois ça va être très utile pour les Keynote.

avatar BeePotato | 

@ Nicolas Furno : « Pour nous, je crois ça va être très utile pour les Keynote. »

Si une telle possibilité vous manquait vraiment, vous auriez dû jeter un coup d’œil du côté de SubEthaEdit, qui permet l’édition à plusieurs depuis une quinzaine d’années.

Pour ma part, je continuerai à utiliser ce logiciel, plutôt que de me frapper Atom et la nécessité d’avoir un compte GitHub pour tous les participants.

avatar Nicolas Furno | 

@BeePotato

On connaît, mais ça ne fonctionne qu’en local sauf erreur.

Jusque là, on utilisait Coda qui propose une telle fonction, mais en local aussi. Maintenant que l’équipe est partiellement éclatée aux quatre coins du monde (bon, on a surtout Mickaël au Canada), on cherche une solution via internet.

avatar BeePotato | 

@ Nicolas Furno : « On connaît, mais ça ne fonctionne qu’en local sauf erreur. »

Ah non, ça fonctionne (et je l’utilise) à distance aussi depuis longtemps (si ce n’est toujours, j’ai du mal à me rappeler).
On perd juste la facilité de connexion offerte par Bonjour en réseau local, et il faut éventuellement résoudre les classiques problèmes de firewall si on en a un, mais la fonction est là.

avatar Nicolas Furno | 

@ BeePotato :

Ah OK, je dois dire que je l'ignorais… On verra pour la prochaine alors, peut-être qu'on testera les deux en amont.

avatar occam | 

@PiRMeZuR

"les systèmes de versionnement actuels sont un bon compromis pour éviter le bordel"

Compromis : oui.
Bon : ça dépend.
Éviter le bordel : you should be so lucky.

avatar occam | 

Ce n'est pas une idée nouvelle en soi.

Sur OS X, SubEthaEdit (Des bien nommés Coding Monkeys) s'est illustré dans le genre depuis une quinzaine d'années.
https://subethaedit.net

On peut citer aussi Gobby, EtherPad (étreint, épousé, étranglé puis relâché par Google), etc.

Sur l'ancien Mac, il y avait déjà Instant Update en 1991, commercialisé par ON Software, la boîte du co-fondateur de Lotus, Mitch Kapor.

Mais pour se rendre compte du chemin parcouru par la technique, et des modestes progrès conceptuels par rapport à la croissance exponentielle de la technologie, il faut remonter le temps jusqu'en 1968 (!), à la „Mother of All Demos” de Doug Engelbart.
https://en.m.wikipedia.org/wiki/The_Mother_of_All_Demos

Engelbart y présentait, entre autres, son éditeur collaboratif.
Seul hic, les modems de l'époque plafonnaient à... 1200 bps, lien unidirectionnel.

Ceci dit, pour la boîte à outils qu'est Atom, c'est génial.
N'en déplaise aux pleureuses qui se plaignent de ses prétendues lenteurs (#pique_gratuite).

avatar pat3 | 

@occam

Démo toujours aussi hallucinante après toutes ces années. Je ne me lasse pas de la montrer à mes étudiants de première année quand je leur raconte l’invention et la popularisation de l’interface graphique. Englebart, le SRI, le Xerox PARC, l’Alto, etc.

CONNEXION UTILISATEUR