Changes

Jump to navigation Jump to search
1,613 bytes added ,  15:45, 30 July 2009
Created page with '<noinclude>{{GoogleTrans-en}}{{TOCleft}}</noinclude> == Objective == To provide a mechanism to enable collaboration using JavaScript. On this way, we'll be able to support colla…'
<noinclude>{{GoogleTrans-en}}{{TOCleft}}</noinclude>

== Objective ==
To provide a mechanism to enable collaboration using JavaScript. On this way, we'll be able to support collaboration on Karma lessons.

== Examples ==
* A simple chat (over an html file), where you can see connected children to the activity and talk each other.

* Let's imagine a lesson: "Learning basic arithmetic", on this lesson we touch the topics: add, rest and multiply a number. At the end of the lesson we got the "Test". Here on "Test" one child writes a basic equation and challenges other child to solve it, then switch turns.

== The problem ==
How to create an easy way to write collaborative JavaScript to be run client-side in browsers.

== Keep in mind ==
* JavaScript has no model for distributed collaboration.
* Shared data can be considered volatile.

== Possible solutions ==
It would be ideally as simple as possible and as web-like as possible.

lucian has suggested 2 possible ways[http://honeyweb.wordpress.com/2009/07/29/generating-files-from-web-apps/]:
* Starting local servers in each Browse and using XMLHttpRequest(XHR) to send data between.
* Adding an API for this in window.sugar and using the existing Sugar collaboration Python API as a backend.


bemasc
* a DNS server and httpd server on each client. WikiBrowse


m_stone:
*name the people with one wishes to collaborate with:
** D-Bus to telepathy
** HTTP to a webserver to D-Bus to telepathy

* data transfer via:
** D-Bus + Telepathy
** a central relay webserver
** point-to-point HTTP links to peer webservers.

work in progress

[[Category:GSoC]]
46

edits

Navigation menu