QCon San Francisco 2017においてGitHubのNathan Sobo氏はAtomの新しいリアルタイムコラボレーションプラグイン、Teletypeを発表した。Teletypeは、2人の開発者が同時にコードを書くことができるようになる。
Teletypeは、開発者が同僚にリンクを共有して新しいコラボレーションセッションを作成できる。各共同編集者は、彼らのカーソルを取得して、他の共同編集者と並行して自由にタイプできる。
共同編集は、難しい論理的な問題であるとSobo氏は言う。Atom Teletypeの対処方法は、共同編集者が、ドキュメントの複製を編集できるようにすることである。ローカル編集は、即座にローカルの複製に反映され、残りの共同編集者に送信される。これにより異なるレプリカで異なる順序で変更が適用される可能性があるが、Teletypeアルゴリズムはconflict-free replicated data types (CRDT)を使用しており、最終的にはすべての複製が同じコンテンツになるようにする。
Teletypeは、共同編集者をつなぐためにWebRTCを使用しており、GitHubのサーバーに依存する初期のハンドシェイクを除いて、すべての転送がピアツーピアになる。プライバシーを確保するために、すべてのデータ転送は暗号化され、決してGitHubにヒットしない。
GitHubによって開発されたテキスト編集のためのCRDTはスタンドアロンのライブラリとしても利用可能であり、同じ種類の機能をWebベースやElectronベースのアプリケーションに統合できる、エディタに依存しない自立したライブラリを提供している。
GitHubによると、Teletypeは世界中に配布されているAtomチーム自身のニーズに対応するために生まれ、新しいチームメイトのオンボードや、同僚との検証、新しいスキルの学習などのユースケースで、開発者ワークフローを改善する。GitHubはまた、Teletypeをプルリクエスト(PR)の代わりに使用する可能性も想定している:PRを開始するのではなく、開発者がTeletypeを使用して同じテキストエディタにジャンプし、リアルタイムで問題を処理する。
TeletypeはAtom 1.22からインストールタブを使ってインストールできる。あるいはコマンドラインからapm install teletype
を実行してインストールすることもできる。
Rate this Article
- Editor Review
- Chief Editor Action