Collaborative Software
Bunch of Wikipedia links ... food for thought.
http://en.wikipedia.org/wiki/Collaborative_software
Collaborative software or groupware is an application software designed to help people involved in a common task to achieve goals. One of the earliest definitions of collaborative software is 'intentional group processes plus software to support them
http://en.wikipedia.org/wiki/List_of_collaborative_software
http://en.wikipedia.org/wiki/Category:Collaborative_software
Maybe http://en.wikipedia.org/wiki/Category:Web_services
Collaborative Real-Time Editors
http://en.wikipedia.org/wiki/Collaborative_real-time_editor
A collaborative editor is a form of collaborative software application that allows several people to edit a computer file using different computers, a practice called collaborative editing.
http://en.wikipedia.org/wiki/Category:Collaborative_real-time_editors
Apache Wave
Formerly Google, now Apache.
http://en.wikipedia.org/wiki/Apache_Wave
Apache Wave is a software framework for real-time collaborative editing online. Google originally developed it as Google Wave ...
Wave is a web-based computing platform and communications protocol designed to merge key features of communications media such as email, instant messaging, wikis, and social networking.
Communications using the system can be synchronous or asynchronous. Software extensions provide contextual spelling and grammar checking, automated language translation and other features.
https://incubator.apache.org/wave/
Wave is a distributed, near-real-time, rich collaboration platform that allows users to work together in new and exciting ways. Wave allows for flexible modes of communication, blending chat, email and collaborative document editing in to one seamless environment. Wave provides a lively and responsive environment that promotes more fluid and dynamic collaboration between users.
The addition of Robots and Gagets allow the Wave platform to provide intelligence, integration, and customizability to the users experience.
http://incubator.apache.org/projects/wave.html - old site
Apache Wave is the project where wave technology is developed at Apache. Wave in a Box (WIAB) is the name of the main product at the moment, which is a server that hosts and federates waves, supports extensive APIs, and provides a rich web client.
This project also includes an implementation of the Wave Federation protocol, to enable federated collaboration systems (such as multiple interoperable Wave In a Box instances).
https://incubator.apache.org/wave/source-code.html
https://svn.apache.org/repos/asf/incubator/wave/
Python API - https://svn.apache.org/repos/asf/incubator/wave/trunk/src/python/api/
Java API - https://svn.apache.org/repos/asf/incubator/wave/trunk/src/org/waveprotocol/
Whitepapers about Wave - https://svn.apache.org/repos/asf/incubator/wave/whitepapers/
Whitepapers about Google Wave Protocol ( some are same as Apache ? ) - http://www.waveprotocol.org/whitepapers
Wave Wiki - https://cwiki.apache.org/confluence/display/WAVE/Home
https://cwiki.apache.org/confluence/display/WAVE/Install+WIAB
Wave in a Box is delivered as a Java application. Installation comprises installing the server code and (optionally) configuring federation with XMPP ...
It is possible to use Mongo DB to store Waves, instead of a filesystem-based system ...
Federation configuration (optional) ... Openfire Installation
https://cwiki.apache.org/confluence/display/WAVE/Openfire+Installation
https://cwiki.apache.org/confluence/display/WAVE/Federation
The utility of waves is greatly enhanced if they can be federated in the sense that they are shared between users from different organisations, hosted by different service providers across the Internet. This is accomplished by the Apache Wave federation protocol, a server-to-server network protocol between service providers, supporting low-latency, concurrent updates to conversations ("live typing") and domain authentication.
https://cwiki.apache.org/confluence/display/WAVE/Protocol+Specifications
Google Wave Conversation Model - http://wave-protocol.googlecode.com/hg/spec/conversation/convspec.html
Google Wave is a communication and collaboration platform based on hosted conversations, called waves. A wave comprises a set of concurrently editable structured documents and supports real-time sharing between multiple participants ... see http://www.waveprotocol.org/protocol/draft-protocol-specs. [ new link]
http://en.wikipedia.org/wiki/Google_Wave_Federation_Protocol
A wave provider operates a wave service on one or more networked servers.
The central pieces of the wave service is the wave store, which stores wavelet operations, and the wave server, which resolves wavelet operations by operational transformation and writes and reads wavelet operations to and from the wave store.
Typically, the wave service serves waves to users of the wave provider which connect to the wave service frontend. For the purpose of federation, the wave service shares waves with participants from other providers by communicating with these wave provider's servers.
Copies of wavelets are distributed to all wave providers that have participants in a given wavelet. Copies of a wavelet at a particular provider can either be local or remote.
Other Schemes
These ideas are either parallel to or over overlapping with collaborative software, can't tell which ...
Remote Desktop
See RemoteDesktop
Application Virtualization
http://en.wikipedia.org/wiki/Application_virtualization
http://en.wikipedia.org/wiki/Desktop_virtualization
http://en.wikipedia.org/wiki/Web_desktop
Rich Internet Application
http://en.wikipedia.org/wiki/Rich_Internet_application
http://en.wikipedia.org/wiki/Category:Rich_Internet_applications
http://en.wikipedia.org/wiki/List_of_rich_Internet_application_frameworks