Abstract
Real-time collaboration is being offered by plenty of libraries and APIs (Google Drive Real-time API, Microsoft Real-Time Communications API, TogetherJS, ShareJS), rapidly becoming a mainstream option for web-services developers. However, they are offered as centralised services running in a single server, regardless if they are free/open source or proprietary software. After re-engineering Apache Wave (former Google Wave), we can now provide the first decentralised and federated free/open source alternative. The new API allows to develop new real-time collaborative web applications in both JavaScript and Java environments.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
References
West, J.A., West, M.L.: Using Wikis for Online Collaboration: The Power of the Read-Write Web. John Wiley & Sons (2008)
Berliner, B.: CVS II: Parallelizing software development. In: USENIX Winter 1990 Technical Conference, pp. 341–352. USENIX, Berkeley (1990)
Sun, C., Ellis, C.: Operational transformation in real-time group editors: Issues, algorithms, and achievements. In: Proceedings of the 1998 ACM Conference on Computer Supported Cooperative Work, pp. 59–68. ACM, New York (1998)
Yeung, C., Liccardi, I., Lu, K., Seneviratne, O., Berners-Lee, T.: Decentralization: The future of online social networking. In: W3C Workshop on the Future of Social Networking Position Papers, W3C (2009)
Ellis, C.A., Gibbs, S.J.: Concurrency control in groupware systems. In: Proceedings of the 1989 ACM SIGMOD International Conference on Management of Data, SIGMOD 1989, pp. 399–407. ACM, New York (1989)
Bigler, M., Raess, S., Zbinden, L.: ACE - a collaborative editor, http://sourceforge.net/projects/ace/
Ferrate, A.: Google Wave: Up and Running. O’Reilly Media, Inc. (2010)
Nichols, D.A., Curtis, P., Dixon, M., Lamping, J.: High-latency, low-bandwidth windowing in the jupiter collaboration system. In: Proceedings of 8th ACM Symposium on User Interface and Software Technology, pp. 111–120. ACM, New York (1995)
Baxter, A., Bekmann, J., Berlin, D., Gregorio, J., Lassen, S., Thorogood, S.: Google Wave Federation Protocol Over XMPP (2009), http://wave-protocol.googlecode.com/hg/spec/federation/wavespec.html
Mozilla Labs: Togetherjs, https://togetherjs.com/
Joseph, G.: ShareJS, http://sharejs.org/
Chuanwu, T.: Google docs–style collaboration via the use of operational transforms, https://github.com/goodow
Google Inc.: Google Drive SDK: Realtime API, https://developers.google.com/drive/realtime/
North, A.: Google Wave Developer Blog: Wave open source next steps: Wave in a Box, http://googlewavedev.blogspot.com.es/2010/09/wave-open-source-next-steps-wave-in-box.html (2010)
Google Inc.: Google Wave Protocol, http://www.waveprotocol.org/
Cooper, R., Collins, C.: GWT in Practice. Manning Publications (2008)
Pivotal Labs: Jasmine, Behavior-Driven JavaScript, http://jasmine.github.io/
Ojanguren-Menendez, P.: Real-time collaboration API for Wave, https://github.com/P2Pvalue/incubator-wave
North, A.: Wave model deep dive (2010), https://cwiki.apache.org/confluence/display/WAVE/Wave+Summit+Talks
Gregorio, J., North, A.: Google Wave Conversation Model (2009), http://wave-protocol.googlecode.com/hg/spec/conversation/convspec.html
Lassen, S., Mah, A., Wang, D.: Google Wave Operational Transformation (2010), http://wave-protocol.googlecode.com/hg/whitepapers/operational-transform/operational-transform.html
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Pearson Education (1994)
The Jetty Project: Jetty, http://www.eclipse.org/jetty/
Roth, G.: Architecture of a highly scalable nio-based server (2007), https://today.java.net/pub/a/today/2007/02/13/architecture-of-highly-scalable-nio-server.html
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Ojanguren-Menendez, P., Tenorio-Fornés, A., Hassan, S. (2015). Awakening Decentralised Real-Time Collaboration: Re-engineering Apache Wave into a General-Purpose Federated and Collaborative Platform. In: Omatu, S., et al. Distributed Computing and Artificial Intelligence, 12th International Conference. Advances in Intelligent Systems and Computing, vol 373. Springer, Cham. https://doi.org/10.1007/978-3-319-19638-1_31
Download citation
DOI: https://doi.org/10.1007/978-3-319-19638-1_31
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-19637-4
Online ISBN: 978-3-319-19638-1
eBook Packages: EngineeringEngineering (R0)