skip to main content
research-article

Issues and Experiences in Building Heterogeneous Co-Editing Systems

Published: 05 December 2019 Publication History

Abstract

Most past research efforts in co-editing focused on homogeneous co-editing, which allows multiple users to use the same editor to edit shared documents in the same session, and nearly all real-world co-editors, such as Google Docs, are homogeneous co-editors. In this work, we explore issues and solutions in building heterogeneous co-editing systems, which allow multiple users to use different editors to edit shared documents in the same session. To drive our exploration, we built a prototype heterogeneous co-editing system, named CoVim+CoEmacs, which allows multiple users to use full functionalities and UI features of two comprehensive and rivalry text editors, Vim and Emacs, in the same co-editing session. In this paper, we focus on technical issues in designing and implementing heterogeneous co-editors in general and CoVim+CoEmacs in particular. We have motivated this work by potential usage benefits of heterogeneous co-editing systems and used working scenarios under the CoVim+CoEmacs prototype to illustrate some novel usages and inner workings of such systems, but left systematic user studies on heterogeneous co-editing to future work. We hope the insights and experiences drawn from this work can not only contribute to advancing state-of-the-art collaborative system design and implementation, but also provide inspiration to future heterogeneous collaborative application system designers.

References

[1]
Agustina, and Sun, C. Dependency-Conflict Detection in Real-time Collaborative 3D Design Systems. ACM CSCW (2013), pp.715--728.
[2]
Agustina, and Sun, C. XPointer: an X-Ray Telepointer for Relaxed-Space-Time WYSIWIS and Unconstrained Collaborative 3D Design Systems. ACM CSCW (2013), pp.729--740.
[3]
Agustina, Liu, F., Xia, S., Shen, H., and Sun, C. CoMaya: Incorporating Advanced Collaboration Capabilities into 3D Digital Media Design Tools. ACM CSCW (2008), pp. 5--8.
[4]
Begole, J., Rosson, M., and Shaffer, C. Flexible Collaboration Transparency: Supporting Worker Independence in Replicated Application Sharing System. ACM TOCHI, Vol. 6, No. 2, (1991), pp. 95--132.
[5]
Cho, B., Agustina, and Sun, C. CoVim: Incorporating Real-Time Collaboration Capabilities into Comprehensive Text Editors. IEEE CSCWD (2017), pp. 192--197.
[6]
Cho, B. and Sun, C. RTS-Diff: A Real-Time Smart Differentiation Solution for Deriving User-Editing Operations in Heterogeneous Collaborative Editing Systems. (In preparation).
[7]
Cho, B. and Sun, C. Supporting Workspace Awareness in Heterogeneous Collaborative Editing Systems. (In preparation).
[8]
Baecker, R., Nastos, D., Posner, I., and Mawby, K. The User-Centered Iterative Design of Collaborative Writing Software. ACM INTERCHI (1993), pp. 399--405.
[9]
Beaudouin-Lafon, M., and Karsenty, A. Transparency and Awareness in a Real-Time Groupware System. ACM UIST (1992), pp. 171--180.
[10]
Dewan, P., and Sharma, A. An Experiment in Interoperating Heterogeneous Collaborative Systems. ECSCW, (1999), pp. 371--407.
[11]
Ellis, C. A., and Gibbs, S. J. Concurrency Control in Groupware Systems. ACM SIGMOD (1989), pp. 399--407.
[12]
Ellis, C. A., Gibbs, S. J., and Rein, G. Groupware: Some Issues and Experiences. Comm. ACM, Vol. 34, No. 1 (1991). pp. 399--407.
[13]
Fan, H., Sun, C., Shen, H. ATCoPE: Any-Time Collaborative Programming Environment for Seamless Integration of Real-Time and Non-Real-Time Teamwork in Software Development. ACM GROUP (2012), pp. 107--116.
[14]
Fraser, J. Command-line Application Roundup. Linux Journal, Vol. 2010, No. 198 (2010).
[15]
Fraser, N. Differential Synchronization. ACM DocEng (2009), pp. 13--20.
[16]
Greenberg, S. Personalizable Groupware: Accommodating Individual Roles and Group Differences. ECSCW, (1991), pp. 17--31.
[17]
Greenberg, S., Gutwin, C., and Roseman, M. Semantic Telepointers for Groupware. IEEE OZCHI (1996), pp. 54--61.
[18]
Grudin, J. Groupware and Social Dynamics: Eight Challenges for Developers. Comm. ACM, Vol. 37, No. 1, (1994), pp. 92--105
[19]
Gutwin, C., and Greenberg, S. A Descriptive Framework of Workspace Awareness for Real-Time Groupware. Journal of CSCW, Vol. 11, No. 3--4 (2002), pp. 411--446.
[20]
Gutwin, C., Greenberg, S., and Roseman. M. Workspace Awareness in Real-Time Distributed Groupware: Framework, Widgets, and Evaluation. HCI People and Computer XI, (1996), pp. 281--298.
[21]
Gutwin, C., Roseman, M., and Greenberg, S. A Usability Study of Awareness Widgets in a Shared Workspace Groupware System. ACM CSCW (1996), pp. 258--267.
[22]
Hirshberg, D. Algorithms for the Longest Common Subsequence Problem. Journal of ACM, Vol. 24, No. 4, (1977), pp. 664--675.
[23]
Karsenty, A., Tronche, C., and Beaudouin-Lafon, M. GroupDesign: Sharing Editing in a Heterogeneous Environment. Usenix Journal of Computing Systems, Vol. 6, No. 2, (1993), pp. 167--195.
[24]
Knister, M., and Prakash, A. Issues in the Design of a Toolkit for Supporting Multiple Group Editors. Usenix Journal of Computing Systems, Vol. 6, No. 2, (1993), pp. 135--166.
[25]
Knister, M., and Prakash, A. DistEdit: A Distributed Toolkit for Supporting Multiple Group Editors. ACM CSCW, (1990), pp. 343--355.
[26]
Lauwers, J., Joseph, T.A., Lantz, K., and Andramanow, A.L. Replicated architectures for shared window systems: A critique. ACM SIGOIS, (1990). pp. 249--260.
[27]
Lauwers, J., and Lantz, K. Collaboration Awareness in Support of Collaboration Transparency: Requirements for the Next Generation of Shared Window Systems. ACM SIGCHI, (1990), pp. 303--311.
[28]
Li, D., and Lu, J. A Lightweight Approach to Transparent Sharing of Familiar Single-User Editors. ACM CSCW, (2006), pp. 139--148.
[29]
Li, D., and Li, R. Transparent Sharing and Interoperation of Heterogeneous Single-User Applications. ACM CSCW, (2002), pp. 246--255.
[30]
Li, R., Li, D., and Sun, C. A Time Interval Based Consistency Control Algorithm for Interactive Groupware Applications. IEEE ICPADS, (2004), pp. 429--436.
[31]
Myers, E. W. An O(ND) Difference Algorithms and Its Variation. Algorithmica I, (1986), pp. 251--266.
[32]
Neuwirth, C., Chandhok, R., Kaufer, D., Erion, P., Morries, J., and Miller, D. Flexible Diff-ing in a Collaborative Writing System. ACM CSCW, (1992), pp. 147--154.
[33]
Poller, M., Garter, S. A Comparative Study of Moded and Modeless Text Editing by Experienced Editor Users. ACM SIGCHI, (1983), pp. 166--170.c
[34]
Shao, B., Li, D., and Gu, N. An Optimized String Transformation Algorithm for Real-Time Group Editors. IEEE ICPADS, (2009), pp. 376--383.
[35]
Stefik, M., Bobrow, D., Foster, G., Lanning, S., and Tatar, D. WYSIWIS Revised: Early Experiences with Multiuser Interfaces. ACM TOIS, Vol. 5, No. 2, (1987), pp. 147--167.
[36]
Sun, C., and Ellis, C. Operational Transformation in Real-Time Group Editors: Issues, Algorithms, and Achievements. ACM CSCW, (1998), pp. 59--68.
[37]
Sun, C., Xu, Y., and Agustina. Exhaustive Search and Resolution of Puzzles in OT Systems Supporting String-Wise Operations. ACM CSCW, (2017), pp. 2504--2517.
[38]
Sun, C., Wen, H., and Fan, H. Operational Transformation for Orthogonal Conflict Resolution in Collaborative Two-Dimensional Document Editing Systems. ACM CSCW, (2012), pp. 1391--1400.
[39]
Sun, C., Sun, D., Agustina, Cai, W., and Cho, B. Real Differences between OT and CRDT under a General Transformation Framework for Consistency Maintenance in Co-Editors. PACMHCI, Vol. 3, No. GROUP, Article 1021 (December 2019).
[40]
Sun, C., Jia, X., Zhang, Y., Yang, Y., and Chen, D. Achieving Convergence, Causality Preservation, and Intention Preservation in Real-Time Cooperative Editing Systems. ACM TOCHI, Vol. 5, No. 1, (1998), pp. 63--108.
[41]
Sun, C., Xia, S., Sun, D., Chen, D., Shen. H., and Cai, W.T. Transparent Adaptation of Single-User Applications for Multi-User Real-Time Collaboration. ACM TOCHI, Vol. 13, No. 4, (2006), pp. 531--582.
[42]
Sun, D., and Sun, C. Operation Context and Context-Based Operational Transformation. ACM CSCW, (2016), pp. 279--288.
[43]
Sun, D., Sun, C., Agustina, Cai, W. Real Differences between OT and CRDT in Building Co-Editing Systems and Real World Applications. arXiv:1905.01517. 2nd May 2019.
[44]
Sun, D., Sun, C., Agustina, Cai, W. Real Differences between OT and CRDT in Correctness and Complexity for Consistency Maintenance in Co-Editors. arXiv:1905.01302. 2nd May 2019.
[45]
Unicode Consortium. The Unicode Standard Version 10.0. Mountain View, CA, USA. ISBN 978--1--936213--16-0. (2017).
[46]
Whiteside, J., Archer, N., Wixon, D., and Good, M. How Do People Really Use Text Editors?. ACM SIGOA, (1982), pp. 29--40.
[47]
Xia, S., Sun, D., Sun, C, and Chen, D. Object-Associated Telepointer for Real-Time Collaborative Document Editing Systems. IEEE CollaborateCOM, (2005).

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Proceedings of the ACM on Human-Computer Interaction
Proceedings of the ACM on Human-Computer Interaction  Volume 3, Issue GROUP
GROUP
December 2019
425 pages
EISSN:2573-0142
DOI:10.1145/3375021
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 05 December 2019
Published in PACMHCI Volume 3, Issue GROUP

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. collaborative editing
  2. computer-supported cooperative work
  3. operation transformation
  4. transparent adaptation

Qualifiers

  • Research-article

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)19
  • Downloads (Last 6 weeks)3
Reflects downloads up to 07 Nov 2024

Other Metrics

Citations

Cited By

View all

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media