- Pada awal 2024, mulai meneliti sistem pengeditan kolaboratif untuk digunakan pada editor teks inti Moment. Saat ini ada berbagai algoritme yang mengklaim dapat menyelesaikan masalah pengeditan online dan offline. Namun, dalam praktiknya ditemukan bahwa pengalaman pengeditan offline tidaklah baik.
- Masalah pengeditan offline
- Algoritme populer seperti CRDTs dan OT menyelesaikan konflik pengeditan langsung dengan cara yang tidak intuitif, sehingga pengguna menganggapnya sebagai kerusakan data.
- Pengeditan offline meningkatkan kemungkinan konflik langsung, dan algoritme ini tidak cocok untuk pengeditan offline.
- Contoh: konflik pengeditan sepele
- Alice dan Bob mengedit dokumen saat offline. Bob mengubah 'Color' menjadi 'Colour', dan Alice menghapus seluruh teks. Setelah kembali online, konflik ini harus diselesaikan.
- Konflik semacam ini umum terjadi, dan akibatnya pengguna menganggap data mereka rusak.
- Keterbatasan algoritme
- Proyek seperti Yjs, ShareJS, dan Peritext mengklaim mendukung pengeditan offline, tetapi dalam praktiknya kesalahan sering terjadi.
- Algoritme tidak dapat mengetahui maksud pengguna dan bekerja pada tingkat karakter, sehingga jaminan atas hasilnya lemah.
- Peralihan ke masalah UI/UX
- Algoritme saja tidak dapat sepenuhnya menyelesaikan masalah ini, dan pendekatannya perlu dilihat sebagai masalah UI/UX.
- UI penggabungan dokumen seperti git sudah ada, dan perlu diteliti cara untuk membuatnya lebih mudah diakses dan lebih otomatis.
- Beberapa peneliti berfokus pada masalah ini sebagai isu UI/UX, dan studi Ink & Switch tentang sejarah kolaborasi adalah salah satu contohnya.
1 komentar
Komentar Hacker News
Penulis Eg-walker dan ShareJS menyebutkan bahwa alat kolaborasi real-time berguna saat bekerja bersama secara online, tetapi untuk penyuntingan offline atau branch jangka panjang, diperlukan opsi untuk menambahkan penanda konflik dan melakukan peninjauan manual
Masalah lain dari implementasi yang menggunakan CRDT adalah beban infrastruktur
Menyampaikan terima kasih kepada pengguna yang sedang bekerja mengintegrasikan CRDT ke perangkat lunak pencatatan
Disebutkan bahwa algoritme merge mekanis bisa memiliki performa berbeda pada berbagai jenis konflik, dan CRDT tidak dapat menentukan apakah teks hasil penggabungan benar-benar sesuai dengan maksud pengguna
Algoritme yang digunakan untuk penyuntingan teks kolaboratif (CRDT dan OT) memiliki persyaratan aljabar yang ketat terkait pelaksanaan dan interaksi operasi edit
Disebutkan bahwa konsep konflik matematis, kausal, dan entropi telah tercampur dengan konflik semantik
Mengemukakan kemungkinan menggunakan AI untuk memprediksi merge
CRDT adalah model formal yang sangat baik untuk struktur data terdistribusi, tetapi ada masalah dengan gagasan bahwa semua konflik harus diselesaikan secara otomatis
Disebutkan bahwa ketika beberapa entitas secara bersamaan memiliki otoritas atas data, itu adalah masalah yang tidak bisa diselesaikan sepenuhnya
Pada 2009, ada banyak diskusi tentang algoritme Git untuk menggabungkan perubahan secara otomatis, dan disebutkan bahwa Torvalds skeptis terhadap batasan auto-merge