Q&A with some of our users
Some users (in Bangkok) had questions about Kerika's peer-to-peer model that we thought may be of general interest:
- When a document is attached to an Idea Page, how it is transferred to the Kerika server: is the file transferred immediately or after some time? And is any data compression is used?
When a document is added to an Idea Page, all Kerika does it hold a pointer to the document – the document itself never moves. Thereafter, a "file watcher" process inside Kerika periodically checks to see if the file has been updated, and if it has, it sends the new version to the rest of the team.
Kerika is a hybrid peer-to-peer system, not a client-server system, so we don't automatically store anything at all on our servers. Here's how it works:- There is a
rendezvous server
which helps each peer connect to every other online peer. Every time a Kerika user comes online, it checks in automatically with the rendezvous server, which keeps track of who is online and who isn't. If you update a document or Idea Page, and everyone on your project team is currently online, your computer sends the updates directly to everyone elses computer, where they are stored locally. In this scenario, Kerika has no involvement in the transfer, which takes place peer-to-peer. - If, however, you update a document (or Idea Page), and some of your team members are not online, then your computer automatically sends a copy of the update to Kerika's
storage server
. When a Kerika user comes online, his computer automatically checks with the storage server to see whether there were any updates that he missed while he was online. Once he gets the updates that he had missed, the storage server automatically gets rid of the copy it had been storing. All of this happens automatically, so you don't have to worry about whether your team members are online or not. - For greater privacy, you can run your own storage server, on any Mac or Windows computer you have with spare capacity and a fixed Internet connection, at no extra cost. Some users do this for greater privacy, since this means their files never go through our data center.
- In a peer-to-peer model, everyone on the project team has a complete set of project materials for every project that they are working on, which means that (a) you don't rely upon the Kerika storage server, and (b) there is no single point of failure. If someones PC gets trashed, they can recover all of their project materials by asking one of their team mates to add them back to the project.
- There is a
- Is there any limitation on size of the document?
No. This is one of the big advantages of the peer-to-peer model: if both users are online at the same time, you can share really big files. - Is it possible to give some project team members read-only access?
No. We used to have this feature in early beta versions, at the beginning of 2006, but we found that our users had a very hard time remembering who had read-only access and who had full access. We decided to create a truecollaboration of peers
model since this was easier for most users to handle.
One point to note: no one can really trash a project, or get ever get rid of anything that's on your computer. The worst that can happen is that someone rearranges items on an Idea Page in a way that the Project Manager dislikes. In this scenario, it is easy for the Project Manager, or any other member of the team, to move items around again. In practice we have found that the ratio of active people vs passive people on a project is highly skewed: within a group of 10 people there might be just 2 people who are active enough to arrange items on Idea Pages; the rest are happy to go along with whatever is presented to them. So there is less conflict in practice than you might expect.
Another point to note: if someone modifies a document, all this does is create a separate draft of the document which is automatically circulated to the rest of the team – it doesn't overwrite the original version, or anyone else's version. This is different from a client-server model with check-out/check-in, where you have to worry about people modifying the master copy.
In Kerika every person can make as many changes to as many documents as they like, without overwriting anyone else's copy, and Kerika automatically takes care of all the filing so that every member of the team has a complete set of documents. This lets the document owner see all the different edits that may have taken place, each in its own file, and then decide how to evolve the document going forward.
Finally: if someone deletes an item from an Idea Page, any other member of the team can restore it by using the Page Trash on his local computer. This is another unique feature of Kerika: it works like a distributed graphical Wiki.
So, on the whole there isn't a real need to create read-only access since Kerika's P2P model takes care of most scenarios where you would otherwise have problems. - Is it possible to send email (to all members) automatically with just the update info, not all documents, when ever project is updated?
No. However, please note that only documents that were recently updated get sent in the email updates. If only the page layout was changed, or only the team members list was changed, then no documents get sent. - Is it possible to add Web URLs to Idea Pages?
Yes, just drag-and-drop any Web URL from any browser (IE, Firefox, Safari) onto any Idea Page. After you are done, right-click the URL on the page and rename it so it has a more user-friendly name (e.g. "Kerika's site" instead of "http://www.kerika.com/")