skip to main content
research-article

Issues and Experiences in Building Heterogeneous Co-Editing Systems

Authors Info & Claims
Published:05 December 2019Publication History
Skip Abstract Section

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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle Scholar
  5. Cho, B., Agustina, and Sun, C. CoVim: Incorporating Real-Time Collaboration Capabilities into Comprehensive Text Editors. IEEE CSCWD (2017), pp. 192--197.Google ScholarGoogle ScholarCross RefCross Ref
  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).Google ScholarGoogle Scholar
  7. Cho, B. and Sun, C. Supporting Workspace Awareness in Heterogeneous Collaborative Editing Systems. (In preparation).Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  9. Beaudouin-Lafon, M., and Karsenty, A. Transparency and Awareness in a Real-Time Groupware System. ACM UIST (1992), pp. 171--180.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Dewan, P., and Sharma, A. An Experiment in Interoperating Heterogeneous Collaborative Systems. ECSCW, (1999), pp. 371--407.Google ScholarGoogle ScholarCross RefCross Ref
  11. Ellis, C. A., and Gibbs, S. J. Concurrency Control in Groupware Systems. ACM SIGMOD (1989), pp. 399--407.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  14. Fraser, J. Command-line Application Roundup. Linux Journal, Vol. 2010, No. 198 (2010).Google ScholarGoogle Scholar
  15. Fraser, N. Differential Synchronization. ACM DocEng (2009), pp. 13--20.Google ScholarGoogle Scholar
  16. Greenberg, S. Personalizable Groupware: Accommodating Individual Roles and Group Differences. ECSCW, (1991), pp. 17--31.Google ScholarGoogle Scholar
  17. Greenberg, S., Gutwin, C., and Roseman, M. Semantic Telepointers for Groupware. IEEE OZCHI (1996), pp. 54--61.Google ScholarGoogle Scholar
  18. Grudin, J. Groupware and Social Dynamics: Eight Challenges for Developers. Comm. ACM, Vol. 37, No. 1, (1994), pp. 92--105Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Hirshberg, D. Algorithms for the Longest Common Subsequence Problem. Journal of ACM, Vol. 24, No. 4, (1977), pp. 664--675.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  25. Knister, M., and Prakash, A. DistEdit: A Distributed Toolkit for Supporting Multiple Group Editors. ACM CSCW, (1990), pp. 343--355.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Li, D., and Lu, J. A Lightweight Approach to Transparent Sharing of Familiar Single-User Editors. ACM CSCW, (2006), pp. 139--148.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Li, D., and Li, R. Transparent Sharing and Interoperation of Heterogeneous Single-User Applications. ACM CSCW, (2002), pp. 246--255.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle Scholar
  31. Myers, E. W.. An O(ND) Difference Algorithms and Its Variation. Algorithmica I, (1986), pp. 251--266.Google ScholarGoogle ScholarCross RefCross Ref
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Poller, M., Garter, S. A Comparative Study of Moded and Modeless Text Editing by Experienced Editor Users. ACM SIGCHI, (1983), pp. 166--170.cGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  34. Shao, B., Li, D., and Gu, N. An Optimized String Transformation Algorithm for Real-Time Group Editors. IEEE ICPADS, (2009), pp. 376--383.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Sun, C., and Ellis, C. Operational Transformation in Real-Time Group Editors: Issues, Algorithms, and Achievements. ACM CSCW, (1998), pp. 59--68.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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).Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  42. Sun, D., and Sun, C. Operation Context and Context-Based Operational Transformation. ACM CSCW, (2016), pp. 279--288.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  45. Unicode Consortium. The Unicode Standard Version 10.0. Mountain View, CA, USA. ISBN 978--1--936213--16-0. (2017).Google ScholarGoogle Scholar
  46. Whiteside, J., Archer, N., Wixon, D., and Good, M. How Do People Really Use Text Editors?. ACM SIGOA, (1982), pp. 29--40.Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Xia, S., Sun, D., Sun, C, and Chen, D. Object-Associated Telepointer for Real-Time Collaborative Document Editing Systems. IEEE CollaborateCOM, (2005).Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Issues and Experiences in Building Heterogeneous Co-Editing Systems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • 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

          Copyright © 2019 ACM

          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: 5 December 2019
          Published in pacmhci Volume 3, Issue GROUP

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader